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

2018/07/17 22:34:49

MixJuice GET URL : kidspod.club/mj/521

F15 Eagle



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 プログラム終了

  • No registered tag exist.
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

SOURCE CODE

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



COMMENT

Kidspod運営チーム
Kidspod運営チーム2018/08/01 19:45:19

戦闘機の操縦がこんなに難しいとは! うまく調節しようとしても、どうしても機体がふらついて、うまくミサイルを当てられない……。それだけに、ハイスコアを更新したときには思わずガッツポーズ。このシビアさが、素晴らしいです。