困ったー

政治・経済から野球・ゲームまで困ったことを調べたブログ

政治・経済からゲーム・野球まで、困ったことを調べたブログ。

スポンサーリンク


【任天堂スイッチ】プチコン4 SmileBASIC 超初級編2 アニメーション

前回に引き続きアニメーションなどをやっていきます。

アニメーション

星を動かしてみましょう。

 

制限としては、スクリーンサイズは横をあらわすX軸が400、縦をあらわすY軸が240です。

遠近をあらわすZ軸は「-256~1024」が利用できます。マイナスほど手前となります。

 

スプライトは初期設定で512個までとなります。

 

スプライト

まず星っぽい絵を探して表示させます。

f:id:apicode:20210709133854p:plain

 

実行するとこんな感じ。

f:id:apicode:20210709133916p:plain

 

SPOFSをループで行う

SPANIMでは星のような表現はちょっと面倒なのでループでSPOFSさせる方向で処理してみましょう。

 

ちょうどいいサンプルがありましたので、改良するやり方にします。

SmileBASIC 講座_2.計算で遊ぶ – SmileBasic

 

まずは1つの星が流れ、下までいったら上からまた再度落ち始めるようにします。

最初に初期化し、次にループさせます。

ACLS

SPSET 0, 1329

X=RND(400)

Y=RND(240)

Z=2+RND[5]

 

@L

Y=Y+Z

IF Y>239 then Y=0

SPOFS 0,X,Y

NEXT

WAIT 1

GOTO @L

 

これだと動いてもインパクトないです。やはり星は数をたくさんだしたいところ。

そこで、配列を使ってたくさん表示してみましょう。 

ACLS

DIM X[30],Y[30],Z[30]

FOR I=0 TO 29

SPSET I, 1329

X[I]=RND(400)

Y[I]=RND(240)

Z[I]=2+RND[5]

NEXT

 

@L

FOR I=0 TO 29

Y[I]=Y[I]+Z[I]

IF Y[I]>239 then Y[I]=0

SPOFS I,X[I],Y[I]

NEXT

WAIT 1

GOTO @L

 

これで流れる星を表現することができました。

f:id:apicode:20210709153300p:plain

 

 

アニメーションコマンド

SmileBASICにはアニメーション用コマンドもあるので使ってみます。

SPANIM 管理番号,"アニメ対象",時間,項目1[,項目2]

となっています。

 

そこで、

ACLS

SPSET 0,1329

SPANIM 0,"XY",1,10,0,-120,10,260,0

とします。

 

管理番号0に1329の絵を割り当て、SPANIMでは管理番号0のデータで指定したXY座標を移動するタイプのアニメであることを指定。

続けて 開始点の時間とXY座標、 次の場所の時間とXY座標を指定。

ループさせるので最後に0を指定します。

f:id:apicode:20210709134734p:plain

 

これで座標を指定したアニメーションができました。

 

このブログは、ネットや書籍上の情報、個人の体験や感想を中心にまとめたものです。 正確性を期していはいますが、間違い・誤訳等あるかもしれません。 当サイトの情報によって生じたいかなる損失について一切の責任を負わないものとします. あらかじめご了承ください。

利用規約・プライバシーポリシー |〇問い合わせ