しばらく更新の間が空いてしまいましたが、今回は迷路ゲームの改良版として敵としてミツバチを登場させてみましょう。
このゲームを作るにはあらかじめシンプル版の迷路ゲームの作り方をマスターしておく必要があるため、ここから読み始めた人はまず下の記事から参照してください。

Scratch(迷路ゲーム:みつばち出現版)
こちらが迷路ゲームみつばち出現版の完成版です。
中身はこちらから
ゲームのやり方
スタートボタンを押すと左上のSTART地点から右下のGOALに向かって、キーボードの上下左右を使って迷路を進みます。GOALについたらやったーと言い効果音がなりゲーム終了。
ただし、ゲームスタートと同時に敵(みつばち)が迷路上を飛び回ります。みつばちに触れるとダメージをうけLIFEが1ずつ減り、LIFEが0になるとゲームオーバーです。
プログラムの説明
ではプログラムの中身について説明していきます。
基本的な考え
今回のプログラムにおいての特徴としては、みつばちを出現されるスプライトをコピーする部分、自分自身のクローンを作るという部分です。
また、そのみつばちが迷路上を縦横無尽に動き回るという処理です。この部分は乱数を使って表現しています。乱数とはサイコロのようにランダムな数字がでて毎回、同じ値がでないものです。
なお、この処理について、Scratchは[どこかの場所にいく]というブロックがあるため、それで代用することも可能です。
変数・配列の説明
変数ですが、今回はLIFEという名前の変数を1つ作ります。
スプライトの説明
では、各スプライトの説明に入ります。
ペンギン君
ペンギン君の処理については以下となります。
この処理において基本的な部分は迷路(シンプル版)を参照してください。
シンプル版からの変更点はまずゴールに触れた後にやったーと言うだけでなくゴール効果音を追加したこととゲームを終了させるためすべてを止めるという処理を加えています。ここで音が完全にならし切るために3秒待つをいれています。
次にミツバチに触れた時の処理です。このゲームではミツバチは敵なので触れるとダメージとなります。まず触れたダメージとしてLIFE変数が1ずつ減るようにしています。同時にダメージを受けたことが視覚的にわかるように幽霊の効果を加えています。幽霊の効果を50にして、その後、元に戻す(幽霊の効果を0)にするということでペンギン君が点滅しているかのような見た目となります。ここで間に1秒を入れているは、この1秒をいれないと点滅が速すぎてわからないからです。また同時にこの1秒をいれることで、ミツバチが移動していくので、LIFEがうまく1ずつ減ります。
もし、ここで1秒を入れないと、ずっとミツバチが離れるまでペンギン君に触れることになるためLIFEが一気に5ほど減ることになるため、その意味でもこの1秒をいれることは重要です。
ミツバチ
さて次にミツバチの処理です。ミツバチの処理は以下になります。
全体説明で話をした通りミツバチのクローンを作り、それに処理をさせるという流れです。(全体説明ではモジュール的に示したかったのでミツバチの動作を複数回COPYすると表現しましたが、このScratchでは、まずCOPYであるクローンを作って、それに対してどう処理させるかという流れになります)
クローンされたミツバチは乱数をつかって迷路内のどこかの場所へランダムな時間で動くという処理にすることで、まるで自由に飛び回っているように表現できます。
背景
最後に迷路背景の説明です。LIFEが0になってゲームオーバーとなった時の処理です。ここでは、GameOverとかかれた背景に切り替えることで実現しています。それがこの処理となります。
まとめ
ということで、今回は迷路に敵(ミツバチ)が登場することでゲーム性を更にもたせるという改修でした。いかがでしたでしょうか。前回の迷路(暗闇モード版)とあわせると更に難易度があがりますよ。さて次回はペンギン君が自動でゴールを目指すというプログラムに挑んでみたいと思います。
コメント