プチコン4 初心者講座 06「一般的なゲームの形にしよう」

初心者講座

第6回は一般的なゲームの形に近づけたいと思います。
(初心者講座を最初から見たい場合はこちら

 

現在はプログラムを実行するといきなりゲームが始まります。

そしてやられると最初の位置に戻りますが、ゲームオーバーもありません。

 

色々なゲームがあるので一概には言えませんが、大まかな流れとしては

タイトル
 ↓
ゲームプレイ
 ↓
ゲームオーバー
 ↓
タイトルに戻る

というのが一般的な形になるかと思います。

この形に近づけていこうと思いますが、その前にプログラムが長くなってきたのでコメントを入れました。
(参考:プログラムをわかりやすくするための「コメント」

適当すぎですかね?w
(自分がわかればOKです)

 

 

スコアを追加しよう

せっかくコメントも入れたので、少しゲームらしくしてみることにします。

敵を倒した時にスコアが入るようにしましょう。

 

やることとしては

・スコア用の変数を作る
・スコアを表示する
・敵を倒した時にスコアを増やす

 

という事で、私はこのようにしてみました。

28行目の追加(スコアの変数を設定)
60行目の追加(敵を倒した際にスコアが入る処理)
63、64行目追加(スコアの表示)

※画像は26行目からになります。

 

実行結果はこちら(動画です)

 

「LOCATE」の解説

「LOCATE」というのは文字の座標を指定する命令です。

これでスコアを左上に(固定した状態で)表示させています。

 

ゲームオーバーをつくろう

やられはするけど残機やゲームオーバーが無いので作成していきましょう。

ここまで見て来た人ならもうお分かりですね^^

 

まず、メインループ前に残機の変数を設定します。
(30、31行目)

 

続けて以下の内容を追加していきます

・メインループ内の赤毛と敵の衝突に「衝突した際にLIFEを減らす処理」(50行目)
・メインループ内に「残機が-1になった際の処理」(67行目)
・メインループ内に「残機を画面右下に表示する処理」(69、70行目)

ここで新しく「BREAK」という命令が出てきました。

「BREAK」の解説

「BREAK」とはループを抜ける命令になります。

この状態だと、残機が-1になった時にメインループを抜けて、その後何もプログラムがないため「OK」と表示されて終了します。

 

ゲームオーバー時の処理をつくろう

先程「BREAK」でメインループを抜ける処理としました。

その場合、ENDLOOPの下に処理が移りますので、そこにゲームオーバー時の処理を追加していきます。

ここでさらに「WAIT」と「CLS」が出てきました。

 

「WAIT」の解説

「WAIT」は指定した長さだけ処理を止める命令です。

「GAME OVER」と表示された後にボタンを押すと次の処理に進むのですが、ゲームオーバーになった際にボタンを連打していたりすると、すぐに処理が進んでしまうので「WAIT」を入れていきなり進まないようにしています。

 

「CLS」の解説

「CLS」はテキストを消す命令です。

85行目の「BREAK」でゲームオーバーのループを抜けるようにしていますが、そのままだと画面に「GAME OVER」の文字が残り続けてしまうため「CLS」で削除しています。

 

 

実行結果はこちら(動画です)

 

 

第6回は以上となります。

07「タイトル、背景、音楽をつけて完成!」へ進む

 

初心者講座のトップに戻る場合はこちら

 

第6回終了時点のプログラムはこちら。

 

コメント

タイトルとURLをコピーしました