SPLINK

プチコン3号 プチコンBIG 

スプライトの同士をリンク・取得

親となるスプライトを指定 SPLINK spNo,p_spNo 現在の親スプライト番号を取得 p_spNo = SPLINK(spNo)

パラメーター

spNoスプライト番号
p_spNo親となるスプライト番号(spNop_spNo

解説

2つのスプライト番号をリンクし、子スプライトの座標を親スプライトの座標からの相対位置(親からの距離)として設定し表示します。

SPLINKを実行すると、現在の「子の座標値」は親からの相対座標として再計算され、実行後すぐに子スプライトが移動します。

親スプライトの座標を変えれば子の表示位置も移動します。
子スプライトの座標を変えた場合は、指定座標を「親からの相対位置」とみなして移動されます。(親は動きません)

1つの親に対して複数の子を設定したり、子の子の子…という設定も可能です。

設定する場合は、spNop_pNospNoの方が大きい)でなければなりません。「SPLINK 0,1」などはエラーになります。
また、両方のスプライト番号がSPSETで設定済みである必要があります。

設定後はSPUNLINKが実行されるか、親子どちらかのスプライトがSPSETで新たに再設定された場合もSPLINKの設定は解除されます。

Ver3.3より、現在設定されている親スプライト番号を取得できるようになりました。

サンプルコード

SPSET 0,0:SPOFS 50,50 'イチゴを(50,50)に表示
SPSET 1,1:SPOFS 20,20 'ミカンを(20,20)に表示
SPLINK 1,0  'ミカンがイチゴの子となり、(50+20,50+20)に移動する
 
SPOFS 0,100,100 'イチゴを移動するとミカンも(100+20,100+20)に移動
SPOFS 1,10,10 'ミカンを移動すると相対位置(100+10,100+10)に移動。※イチゴは動かない

参照

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 スプライト番号にコールバック処理を割り当て

Facebookコメント