初心者のためのゲームプログラミング入門

プログラミングとゲームの杜

初心者のためのプログラミング入門 & ゲームプログラムの作り方入門

Processing 入門

12.みどりを救え4 スコアとゲームオーバー

 

今回は [ みどりを救え3 当たり判定 ] の続きです。

プログラムにコメントを入れることは大切なことです。
しかしまた、コメントを少なくするプログラミングも必要です。
変数や関数の名前で、どんな役割をもっているのか分かるようにしたり
プログラムの書き方にルール(パターン)を作ることにより
あとで見ても処理の流れが分かりやすくするのも良い方法です。

 

 

スコアを表示しよう

スコアの表示をしましょう。
ついでに HP(体力)の表示もします。
スコア表示用の関数 scoreDisp ( ) を追加します。

 

スコアを表示する

スコアの加算は、当たり判定の中で行います。(74-76行目)
みどりと当たったときだけ得点にするため、色の判定を行います。

テキスト表示は初めてですが、むずかしい点はないですね。

text ( “表示したい文字列”, x座標, y座標 );

文字列と変数を+でつなぐことができるので簡単です。

 

 

実行してみましょう。
みどりと当たったときだけ得点するか確認してください。

みどりと当たったとき得点するか確認

 

 

リスクあるゲームにしよう

リスクとは、ある行動をすること(しないこと)で発生する危険のことです。
私がゲーム(パズルを除く)を作る時に、一番注意する点はリスクの部分です。
これによってゲームの面白さが違います。

このゲームにもリスクを入れましょう。
まず、赤い四角に接触するとHPを減らすようにします。
まぁ、一般的なルールです。
次にみどりの四角を取りそこなった場合も(画面外へ出てしまう)
HPを減らすようにします。
これでかなりゲームの感じが変わります。

 

体力HPを減らす

20行目、HP = 10 としました。
58行目は、オブジェクトが画面外へでたか判断している所です。
この中にみどりであればHPを減らす処理をいれます。

hitCheck ( ) では当たり判定の中に、みどりでないとき(つまり赤)
HPを減らすようにします。

 

 

実行してみましょう。
HPの数が、赤と当たったとき、みどりが画面外へ出たとき減るか
確認してください。

2つの条件で体力HPが減ることを確認

 

 

ゲームオーバーを表示しよう

HPが0になったら、ゲームオーバーを表示させようと思います。
しかしその前に、ゲームの流れ(処理の流れ)を管理するための
仕組みを作ります。

変数 gseq を用意しました。
gseq == 0 のとき、プレイ中
gseq == 1 のとき、ゲームオーバー状態
というようにします。
28行目 else if とありますが、このように条件文をつなげることもできます。

 

ゲームの流れを切り替える

関数 draw ( ) の内容のほとんどを gamePlay ( ) に移します。
そして、プレイ中はこの gamePlay ( ) を動かします。

ゲームオーバー中は gameOver ( ) を呼び出します。
この中には表示系の関数のみ入れます
そうすれば画面の止まった状態になるからです。
実行してHPが0以下になったとき、画面が止まるか確認しましょう。

 

 

これで準備はできました。
ゲームオーバーのテキストを表示させます。

ゲームオーバーの文字を表示する

 

 

実行してみましょう。

GAME OVERの表示を確認する