1 @INI 2 R=3:S=0:U=100:V=1:W=5 3 Z=19:D=12:N=7:M=4 4 X=N/2+1:Y=Z-3:H=5 5 A=X:B=0:T=2 6 GOTO@MAIN 10 @DRAW 11 CLS 12 FOR I=0 TO Z-1 13 LC D ,I:?CHR$(#85) 14 LC D+N+1,I:?CHR$(#8A) 15 NEXT 16 IF X>N X=N 17 IF X<1 X=1 18 B=0:CLK 19 RTN 20 @MOVE 21 LC D+X,Y :?" " 22 LC D+X,Y+1:?" " 23 LC D+A,B :?" " 24 K=INKEY() 25 X=X+(K=29)-(K=28) 26 IF B=Z B=-1:A=RND(N)+1 27 IF B<Y-T A=A+RND(3)-1 28 IF A<1 A=1 29 IF A>N A=N 30 B=B+(B<Z) 31 LC D+X,Y:?CHR$(#F0) 32 LC D+A,B:?CHR$(#F1) 33 RTN 40 @SCORE 41 IF B<Z RTN 42 S=S+10 43 IF S%U>0 RTN 44 LC 0,4:?"1UP!":BEEP:WAIT40 45 LC 0,4:?" " 46 R=R+1 47 IF N>M N=N-1:GSB@DRAW 48 W=W-(N=M&&W>V) 49 Y=Y-(W=V&&Y>H) 50 RTN 60 @CRUSH 61 C=(1<=X&&X<=N)&&(X!=A||Y!=B) 62 IF C RTN 63 LC X+D,Y:?CHR$(#F4) 64 BEEP150,30:WAIT30 65 R=R-1:GSB@DRAW 66 RTN 70 @MAIN 71 GSB@DRAW 72 @DO 73 GSB@MOVE 74 GSB@SCORE 75 GSB@CRUSH 76 LC0,1:?"SCORE=";S 77 ?CHR$(#F0);"=";R;" " 78 WAIT W 79 IF R<1 GOTO @EXIT 80 GOTO@DO 90 @EXIT 91 ?:?"GAME OVER":?:END
チャートや変数表までupしていただき、ありがとうございます! これだけ詳しいと、まさに教材ですね。初心者プログラマには、ぜひとも挑戦してほしい! そして、教材とはいってもゲーム自体もなかなか楽しいです。ふらふら動く敵キャラがドキドキものです。