es_flag

flag値設定

es_flag p1,p2,p3

p1(0)=スプライトNo.
p2(0)=flag値
p3(0)=変更オプション

(プラグイン / モジュール : HSP3Dish)

解説

p1で指定したスプライトのflag値を変更します。
flag値は、スプライトが有効になっている場合は、 $100(256)が自動的に設定されています。通常は特にいじる必要はありません。
flag値が示す値は以下の通りです。[]内は定義されているマクロ名です。

flag値=
  0    :  スプライト未登録
  bit 0-7 : 1~127 カウントダウンタイマー(HSPDX互換)
  bit 8 :  $100 スプライト表示ON [ESSPFLAG_STATIC]
  bit 9 :  $200 スプライト移動ON [ESSPFLAG_MOVE]
  bit10 :  $400 自由落下移動ON [ESSPFLAG_GRAVITY] (HSPDX互換用)
  bit11 :  $800 親とリンクして移動 [ESSPFLAG_SPLINK]
  bit12 : $1000 ボーダー消去無効ON [ESSPFLAG_NOWIPE]
  bit13 : $2000 ボーダーXで反転SWITCH [ESSPFLAG_XBOUNCE]
  bit14 : $4000 ボーダーYで反転SWITCH [ESSPFLAG_YBOUNCE]
  bit15 : $8000 カウントダウンタイマー時点滅SWITCH [ESSPFLAG_BLINK]
  bit16 : $10000 非表示SWITCH [ESSPFLAG_NODISP]
  bit17 : $20000 カウントダウンタイマー時フェードインSWITCH [ESSPFLAG_FADEIN]
  bit18 : $40000 カウントダウンタイマー時フェードアウトSWITCH [ESSPFLAG_FADEOUT]
  bit19 : $80000 カウントダウンタイマー終了時消滅SWITCH [ESSPFLAG_TIMERWIPE]
  bit20 : $100000 カウントダウンタイマー時消滅SWITCH2 [ESSPFLAG_BLINK2]
  bit21 : $200000 カウントダウンタイマー時末尾フェードSWITCH [ESSPFLAG_EFADE]
  bit22 : $400000 カウントダウンタイマー時末尾フェードSWITCH2 [ESSPFLAG_EFADE2]
  bit23 : $800000 回転・ズーム値の加算を有効にする [ESSPFLAG_MOVEROT]
  bit24 : $1000000 装飾スプライトとして最前面に表示する [ESSPFLAG_DECORATE]

p4パラメーターで変更オプションを指定できます。オプション値は、以下のように動作します。ビット単位のセット・リセット時に使用することができます。

 値   内容
----------------------------------
  0   指定した値を設定
  1   指定した値のビットを追加
  2   指定した値のビットを削除

スプライト情報を直接取得する際には、es_getを使用できます。
実行後にシステム変数statにそれまで設定されていたflag値が返ります。
何らかの理由でエラーになった場合はマイナス値が返ります。

関連項目

es_getスプライト情報取得(HSP3Dish)
es_setpスプライトパラメータ設定(HSP3Dish)

サンプル逆引き (4)

es_test4.hsp
spr3d_1.hsp
spr3d_2.hsp
spr3d_3.hsp

情報

プラグイン / モジュールHSP3Dish
バージョン3.7
作成日2025/02/04
著作者onitama
URLhttps://hsp.tv/
備考hsp3dish.asをインクルードすること。
タイプ拡張命令
グループ拡張画面制御命令
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\sprite.hs