【アフィリエイト広告を利用しています】
この記事ではScratch(スクラッチ)でシューティングゲームを作る方法について解説します。
効果音が出たり、ゲームクリアやゲームオーバーがある本格的なゲームですが、Scratchに始めから登録されているスプライトを使って、手軽にゲームを作ることができますよ。
ゲーム作りなんて何だか難しそう…
そのような方に向けて分かりやすく解説していますので、ぜひ最後までお読みください!
Scratchの公式サイトはこちら→https://scratch.mit.edu/
以下の記事で簡単にできる10個のゲームの作り方を詳しく解説していますので、併せてご覧ください。
》【Scratch】初心者でも簡単!ゲームの作り方10選
このブログが本になりました!
完成品はこちら
まずは完成品を見てみましょう。下の画面中央の旗ボタンをクリックしてください。
(音が鳴りますのでご注意ください!)
ゲームのやり方は次の通りです。
- 矢印キーでネコを上下左右に動かします。またスペースキーを押すとビームが出ます。敵のこうもりにビームを当てて倒しましょう。
- 敵を倒したらポイントが増えていき、10ポイントになればゲームクリアです。敵の体や攻撃に当たったらゲームオーバーです。
- ゲームクリアに近づくと敵の攻撃が速くなって難しくなりますよ!
スプライトと背景を準備しよう
始めにゲームに使うスプライトと背景を準備します。
まずスプライトですが、ネコを削除して次の4つのスプライトを追加しましょう。
- ネコ…「Cat Flying」
- 敵(こうもり)…「Bat」
- ビーム(ネコの攻撃)…「Paddle」
- ボール(敵の攻撃)…「Ball」
続いて画面に表示させる文字のスプライトを作ります。スプライト一覧の右下にあるにカーソルを合わせて、その上の「描く」ボタンをクリックします。
下のようなペイントエディター画面に切り替わります。「テキスト(Tマークのアイコン)」をクリックすれば、文字を入力できるようになります。
以下の記事でペイントエディターの使い方を詳しく解説していますので、併せてご覧ください。
》【Scratch入門】ペイントエディターを使ってカービィを描こう
では次のように「スタート」「ゲームクリア」「ゲームオーバー」の3つのコスチュームを作りましょう。
「スタート」のコスチュームです。
「ゲームクリア」のコスチュームです。
「ゲームオーバー」のコスチュームです。
コスチューム名を変えておくと、プログラムを作るときに分かりやすくなりますよ。
次に背景を準備します。通常は背景を動かすことができないので、今回は背景をスプライトで作ります。スプライト一覧の右下にあるにカーソルを合わせて、その上の「描く」ボタンをクリックします。
ペイントエディターを開いたら、まず「四角形」ツールで黒い四角形を描きます。大きさはステージより少し大きいサイズにしましょう。
「筆」ツールで白い星を下のように描けば、背景の完成です!
変数を準備しよう
次にゲームに使う変数を準備します。
変数とは、プログラムの中で使う数や文字を入れておく箱のようなものです。
以下の記事で変数を詳しく解説していますので、併せてご覧ください。
》【Scratch入門】変数とメッセージを使ってアニメーションを作ろう
このプログラムでは、下のように3つの変数を作成します。
それぞれの変数の内容は次のとおりです。
変数名 | 内容 | 表示 |
---|---|---|
こうもりx座標 | 敵(こうもり)のx座標を表す変数です。 | しない |
こうもりy座標 | 敵(こうもり)のy座標を表す変数です。 | しない |
ポイント | 敵を倒した数を表す変数です。 | する |
メッセージを準備しよう
次にメッセージを準備しましょう。
メッセージは他のスプライトやステージに合図を送るときに使います。
以下の記事でメッセージを詳しく解説していますので、併せてご覧ください。
》【Scratch入門】変数とメッセージを使ってアニメーションを作ろう
このプログラムでは、下のように4つのメッセージを作成します。
メッセージ名 | 合図 | 送るスプライト | 受け取るスプライト |
---|---|---|---|
こうもり攻撃 | 敵が攻撃する位置まで移動したとき | 敵 | ボール |
こうもりヒット | 敵がビームに当たったとき | 敵 | ビーム |
ゲームクリア | 敵を10体倒したとき | ビーム | ネコ、表示文字 |
ゲームオーバー | 敵の体や攻撃に当たったとき | ネコ | 表示文字 |
「ネコ」のプログラムを作ろう
それではネコのプログラムから作っていきましょう。
旗が押されたとき
旗が押されたときのプログラムは下の通りです。
旗が押されたら、大きさと始めの位置を設定します。
そして矢印キーが押されたらx座標またはy座標を変えて、上下左右に移動するようにします。
以下の記事でスプライトの動かし方を詳しく解説していますので、併せてご覧ください。
》【Scratch入門】座標と向きを理解してスプライトを動かしてみよう
もし敵やボール(敵の攻撃)に触れたら、「ゲームオーバー」メッセージを送って、このスクリプトを止めます。
「ゲームクリア」を受け取ったとき
「ゲームクリア」メッセージを受け取ったときのプログラムは次の通りです。メッセージを受け取ったら、ネコの他のスクリプト(旗が押されたときのプログラム)を止めます。
「敵」のプログラムを作ろう
次に敵のプログラムを作りましょう。
旗が押されたとき
旗が押されたときのプログラムは下の通りです。
旗が押されたら、大きさを設定して隠します。
そして乱数を使って2~3秒おきに自分自身のクローンを作ります。
以下の記事でクローンと乱数を詳しく解説していますので、併せてご覧ください。
》【Scratch入門】クローンと乱数を使ってアニメーションを作ろう
クローンされたとき
クローンされたときのプログラムは下の通りです。
クローンされたら、x座標を270、y座標をランダムな位置にして表示します。
そして座標とコスチュームを変えるのを繰り返します。y座標を-10~10までランダムに変えると、上下に不規則に動いてこうもりが飛んでいるような動きになります。
もしx座標が-240より小さい位置(ステージ左端)まで移動したら、このクローンを削除します。
もしビームに触れたら、「こうもりヒット」メッセージを送ります。そして「Crunch」の音を鳴らしてこのクローンを削除します。
以下の記事で音の鳴らし方を詳しく解説していますので、併せてご覧ください。
》【Scratch入門】音を鳴らすプログラムを作ってみよう
もしx座標が210または60の位置まで移動したら、「こうもりx座標」変数を敵クローンのx座標、「こうもりy座標」変数を敵クローンの座標にして、「こうもり攻撃」メッセージを送ります。
「ビーム」のプログラムを作ろう
次にビーム(ネコの攻撃)のプログラムを作りましょう。
旗が押されたとき
旗が押されたときのプログラムは下の通りです。
旗が押されたら、「ポイント」変数を0にして、大きさを設定して隠します。
もしスペースキーが押されたら、ネコの位置に移動して表示します。これでネコからビームが発射されます。
そして端に触れるまでx座標を20ずつ変えるのを繰り返し、端に触れたら隠します。
「こうもりヒット」を受け取ったとき
「こうもりヒット」メッセージを受け取ったときのプログラムは次の通りです。
メッセージを受け取ったら隠して、ポイントを1ずつ増やします。
もしポイントが10になったら「ゲームクリア」メッセージを送ります。
「ボール」のプログラムを作ろう
次にボール(敵の攻撃)のプログラムを作りましょう。
旗が押されたとき
旗が押されたときのプログラムは下の通りです。旗が押されたら大きさを設定して隠します。
「こうもり攻撃」を受け取ったとき
「こうもり攻撃」メッセージを受け取ったときのプログラムは次の通りです。メッセージを受け取ったら自分自身のクローンを作ります。
クローンされたとき
クローンされたときのプログラムは下の通りです。
クローンされたら、敵クローンの位置まで移動します。
そして向きをネコの方向にして表示してから、5歩動かすのを繰り返します。これで敵クローンからネコのいる方向にボールが飛んでいきます。
もしポイントが6より大きければ、色の効果を150にして、さらに5歩動かします。これでボールの色と速さが変わります。
もし端に触れたらこのクローンを削除します。
「背景」のプログラムを作ろう
次に背景のプログラムを作りましょう。
今回は背景が途切れずにずっと左に動き続けるようにするため、下のように元の背景とクローンの背景が交互に表示されるプログラムを作ります。
旗が押されたとき
旗が押されたときのプログラムは下の通りです。
旗が押されたら、最背面へ移動して、ステージ中央に移動したら自分自身のクローンを作ります。
そしてx座標を-2ずつ変えて左に移動するのを繰り返します。もしx座標が-460より小さい位置(ステージ左の外側)まで移動したらx座標を460(ステージ右の外側)にします。
クローンされたとき
クローンされたときのプログラムは下の通りです。
クローンされたらx座標が460の位置(ステージ右の外側)まで移動します。
そして元の背景と同じように、x座標を-2ずつ変えて左に移動します。もしx座標が-460より小さい位置まで移動したらx座標を460にします。
「表示文字」のプログラムを作ろう
最後に表示文字のプログラムを作りましょう。
旗が押されたとき
旗が押されたときのプログラムは下の通りです。旗が押されたら位置を設定して最前面へ移動します。そして「スタート」を1秒表示します。
「ゲームクリア」を受け取ったとき
「ゲームクリア」メッセージを受け取ったときのプログラムは下の通りです。メッセージを受け取ったら「ゲームクリア」を表示して、「Win」の音を鳴らしたら全てのプログラムを止めます。
「ゲームオーバー」を受け取ったとき
「ゲームオーバー」メッセージを受け取ったときのプログラムは下の通りです。メッセージを受け取ったら「ゲームオーバー」を表示して、「Lose」の音を鳴らしたら全てのプログラムを止めます。
これで全てのプログラムが完成しました!
まとめ
この記事ではScratch(スクラッチ)を使ったシューティングゲームの作り方について紹介しました。
プログラムの理解が深まったら、次は下のような改造にもぜひチャレンジしてみてください。
- ネコやビームの速さを変えてみよう。
- 敵の大きさをランダムに変えてみよう。
- こうもりの他に違う敵を出現してみよう。
このシューティングゲームのScratchプロジェクトのリンクはこちらです。自分オリジナルのゲーム作りにぜひ活用してくださいね。
》シューティングゲーム on Scratch
ゲームをやるのも楽しいけど、作るのも楽しい!
もっと本格的なゲームを作ってみたい!
このような好奇心が芽生えたら、お子様の豊かな未来を切り拓く可能性を広げるチャンスです。
近年、プログラミング教育はますます重要視されています。
2020年度から小学校でのプログラミング教育の必修化が始まっており、また大学入試では2025年1月から大学入学共通テストにプログラミングを含む教科「情報」が出題されます。
プログラミングは創造性や論理的思考を育む素晴らしいスキルですが、親御さんがプログラミングを教える専門家でない場合、お子様が学ぶためのサポートが必要です。
その手助けとして、プログラミング教室のご検討はいかがでしょうか?
以下の記事で小学生向けのおすすめプログラミング教室を紹介していますので、合わせてご覧いただければ幸いです。一緒に、子供たちの未来を輝かせる扉を開きましょう!
》【2024年最新版】小学生向けプログラミング教室3選
この記事を最後まで読んでいただき、ありがとうございました!
コメント