Scratch(スクラッチ) で簡単ゲーム作成!リンゴキャッチゲーム

このページでは
人気キッズプログラミング教材のScratch(スクラッチ)を使って、誰でも簡単に作れるリンゴキャッチゲームの作り方をご紹介します。

ご紹介するリンゴキャッチゲームは、PCならマウスを動かす、タブレットならタップする指を動かすだけの簡単ゲーム!小学校入学前のこどもも盛り上がること間違いなし。

誰でも簡単に作ることができるので、今回紹介するゲームをベースに自分なりのアクションゲームを作ってみてください^_^

それでは楽しんでScratchでプログラミングを進めましょう!


Scratchリンゴキャッチゲームの要素

今回のゲームの完成形です。

プログラミングを進める際に、今回のゲームの要素をピックアップします。

  • キャラクターの動き:横移動のみ+マウス追従(マウスを追っかける)
  • リンゴの動き:ランダムな位置に発生。落ちるタイミングもランダム
  • キャラクターがリンゴに触るとポイント
  • 地面に落ちたらゲームオーバー

それぞれの要素について、ひとつずつ進めていきましょう。

Scratchゲーム要素①:横移動のみ+マウス(タップ)追従させる

リンゴキャッチゲームの要素① プレイヤーキャラのうごきを「横移動のみ」かつ「マウス・タップ追従」にするプログラムです。
ここで目指すプログラム
  • プレイヤーを横移動させる
  • マウスもしくはタップに追従させる
手順1
イベント: が押されたとき
ゲーム開始したらすぐに対応するようにします
手順2
うごき:xざひょうを○、yざひょうを◯にする
最初にy座標を任意の位置(ここでは-135)に固定してしまいます。
手順3
せいぎょ:ずっと〜
ゲーム中は常にマウス・指を追いかけるようにするのに必要
手順4
うごき:xざひょうを◯にする
横移動のため、x座標のみをかえるブロックを使用します
手順5
しらべる:マウスのxざひょう
x座標を◯にするの◯の中に埋め込むとマウス・タップに追従するようになる

マウス・タップに追従させるプログラム

スプライトをマウス・タップに追従させるのに、xざひょうを◯にするマウスのxざひょうを組み合わせて、ずっと〜で囲って対応しました。

今回は横移動だけでしたが、縦移動や画面全体をマウス追従させたい場合も対応が可能です。

MEMO

・縦移動に固定したければyざひょうを◯にするを使用できます。

・画面全体を移動するならば、どこかのばしょ▼ へいくを使用して、ドロップダウンリストからマウスのポインターを選べば対応できます。

MEMO

プレイヤーの動かし方としては、キーボードの←→キーで動かすことや、コントローラーを作って動かすこともできます。

Scratchで矢印キーを使って横移動させるプログラムです。

動き方がちょっと異なりますので、好きな方法を試してみてくださいね^_^

Scratchゲーム要素②:リンゴがランダムに落ちてくるプログラム

リンゴがひとつずつ出て落ちてくるのでは、ゲームとして簡単すぎますね。

そこで、ここでは2つのランダム要素を加えたいと思います。

  1. リンゴの発生場所・ペースをランダムにする
  2. 発生してから落ちるまでの時間をランダムにする

こうすることで、リンゴが一気に2つ落ちてきたり、落ちてくる順番が違う!ということになり、ゲームがより面白くなります。

リンゴの発生ペースをランダムにする

クローンをランダムなペースで発生させるプログラム
ここで目指すプログラム
  • ゲーム終了までクローンを作り続ける
  • クローンの発生ペースをランダムにする
手順1
イベント: が押されたとき
ゲーム開始の合図です
手順2
みため:かくす
最初にリンゴ本体を隠します
手順3
へんすう:へんすう▼ を0にする
まずはゲーム終了の合図となる変数を作り、ゲーム開始時は0に設定します
手順4
せいぎょ:◇までくりかえす
へんすう=20」を埋め込むことで、リンゴを20個拾うまでクローンを作り続けるようにします
手順5
せいぎょ:1びょうまつ
えんざん:◯から◯までのらんすうを埋め込んで、発生ペースをランダムに設定
手順6
せいぎょ:じぶんじしんのクローンをつくる
クローンを作るプログラム 
Scratchのクローン機能を使う
クローン機能のブロック
まずリンゴが一つずつでは面白くないので、このクローンブロックを使ってリンゴの数を増やしましょう。

ずっと◇までくりかえすの中にじぶんじしんのクローンをつくるを置きます。

あとはクローンされたときを使って、実際の動きをプログラミングしていきます。

Scratchで乱数を使ってランダムな動きをゲームに加える

Scratchでは、スプライトの動きや方向などを決める際に、数字をインプットしていきます。

そのとき、1つの数字をインプットするのではなく、◯から◯までのらんすうを使用すれば、スプライトの動きを不規則(ランダム)にすることができます^_^

◯の中に入れる数字を色々といじって、ランダムな動きを楽しむとGood!

リンゴの落下するタイミングをランダムにする

リンゴの落下までの時間をランダムにするプログラム

ここで目指すプログラム
  • リンゴの発生場所をランダムにする
  • リンゴが落下するタイミングをランダムにする
  • プレイヤーもしくは地面に触れるまで落下する
リンゴの発生場所をランダムにプログラミングする
手順1
せいぎょ: クローンされたとき
クローンが作られた際の合図です
手順2
うごき:xざひょうを◯、yざひょうを◯にする
このブロックだけでは同じ場所にリンゴが発生してしまいます
手順3
えんざん:◯から◯までのらんすう
x座標・y座標それぞれに乱数を指定します。ここではx座標は端から端まで広めに設定、y座標は木の葉っぱの高さにしています
手順4
みため:ひょうじする
そのままでは隠れたままなので表示させます

リンゴのクローンが作られたら、用意した木のどこかにリンゴがなる、というプログラムを組みます。

ここでも乱数ブロックを使うことで、いろいろな場所に表示させることができますね。

リンゴが落下するタイミングをランダムにする
手順1
せいぎょ: ◯びょうまつ
リンゴが木になってから、落ちるまでの時間を制御します
手順2
えんざん:◯から◯までのらんすう
待ち時間に乱数を設定することで、いつ落ちてくるのかわからなくすることができます

あとは、おさるもしくは地面に触れるまで、落ち続けるようにプログラミングするだけです。

プレイヤーもしくは地面に触れるまで落下させる
手順1
せいぎょ: ◇までくりかえす
この中に落下する動きを入れていきます
手順2
えんざん:◇または◇◇までくりかえすに入れる
プレイヤーと地面を設定したいので、◇または◇を使用します
手順3
しらべる:Monkey▼にふれた◇または◇に入れる
これでプレイヤーのおさるに触れるまでリンゴが落ち続けます
手順4
しらべる:色にふれた◇または◇に入れる
地面はスプライトではないので、代わりに「色」で触れたかどうかの判定をします
手順5
うごき: yざひょうを◯ずつかえる
◯の中に好みの数字を入れます。マイナスが下方向の動きです。

ポイントは地面に触れた時の判定です。

MEMO
  • 色にふれたを使う時は、色にタップもしくはクリックすると、パレットが表示されます。
  • パレットの一番したのをクリックします
    色に触れたブロックを使う際は、スポイトアイコンをクリックすると使いやすい
  • 確認ウインドウの上にカーソルを持っていくと、画面の好きな色を選ぶことができるので、地面をクリックします。
    Scratch:色の選択の仕方。拡大表示をよく見て、選択したい色を選ぶ

Scratchゲーム要素③:ポイント判定&ゲーム終了

ここまでのプログラムでスタートしてみると、リンゴがたくさん作られますが、おさるに当たっても、地面に落ちても何も起こらず、ひたすらリンゴが作られていきます。

そこで最後に、リンゴがおさると地面に触れた場合のプログラムを組みましょう。

赤枠に囲まれた部分を追加していきます。

Scratch:リンゴがプレイヤーや地面に触れた場合のプログラム

リンゴがプレイヤーに触れると得点が入るプログラム

ポイントを1点ためるプログラム
手順1
せいぎょ: もし◇なら
もし〜したら、という条件分岐プログラム。
手順2
しらべる:Monkeyにふれたら もし◇ならに入れる
これでMonkeyに触れた時のプログラムとなります
手順3
へんすう:ポイントを1ずつかえる
プレイヤーに触れたら1ポイント付くようにします
手順4
みため:かくす
おさるに触れたら食べられるという設定のため、かくします
手順5
せいぎょ: このクローンをさくじょする
隠したら重くならないようにクローンを削除しましょう
MEMO
  • このままだと何も音やアニメーションなくポイントになって味気ないです。
  • そこで、おさるのほうでもいいので、触れたら音がなるようにしてみます。
    Scratch:ゲームに味つけする(音を入れるプログラム)
ポイントが貯まるとゲームクリアーにする

ポイントが貯まるプログラムを組んだので、合わせてゲームクリアのプログラムも組んでおきます。

単純にポイントが20になったら、ゲームクリアのメッセージを送ります。

Scratch:ポイントがたまったらゲームクリアのメッセージをおくる

あとはゲームクリアーの表示と、全てを停止するプログラムを組みましょう。

ゲーム開始時に表示を隠すのを忘れずに!

Scratch ゲームクリアのプログラム

リンゴが地面に触れたらゲームオーバーのプログラム

手順1
せいぎょ: もし◇なら
もし〜したら、という条件分岐プログラム。
手順2
しらべる:色にふれたら もし◇ならに入れる
先ほどと同じようにスポイトで地面の色を指定しよう
手順3
イベント:メッセージ(Game Over!)をおくる
これで地面に触れることがGame Over!のトリガーとなります

これであとはGame Overの表示を受け取って、全てを停止させるだけです。

Scratch ゲームオーバーの表示

これで一連のプログラムは完成。ぜひ遊んでみてください^_^

まとめ:Scratchで簡単なリンゴキャッチゲームを!

いかがでしたでしょうか?
上のプログラムを組み替えれば、簡単にリンゴキャッチゲームが制作可能です。
リンゴの出てくるタイミングや速度など、色々と変えてみると難易度が変わって面白いですよ♪
小さな子どもと遊ぶのにちょうどいいプログラムなので、一緒に作ってみてはいかがでしょうか?

 

ちょっと難しい!と感じた方プログラミング教室に通うのもありだと思いますので、一度無料体験に行ってみるのもいいですね^_^

▼パソコン操作から安心の教室

▼ロボットプログラミングなら

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です