2018年4月29日日曜日

自機の当たり判定 − シューティングゲームを作ろう(5)

今回は、自機の当たり判定を作りたいと思います。
自機の当たり判定が完成すれば、一通りゲームとして遊べる状態だと思います。

当たり判定自体は簡単ですね。
「○○に触れた」ブロックを使うだけ。


ただし、「敵機に触れた」ループの中にズラズラと当たった時の処理を描くんじゃありません。
ここでは、「やられたよ」メッセージを送るだけ。やられた時の処理は「やられたよを受け取ったとき」イベントの中に作成します。


ただし、ここで行うのは「スプライトの他のスクリプトを止める」だけです。
これは、ゲーム中の移動処理や判定処理のためにグルグル回っているループを止める処理です。
グルグル回っているのは、自機だけじゃなく敵機もそうですね。
なのでこの「やられたよを受け取った時」イベントは自機だけじゃなく敵機や弾のなかにも同様に作成する必要があるんです。

そして、最後は画面表示のスプライトです。


STARTを表示させた時のスプライトの中にコスチュームを追加して「GAME OVER」の画面も作成します。
そして、GAME OVER時の処理をこの「画面表示」スプライトの中に作成します。


ここでもきっかけは「やられたよを受け取ったとき」イベントです。
GAME OVERの音を鳴らして、コスチュームを変更して、表示する。
単純な処理ですね。

さて、ここまで来れば一通りゲームとして動作します。
あとは、細かい演出を追加したり、難易度を変化させたりすると完成度が高くなるでしょう。
ただ、それらは基本的にはここまで作成したプログラムの応用で出来るはずです。

みなさんのアイデアで素敵なシューティングゲームにしてください。

サンプルプログラム
自機の当たり判定