F15 Eagle
●遊び方
>ルール
あなたはF15 Eagleのコックピットで操縦しています。
ターゲット (+) の中心に敵機が来るよう、カーソルキーの右、左で
戦闘機を操縦し、中心のプラスに敵機が来たらSPACEキーで
ミサイルを発射して下さい。左右からミサイルが敵機に向かって
発射されます。ミサイルは10個搭載されていてミサイルがなくなる
とゲームオーバーです。
>画面説明
SCORE= 0 ←スコア
(+) ←ターゲットスコープ
MISSILE= 10 ←ミサイル残数
>その他
その昔、CASIO PB-100(ポケコン)で遊んでいたゲームを思い出して
作ってみました。100点が最高得点ですので是非挑戦してみて下さい。
●プログラムについて
任意のプログラム番号に保存して下さい。例)SAVE0
●変数
X=敵機X軸
Y=敵機Y軸
A=破壊左X軸
B=破壊右X軸
L=MISSILE左X軸
R=MISSILE右X軸
S=スコア
M=MISSILE残数
●プログラムの説明
10 画面クリア、全変数クリア
20 敵機の初期設定
30 ミサイルの残数初期設定
100 メインプログラム
110-120 敵機を消す
130 カーソルLEFTキーダウン時の動き
140 カーソルRIGHTキーダウン時の動き
150 敵機が画面からはみ出した時の処理
160 敵機の最終位置をランダムで決定
170-180 敵機を表示
190 ミサイル発射SPACEキーダウン時の動き
200-210 自機のターゲット表示
220-230 スコア表示
240-250 ミサイル残数表示
260 0.5秒待つ
270 ミサイルがなくなった時の処理
280 メインを繰り返す
300 ミサイル発射処理プログラム
310 左のミサイル、右のミサイルのX軸初期値
320-440 ミサイルの左右からの動き
450 ミサイル残数を1個減らす
500 ミサイル命中判定
510 実際の判定。ミスならミス表示でメインプログラムへ戻る
520-610 命中の場合の動き
620 メインプログラムへ戻る
700 終了処理
710-720 ゲームオーバー表示
730 プログラム終了
5 'F15 Eagle 10 CLS:CLV 20 X=0:Y=12:X=X+RND(32):IF X=X<16 AND X>14 THEN GOTO 20 30 M=10 100 'main 110 LOCATE X,Y 120 PRINT " "; 130 IF BTN(LEFT)=1 AND X>0 THEN X=X+1 140 IF BTN(RIGHT)=1 AND X<31 THEN X=X-1 150 IF X<0 OR X>31 THEN X=15 160 X=X+RND(3)-1 170 LOCATE X,Y 180 PRINT CHR$(241); 190 IF BTN(SPACE)=1 THEN GOSUB 300 200 LOCATE 14,12 210 PRINT "(+)"; 220 LOCATE 12,9 230 PRINT "SCORE=",S 240 LOCATE 11,15 250 PRINT "MISSILE=",M 260 WAIT 5 270 IF M=0 THEN GOTO 700 280 GOTO 100 300 'MISSILE FIRE 310 L=0:R=31 320 FOR W=1 TO 15 330 LOCATE L,Y 340 PRINT "-"; 350 LOCATE R,Y 360 PRINT "-"; 370 WAIT 2 380 LOCATE L,Y 390 PRINT " "; 400 LOCATE R,Y 410 PRINT " "; 420 L=L+1:R=R-1 430 BEEP 440 NEXT 450 M=M-1 500 'ATARI HANTEI 510 IF X!=15 THEN LOCATE 13,12:PRINT "MISS!":WAIT 40:CLS:RETURN 520 A=15:B=15 530 FOR W=1 TO 5 540 LOCATE A,Y 550 PRINT "*"; 560 LOCATE B,Y 570 PRINT "*"; 580 WAIT 2 590 A=A-1:B=B+1 600 NEXT 610 BEEP 30,30:WAIT 50: S=S+10:CLS 620 RETURN 700 'END 710 LOCATE 11,12 720 PRINT "GAME OVER" 730 END
戦闘機の操縦がこんなに難しいとは! うまく調節しようとしても、どうしても機体がふらついて、うまくミサイルを当てられない……。それだけに、ハイスコアを更新したときには思わずガッツポーズ。このシビアさが、素晴らしいです。