fx-CG50 ゲームプログラム 「横スクロールSTG」

Casio fx-CG50 ゲーム開発入門

●操作方法とルール
・上下キーで自機を上下に移動
・0キーでミサイルを発射し、敵機を撃ち落とす
・敵機は、表示されているシールドの回数、撃つと破壊できる
※0キーは押しっぱなしで連射できます


●プログラムの概要
・変数
 X,Y 自機の座標
 S スコア
 B 常に+1し、背景スクロールに用いる
 F 常に+1し、どの敵を動かすかに用いる
 E[7,2] 敵のデータ E[*,1]がシールド値、E[*,2]がX座標
 ※シールドとは敵機に表示される数で、何発撃って倒すかという値
・処理
 Lbl 0 初期化
 Lbl 1 ゲーム中 自機の移動と背景のスクロール
 Lbl 2 ゲーム中 敵機の移動、敵機が自機のところまで来ない間はGOTO 1
 Lbl 3 ゲームオーバー

●プログラム
'ProgramMode:RUN
Lbl 0
1->X:3->Y
0->S
0->B
1->F
{7,2}->Dim Mat E
ClrText
Locate 1,1,"SCORE 0"

Lbl 1
Getkey->K
If K=28 And Y>2:Then Locate X,Y," ":Y-1->Y:IfEnd
If K=37 And Y<6:Then Locate X,Y," ":Y+1->Y:IfEnd
Blue Locate X,Y,"_>=_"
If K=71:Then Yellow Locate X+1,Y," - - - - - - - - - -":If Mat E[Y,1]>0:Then Mat E[Y,1]-1->Mat E[Y,1]:Red Locate Mat E[Y,2],Y,"******":S+1->S:Locate 7,1,S:IfEnd:IfEnd
B+1->B
MOD(B,3)->T
If T=0:Then Green Locate 1,7,"_#E6CF____#E6CF____#E6CF____#E6CF____#E6CF____#E6CF____#E6CF___":IfEnd
If T=1:Then Green Locate 1,7,"___#E6CF____#E6CF____#E6CF____#E6CF____#E6CF____#E6CF____#E6CF_":IfEnd
If T=2:Then Green Locate 1,7,"__#E6CF____#E6CF____#E6CF____#E6CF____#E6CF____#E6CF____#E6CF__":IfEnd
If K=71:Then Yellow Locate X+1,Y,"                    ":IfEnd

Lbl 2
F+1->F
If F=7:Then 2->F:IfEnd
If Mat E[F,1]=0:Then RanInt#(1,2+Int (S/20))->Mat E[F,1]:19->Mat E[F,2]:Else Mat E[F,2]-1->Mat E[F,2]:IfEnd
Magenta Locate Mat E[F,2],F,"< > "
Magenta Locate Mat E[F,2]+1,F,Mat E[F,1]
If Mat E[F,2]>X:Then Goto 1:IfEnd

Lbl 3
Red Locate 7,3,"GAME OVER"
Locate 4,5,"[1]RETRY [2]END"
If Getkey=72:Then Goto 0:IfEnd
If Getkey=62:Then ClrText:Stop:IfEnd
Goto 3
Casio fx-CG50 ゲーム開発入門 のトップページへ
プログラミング、ゲーム開発の書籍を執筆します
メールはこちらへ: