【スクラッチ】ゲームクリア&ゲームオーバー判定の作り方!「メッセージを送る」を活用しよう!

当ページのリンクには広告が含まれています。

前回の記事で、猫が流れてくるフグをよけながら、ハートをとるスクロールゲームを作りました。

あわせて読みたい
【スクラッチ】初心者でも簡単なスクロールゲームの作り方を紹介!チュートリアルをうまく活用しよう! 前回の記事で、スクラッチのアカウントを作りました。 https://kmb042303.com/first_step_of_scratch/ 早速ゲームを作るニャ! しかし、最初からスクラッチのトップ画面...

自分でゲームを作れたニャ!

しかし、まだまだ完成ではありません。

今のままだと、ポイントが増えたり、減ったりするだけで、ゲームが終わりません。

そこで今回は、ゲームクリアとゲームオーバーの判定を作ります!

この記事では、スクラッチでゲームクリアとゲームオーバーの処理の作り方がわかりるので、自分のゲームをよりゲームらしくしたい方に役立つので、ぜひご覧ください。

記事を読んでいて、「スクラッチの使い方を調べるのは大変」「自分で子どもに教えられそうにない」と感じた方もいるかと思います。

そんな方は、「Tech Kids School【テックキッズスクール】」を試してみては?

スクラッチを教材にプログラミング思考を体系的に学べるオンラインプログラミングスクールです。

無料体験できるので、まずはやってみることをおすすめします。

詳しくは↓のボタンから

目次

『メッセージを送る』ブロックの仕組み

『イベント』の『メッセージを送る』と『メッセージを受け取ったとき』の仕組みを紹介します。

まず『メッセージを送る』は、プロジェクト全体にメッセージを発信します。

メッセージの名前は自分で決めることができます。

例えば、『旗を押したとき、あいさつを送る』としたとき、旗を押したらプロジェクト内に『あいさつ』というメッセージを発信します。

メッセージを発信するだけだと何も起こりません。

続いて、『メッセージを受け取ったとき』です。

『メッセージを受け取ったとき』は、プロジェクト内に発信されたメッセージを受け取り、その後の動作につなげます。

例えば、『あいさつを受け取ったとき、おはようと言う』とすると、プロジェクト内に発信された『あいさつ』を受け取って、スプライトに「おはよう」と言わせます。

今回は、この『メッセージを送る』と『メッセージを受け取ったとき』を使って、ゲームクリアとゲームオーバーの機能を作ります。

ゲームクリアとゲームオーバーの条件を決める

まずは、どうなったらゲームクリアにするか、ゲームオーバーにするかを決めます。

↓こんな感じにしてみます。

  • ゲームクリア:ポイントが「5」を上回ったらゲームクリアを表示する
  • ゲームオーバー:ポイントが「0」を下回ったらゲームオーバーを表示する

具体的な作り方を紹介します。

ゲームクリア判定を作ろう!

ゲームクリア判定の作り方は、以下の3ステップです。

  • ゲームクリアのスプライトを作る
  • 猫のスプライトにゲームクリアしたときのプログラムを作る
  • ゲームクリアのスプライトにメッセージを受け取るプログラムを作る

それぞれ紹介します。

ゲームクリアのスプライトを作る

まずは、ゲームクリアのスプライトを作ります。

スプライトのメニューの中の『描く』をクリック。

そうすると、オリジナルのスプライトを作ることができます。

T』をクリック。

編集スペースをクリックして『GAME CLEAR』と入力しましょう。

つづいて、好みのフォントに設定します。

フォントは『Pixel』にするとゲーム感が増します。

文字の大きさは、テキストボックスの枠をクリックしながらマウスを動かすと変えられます。

文字の色は、お好みで設定してください。

テキストボックスを選択して、『塗りつぶし』から好きな色を選びましょう。

今回は、赤を選びます。

これで、ゲームクリアのスプライトができました。

猫のスプライトにゲームクリアしたときのプログラムを作る

続いて、猫のスプライトに『ポイントが「5」を上回ったらゲームクリアを表示する』というプラグラムを設定します。

『制御』から『もし<>なら』をドラッグしてきます。

『<>』の部分に『演算』から『〇>50』をドラッグしてはめ込みましょう。

そして、『〇』の部分に『変数』の『ポイント』をドラッグしてきます。

『50』を『5』に修正

『イベント』の『メッセージ1を送る』をドラッグして、『もし~なら』の中に入れます。

『メッセージ1』の▼をクリックし、『新しいメッセージ』を選択。

『ゲームクリア』を入力して『OK』ボタンを押します。

また、ゲームクリアした後、ハートやふぐの動きを止めたいので、『制御』の『すべて止める』を『ゲームクリアを送る』の下に置きます。

これまでの処理はゲーム中ずっとやってほしいので、『制御』の『ずっと』で囲みます。

最後に『イベント』の『旗が押されたとき』を『ずっと』の上にのせて完成です。

ゲームクリアのスプライトにメッセージを受け取ったときに表示するプログラムを作る

続いて、ゲームクリアにメッセージを受け取ったときに表示するプログラムを設定します。

ゲームクリア』のスプライトを選びます。

まず、ゲーム中は表示したくないので、『見た目』から『隠す』をドラッグし、その上に『イベント』の『旗が押されたとき』をのせます。

そして、『見た目』の『表示する』を持ってきて、『イベント』の『ゲームクリアを受け取ったとき』をのせます。

新しいメッセージを作ると、そのメッセージが『メッセージ1』の代わりに入力されるようになります。

これで完成です。

この段階でゲームを試してみて、ポイントが『6』になって『ゲームクリア』が表示されればOKです。

ゲームオーバー判定を作ろう!

ゲームクリアと同じ手順でゲームオーバーのスプライトを作る

まずは、ゲームクリアのスプライトを複製します。

そして、『GAME CLEAR』を『GAME OVER』に修正。

文字の色は、ゲームクリアとは変えたいので、青にします。

これで、ゲームオーバーのスプライトが完成しました。

ゲームクリアのプログラムを複製してゲームオーバー用に修正する

ゲームクリアのプログラムをもとにゲームオーバーのプログラムを作ります。

まず、猫のスプライトを選びます。

旗を押されたときに』を左クリック。

ゲームクリアのメッセージを送るプログラム全体が選択されていることを確認して、右クリックの『複製』を選びます。

複製したらゲームオーバー用に修正しましょう。

まず『ポイント>5』をいったん消します。

演算から『〇<50』をはめ込み、『〇』に変数の『ポイント』を持ってきます。

そして、『50』を『0』に修正します。

『ゲームクリア』の▼にある『新しいメッセージ』をクリック。

ゲームオーバー』と入力して『OK』ボタンを押しましょう。

続いて、『ゲームオーバー』のスプライトのプログラム『ゲームクリアを受け取ったとき』を『ゲームオーバー』に変えます。

これで、プログラムは完成です。

ゲームをやってみて、↓のようにポイントが『-1』になったら、『ゲームオーバー』が表示されればOKです。

ゲームクリア&ゲームオーバーのスプライトにメッセージを送って表示させよう!(まとめ)

メッセージを送るプログラムを活用してゲームクリア&ゲームオーバーの判定を作りました。

今回の内容で完成したゲームは↓の感じになります。

だいぶゲームらしくなったと思います。

今回の記事の内容を参考に、よりゲームらしくゲームを作ってみてください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次