SHIROのIchigoJam日記

マイコン「IchigoJam」(イチゴジャム)の電子工作とプログラミングをメインに

シューティング10

簡単なパズルシューティングゲームのプログラムです。
プレイ動画はこちら。

www.youtube.com

遊び方

  • 上から1~9の数字が降ってくるので、数字の弾を撃って迎撃してください。
  • キー操作は、カーソルキー左←・右→で自機の左右移動、上↑・下↓で弾の数字のアップ・ダウン、スペースキーで弾の発射です。
  • 弾が数字に当たると足し算されて、答えが10になると消されて点数が入ります。答えが半端な数だとそのまま残ってしまいます。点数は画面左下に表示されます。
  • 自機が数字に当たってしまうとゲームオーバーです。

これで「足して10になる数」が身に付くと、暗算が速くなります(^_^)
実は点数を取る裏ワザがいろいろあるので、それを見つけるのも面白いでしょう。

プログラムリスト

10 '*SHOOTING 10
20 CLV:CLS:X=16:N=5
30 LC RND(31):?RND(9)+1
40 N=N-BTN(31)+BTN(30)
50 IF N<1 N=9
60 IF N>9 N=1
70 LC X,22:?N
80 IF BTN(32) GSB 160
90 WAIT 10
100 LC X,22:?CHR$(0)
110 X=X-BTN(28)*(X>0)+BTN(29)*(X<30)
120 SCROLL 31
130 LC X,23:?CHR$(240);:LC 0,23:?S;
140 IF !SCR(X,22) GOTO 30
150 BEEP 30,30:LC X,23:?"X":CLK:END
160 B=X:C=22
170 LC B,C:?CHR$(0)
180 C=C-1:IF C<0 RTN
190 E=SCR(B,C)
200 IF !E LC B,C:?N:WAIT 2:GOTO 170
210 E=E-48:A=B
220 D=SCR(B-1,C)-48:IF D>0 E=D*10+E:A=B-1
230 F=SCR(B+1,C)-48:IF F>0 E=E*10+F
240 E=E+N:LC A,C:?E
250 WAIT 10:IF E%10>0 RTN
260 BEEP:S=S+E:LC 0,23:?S;
270 LC A,C:?CHR$(0,0)
280 RTN

90行の「WAIT 10」が時間待ちです。これを変えるとゲームスピードが変わります。
かわくだりよりはかなり流れが遅いですが、数字の計算をしないといけないので結構大変です(^_^;)