ゾンビから逃げながらゾンビを爆破してください。爆発に巻き込まれたゾンビは次々と誘爆を起こします。
スペースキーを押し続けるとカウントダウンした後にプレイヤーを中心に爆発が発生します。
カウントダウン中に移動するとカウントダウンがリセットされてしまいます。
一度の爆発で倒したゾンビの数は「Combo」に表示され、コンボが多いほど高得点になります。「Total」は倒したゾンビの合計です。
■操作方法
カーソルキー: 移動
スペースキー: 押し続けるとカウントダウンの後、爆発します
再ゲーム:エンターキー
ゾンビの誘爆処理のように同じ動作を繰り返す場合は「再帰」という方法で作るのがシンプルなのですが、IchigoJamで再帰をするとスタックがあふれてしまいます。代わりにゾンビの表示位置に煙(?)のキャラクタが表示されていたらゾンビが爆発に巻き込まれたと判断する方法を思いついたので、作ってみたプログラムです。
IchigoJam Ver.1.2.3用に作ったゲームなのでVer.1.3以降では動作が速いのですが、速いほうが面白いと思います。
電子工作マガジン2019年2月号付録のマイコンBASICマガジンに掲載していただいたプログラムです。
非営利目的でネットにアップするのは問題ないとのことなのでKidspodに上げておきますね。
遊んでもらえるとうれしいです。
5 'MMZ 10 CLS:CLV:X=15:Y=12:G=#FA:L=99 20 FORI=0TOL:GSB200:POKE#9A0+RND(468),6,6,0:NEXT 30 A=10 40 K=INKEY():CLK:M=(K=29)*(X<30)-(K=28)*(X>1):N=(K=31)*(Y<21)-(K=30)*(Y>3) 50 IF SCR(X+M,Y+N)=6 M=0:N=0 60 POKE#900+X+Y*32,0:X=X+M:Y=Y+N 70 IF BTN(32)*!M*!N A=A-1:E=#30+A:BEEPA ELSE A=10:E=#ED 80 GSB210:POKE#900+X+Y*32,E 90 FORI=0TO5:BEEPD/4+I*20 100 C=(C+1)*(C<L-D/3):Z=[C]/100:V=[C]%100 110 M=((X>Z)-(X<Z))*RND(2):N=(Y>V)-(Y<V):B=SCR(Z+M,V+N) 120 IF B<>6 AND B<>G POKE#900+Z+V*32,0:Z=Z+M:V=V+N:[C]=Z*100+V:POKE#900+Z+V*32,G 130 NEXT:GSB210:IF A GOTO40 140 Q=X:R=Y:GSB190:T=0 150 F=0:FORI=0TOL:R=[I]%100:IF R<3 OR R>21 GOTO170 160 Q=[I]/100:IF SCR(Q,R)<>G T=T+1:D=D+1:F=1:S=S+T:BEEP1+(30-T)*(T<30):GSB190:GSB200 170 NEXT 180 IF F GOTO150 ELSE GOTO30 190 FORJ=0TO19:W=J%10:LCQ+(W-7)*(W>4),R+(W-2)*(W<5):?CHR$(3+J/10);:NEXT:BEEP190,120:RTN 200 [I]=RND(24)*100+RND(2)*22+401:LC0,0:?"Score:";S;" Total:";D;" Combo:";T;" ":RTN 210 IF SCR(X,Y)<>G RTN 220 WAIT80:BEEP200,90 230 LC12,10:?"GAME OVER":IF INKEY()=10 RUN ELSE CONT