SHIROのIchigoJam日記

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

へびゲーム

FacebookのIchigoJam-FANグループで、ゲーム「SNAKE」を作った人がいました。
似たようなへびゲームを作ってみました。
だいぶルールが違っていて、ヘタすると一瞬でゲームオーバーになります(笑)

  • スタートすると、へびが動き出します。操作は上下左右のカーソルキーです。
  • 周りの壁・だんだん出てくる障害物・へび自身の体に当たらないように避けてください。当たるとゲームオーバーです。
  • へびは放っておくと5秒に1個ずつ長くなります。画面に出てくるイチゴを食べると、1点入ると共に、へびが1個短くなります。
  • 難しすぎると思う人は、180行の「WAIT3」の数値を変えてください。

MixJuiceでダウンロードできます。
?"MJ GET comich.net/ichigojam/hebi.txt"

プログラム容量に余裕があったので、行ラベルをコメントで残しています。
解析の参考にしてください。

10 '*Hebi
20 CLV:CLS:LET[90],-1,0,-1,1,0,-2,0,-1,1,0,1
30 FORX=0TO30:?"*";:NEXT
40 FORY=1TO21:LC0,Y:?"*":LC30,Y:?"*":NEXT
50 FORX=0TO30:?"*";:NEXT
60 LC0,23:?"0";
70 L=4:X=7:Y=11:Z=X+Y*256:FORN=0TOL+1:[N]=Z:Z=Z-1:NEXT:GSB190:D=-1
80 K=255:GSB250:CLT
90 '@LOOP
100 E=INKEY()-30:CLK:IFABS(E)<3&&E<>[98+D*3]D=E
110 U=X+[96+D*3]:V=Y+[97+D*3]
120 C=SCR(U,V):IF!CGOTO150
130 IFC=255GSB230:GOTO150
140 BEEP30,30:LC7,10:?"*** GAME OVER ***":CLK:END
150 '@LP1
160 IFTICK()>300L=L+1:K=42:GSB250:CLT
170 X=U:Y=V:FORN=LTO0STEP-1:[N+1]=[N]:NEXT:[0]=X+Y*256
180 GSB190:WAIT3:GOTO90
190 '@HEBI
200 LC[0]&255,[0]/256:?CHR$(232)
210 FORN=1TOL:LC[N]&255,[N]/256:?CHR$(233):NEXT
220 LC[L+1]&255,[L+1]/256:?CHR$(0):RTN
230 '@SCORE
240 BEEP:S=S+1:LC0,23:?S;:L=L-(L>0):GSB190:K=255:GSB250:RTN
250 '@ICHIGO
260 I=RND(30)+1:J=RND(22)+1:IFSCR(I,J)>0GOTO250
270 LCI,J:?CHR$(K);:RTN