Enjoy programming more!
Kidspod is a post site which supports young programmers.
First step to join us.
Register as a member
For members

2019/01/14 12:21:52

MixJuice GET URL : kidspod.club/mj/731

ビル壊しver0.1 mobileB版

フィールド内に点在するカクカクとしたビルを爆弾で破壊して下さい。
上下左右矢印でUFOを動かします。
UFOは爆弾"b"を押してビルにぶつけるとビルを消すことができます。
すべてのビルを消すとステージクリア。5ステージで終了ですが、
ステージ5はなぜか一筋縄ではクリアできません。
右上にタイマーを追加しましたので最短どれだけでクリアできるかも挑戦してみてください。
310〜350がステージデーターです。
配列変数0〜7に7行分のデーターを入れています。
画面左端から2進数で
00 海
01 地面
10 ビル
11 爆弾
1行8文字分、16桁の数値を10進または16進に圧縮して代入していますのでいろいろなステージを作ってみてください。

  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

SOURCE CODE

1 'BRK BUIL
10 CLS:CLT:CLV
20 @IN:BEEP:GSB310+H*10
50 GSB150
60 X=B%8:Y=B/8:LCX,Y:?"(#F1)";
70 LC9,2:?TICK()/60:K=INKEY()
80 V=(K=29)*(X<7)-(K=28)*(X>0)
90 W=(K=31)*(Y<7)-(K=30)*(Y>0)
100 IFV=0ANDW=0GOTO70
120 D=[Y+W]>>(2*X+2*V)&3:IFD=0GOTO70ELSEIFD=2:BEEP:GSB20
126 IFD=3B=[Y+2*W]>>(2*X+4*V)&3:ELSEGOTO140
128 IFB=2A=A-1:IFA<1:LC9,0:?"CLEAR!":H=H+1:GOTO20
129 IFB>1GOTO132ELSEIFB=0GOTO70
130 C=2<<(2*X+4*V):[Y+2*W]=[Y+2*W]|C:LCX+2*V,Y+2*W:?"b";:GOTO134
132 C=2<<(2*X+4*V):[Y+2*W]=[Y+2*W]&~C|C>>1:LCX+2*V,Y+2*W:?".";:LC13,0:?A;" ";:BEEP
134 IFD=3C=2<<(2*X+2*V):[Y+W]=[Y+W]&~C
140 LCX,Y:?".";:X=X+V:Y=Y+W:LCX,Y:?"(#F1)":GOTO70
150 A=0:B=-1:FORI=0TO63:LCI%8,I/8
160 D=[I/8]>>(I%8*2)&3
180 IFD=0?"^";ELSEIFD=1?".";ELSEIFD=2?"(#F7)";:A=A+1:ELSE?"b";
190 IFB<0ANDD=1B=I
200 NEXT:LC9,0:?"BUIL";A:RTN
310 LET [0],0,5460,7828,5556,8020,5988,5748,0:B=-1:RTN
320 LET[1],5456,7700,#2534,#0F74,#2934,#1E10:RTN
330 LET[1],9688,1488,5396,7508,832,9592:RTN
340 LET[1],5656,7708,5588,5436,7708,5400:RTN
350 LET[1],#15A8,#1600,#1D54,#17F4,#14B4:RTN
360 '

COMMENT