SPFUNC
(3.2.0)
スプライト番号にコールバック処理を割り当て
SPFUNC spNo,@label
SPFUNC spNo,"def"
パラメーター
解説
指定したスプライト番号に、コールバック処理を設定します。
スプライト毎に設定されたコールバックは、「CALL SPRITE」で一斉に実行されます。
コールバック処理内ではシステム変数-CALLIDXで、処理中のスプライト番号を取得可能。
SPSETされていないspNoには使用できません。
スプライト毎に設定されたコールバックは、「CALL SPRITE」で一斉に実行されます。
コールバック処理内ではシステム変数-CALLIDXで、処理中のスプライト番号を取得可能。
SPSETされていないspNoには使用できません。
サンプルコード
らせん状の弾幕
画面中心から外側に向かって、らせん状に弾を発射します。画面外に出た弾(スプライト)はSPCLRでスプライト番号を開放されます。
SPFUNC・CALL SPRITEを使えば、
FOR SP=0 TO 511:IF SPUSED(SP) THEN〜
などとして毎回最大512回のループを回す必要がなく別途配列を用意する必要もありません。
この例では、SPFUNCの処理にユーザー定義命令「MYFUNC」を設定していますが、GOSUB文と同じように @XXX〜RETURN で記述しても処理可能です。
@LOOPCNT=MAINCNTSPOFS SP,200,120SPFUNC SP,"MYFUNC"CALL SPRITE'------------------DEF MYFUNCSP=CALLIDX 'スプライト番号SPCLR SP '画面外に出たらスプライトを初期化
参照
SPPAGE
スプライトキャラの定義に使用するグラフィックページを指定・取得
SPCLIP
スプライトキャラを表示する範囲を指定
SPDEF
スプライトキャラの定義データを変更・取得
SPSET
スプライト番号にキャラクターをセット
SPCLR
スプライト番号のキャラ設定をクリア
SPSHOW
スプライトを表示状態にする
SPHIDE
スプライトを非表示状態にする
SPHOME
スプライトキャラの原点座標を変更・取得
SPOFS
スプライトキャラの表示座標を変更・取得
SPROT
スプライトキャラの回転角度を変更・取得
SPSCALE
スプライトキャラの表示倍率を変更・取得
SPCOLOR
スプライトキャラの色合いを変更・取得
SPCHR
スプライトキャラのキャラ種類を変更・取得
SPLINK
スプライトの同士をリンク・取得
SPUNLINK
スプライトの同士のリンクを解除
SPANIM
スプライトにアニメーションを設定
SPSTOP
スプライトのアニメーションを一時停止
SPSTART
スプライトのアニメーションを再開
SPCHK
スプライトのアニメーション状況を取得
SPVAR
スプライト用内部変数の値を設定・取得
SPCOL
スプライトの衝突判定のルールを設定・取得
SPCOLVEC
スプライトの衝突判定用に移動量を設定
SPHITSP
スプライト同士の衝突判定
SPHITRC
スプライトと指定領域との衝突判定
SPHITINFO
スプライトの最後の衝突結果を取得
SPUSED
スプライト番号が使用されているかチェック
SPFUNC
スプライト番号にコールバック処理を割り当て