Scratch

Scratchを使った【簡単シューティングゲーム】の作り方|自機・敵・弾の動きを作ろう

Scratch シューティングゲーム作り方8

この記事では、Scratch(スクラッチ)シューティングゲーム作り方について紹介します。

キッズプログラミング教室【アルスクール】では、スクラッチというプログラミング教材を小学生向けレッスンに取り入れています。

「Scratchでシューティングゲームが作れるの!?」と思う方もいらっしゃるかもしませんが、簡単シューティングゲームから複雑なものまで、いろいろな作品が作られています。

 

今回は、初心者がシューティングゲームを作るポイントをまとめてみました。

基本編と応用編に分けて、シューティングゲームの作り方を詳しく紹介しています


2022新学期キャンペーン>> 無料体験レッスンを詳しくみる

Scratchのシューティングゲーム作品例

Scratch シューティング1

Scratchのシューティングゲームってどんなもの?

シューティングゲームは、飛行機やロケットを操縦し、敵となる飛行機や宇宙船などをビームなどで撃墜するゲームです。

大きく分けて、縦スクロール横スクロールの2つのタイプがあります。

どちらのタイプでも、背景の画面を、縦または横に強制スクロールをさせるのが特徴になります。

強制スクロールのため躍動感があり、ドキドキハラハラのスリルや爽快感が楽しめるのがシューティングゲームの大きな魅力です。

 

Scratchのシューティングゲームの作品例1| 縦スクロール

縦スクロールのシューティングゲームとしては、次の作品がおすすめです。

>> 縦スクロールシューティング「Naglfar」

自分のキャラや敵キャラ、背景、動きなどはまさにシューティングゲームそのものです。

ビームは自動で発射され、対地ミサイルは自分で発射する形式になっています。

シンプルな作りで、初心者でもプレイが楽しめるでしょう。

 

Scratchのシューティングゲームの作品例2|横スクロール

横スクロールシューティングゲームは、次の作品がおすすめです。

>> 横スクロールのシューティング

スペースキーで弾を発射するだけでなく、P・B・Rを使って、それぞれパワーモード、レーザーモード、爆弾モードが使えるシューティングゲームです。

敵も様々な形の弾幕を発射してくるなど、本格的な内容になっています。

 

Scratchの簡単シューティングゲームの作り方(基本編)

では、ここからはシューティングゲームの作り方(基本編)を解説していきます。

こちらの動画のゲームを作っていきます。

スプライトを準備しよう|自分のキャラ、弾、敵キャラ

まずは、必要なスプライトを準備しましょう。

自分の操縦するキャラとして、ここではロケットスプライト(Rocketship)を選びました。

Scratch シューティングゲーム作り方2

次に、敵キャラを撃ち落とすための弾(ビーム)のスプライト(Beam)を選びましょう

Button1を選択して「Beam」というスプライトにします。

Scratch シューティングゲーム作り方1

続いて、敵キャラを選びましょう。

ここでは、こうもりのスプライト(Bat)を選びました。

Scratch シューティングゲーム作り方11

ここまでで画面は以下のようになります。

Scratch シューティングゲーム作り方13

背景の画像を準備しよう

ここでは、背景の「Stars」を画像ファイルとして保存したのち再度スプライトとして読み込みます。

Scratch シューティングゲーム作り方12

背景の画像の上で右クリックするとこの画面が出てくるので、「名前を付けて画像を保存」を押して 、パソコンの内部に一度保存します。

Scratch シューティングゲーム作り方15

次に、スプライトの中から「スプライトをアップロード」を選択し、先ほど保存した背景の画像をアップロードします。

Scratch シューティングゲーム作り方14

これで背景画像をスプライトとして登録できました。

宇宙では同じ背景が続くため、この1枚の画像を使い回すことができます。

このスプライトに動きをつけて、背景が上下にスクロールしているようにします。

Scratch シューティングゲーム作り方17 Scratch シューティングゲーム作り方36

旗が押されたときにまず、自分自身のクローンを作り、自分自身は(x,y)=(0,0)に配置します。

Scratchの画面サイズは横480px✕縦360pxなので、縦が少し重なるよう、クローンのy座標を340にします。

そして、自分自身もクローンもy座標を-5ずつ移動して、y座標が-340まで行ったら y座標を340にする、という動きを繰り返します。

これで背景が縦にスクロールするような動きになりました。

Scratchに用意されている背景を使うと、切り替わりがきれいに見えない場合が多いです(背景とクローンの境目がわかってしまう)。

そのため、自分でシームレスに切り替わる背景画像を用意すると、もっときれいにスクロールできます。

 

自分のキャラの動きを作ろう

次に、自分のキャラの動きを作りましょう。

まず、宇宙空間にロケットを配置し、大きさと位置を調整します。

Scratch シューティングゲーム作り方16 Scratch シューティングゲーム作り方37

そして、ロケットを上下左右に動かせるようにします。

左右方向は、ここでは「左右矢印キーが押されたとき」に「x座標を±10ずつ変える」ようにします。

上下方向は、ここでは「上下矢印キーが押されたとき」に「y座標を±10ずつ変える」ようにします。

Scratch シューティングゲーム作り方20 Scratch シューティングゲーム作り方33

 

弾の動きを作ろう

次に、弾(ビーム)の動きを作りましょう。

連続して発射できるよう画面内に複数表示する必要があるため、ここではスぺースキーが押されるたびにクローンを作成するようにしました。

Scratch シューティングゲーム作り方18 Scratch シューティングゲーム作り方35

スペースキーが押されたとき(=クローンされたとき)、ロケットの位置は毎回変わっているため、まず「Rocketshipに行く」で弾を移動させます。

さらに、機体から発射されてY軸の上方向に動くようにし、画面端に触れると自動的に消えるようにしました。

ここまでで、少しシューティングゲームっぽくなってきました。

 

敵キャラの動きを作ろう

次に敵キャラの動きを作りましょう。

敵キャラは画面内にやはり複数現れるため、こうもりのスプライトでクローンを作成するようにします。

ここでは5秒に1体現れるようにしました(出現頻度はお好みで調節してください)。

Scratch シューティングゲーム作り方19 Scratch シューティングゲーム作り方34

現れる場所は画面上方で、乱数を用いてx軸方向にランダムな位置に出現するようにします。

ここでは下方向に動き、弾同様に画面端に触れると自動的に消えるようにしました。

スピードを変えたり、ジグザグに動かすなど、工夫してみましょう。

 

弾が当たったら敵が消えるようにしよう

シューティングゲームになるように、弾(ビーム)が当たったら敵が消えるようにしましょう。

まず、こうもりのスプライトが弾に触れたらクローンが削除されるようにします。

それと同時に弾も消す必要があるため、「げきつい」のメッセージを送ります。

Scratch シューティングゲーム作り方21 Scratch シューティングゲーム作り方32

一方、弾のスプライトでは「げきつい」のメッセージを受け取ったときに、同様にクローンが削除されるようにします。

Scratch シューティングゲーム作り方22 Scratch シューティングゲーム作り方31

これで弾が命中すると敵が消えるようになりました。

効果音をつけると、より撃墜した感じが出ることでしょう。

 

当たったら点数が増えるようにしよう

さらに、スコアを競えるようにするために、弾が当たったら点数が増えるようにしましょう。

まず、変数「てんすう」を作成します。

「てんすう」を作成して、下の画像の左部分のようにチェックを入れると、「てんすう」が表示されるようになります。

ここでは、弾が当たったときに変数「てんすう」が10点ずつ増えるようにしました。

Scratch シューティングゲーム作り方9 Scratch シューティングゲーム作り方42

このとき、開始後に必ず「てんすう」を0に戻すようにします。

そのため、「てんすうを0にする」を旗の下に入れました。

Scratch シューティングゲーム作り方10 Scratch シューティングゲーム作り方38

これで、基本編は完成です。

弾の種類や、敵の種類によって得点を変えるなど、工夫してみてください。

 

Scratchのシューティングゲームの作り方(応用編)

さて、ここまででシューティングゲームの基本的部分を完成させることができました。

より本格的に遊べるゲームにするために、基本編を元に、こちらの動画のゲーム(応用編)を作成してみましょう。

ライフを設定しよう

まず、自分のキャラが敵キャラに当たったときに減る数字、いわゆる「ライフ(=残り機体数)」を設定しましょう。

Scratch シューティングゲーム作り方23 Scratch シューティングゲーム作り方30

変数「ライフ」を作成し、ロケットのスプライトがこうもりに触れるとライフが1ずつ減るようにします。

そして、Game Overの画面を出すために、ライフが1より少なくなったら「ゲームオーバー」というメッセージを送るように設定しておきます。

また、「げきとつ」のメッセージを送り、こうもりのスプライトにてクローンが削除されるようにします(そうしないと、激突し続けることになります)。

Scratch シューティングゲーム作り方24 Scratch シューティングゲーム作り方29

次に「GAME OVER」画面を作成し、ライフが0になったときに表示されるようにしましょう。

Scratch シューティングゲーム作り方25 Scratch シューティングゲーム作り方29

まずはスプライトから「描く」を選択して、「GAME OVER」画面を作ります。

Scratch シューティングゲーム作り方26

ゲームオーバのスプライトは、ゲーム中には表示せず、さきほど送る設定をしたメッセージ「ゲームオーバー」を受け取ったら表示する設定にしておきます。

Scratch シューティングゲーム作り方27 Scratch シューティングゲーム作り方28

 

音をつけてみよう

最後に、よりゲームらしくするために音を付けてみましょう。

  • Beamが発射されるとき
  • こうもりがBeamにあたったとき
  • ロケットがこうもりにあたったとき
  • Game Overになったとき

の音を設定します。

 

Beamが発射されるとき

Beamのスプライトを選択して、左上にある「音」タブを開きます。

すると左下に「音を選ぶ」と言うアイコンがあるのでここをクリックします。

Scratch シューティングゲーム作り方3

今回は「Jump」という音を選びました。

Scratch シューティングゲーム作り方4

Beamのスプライトに、音を鳴らすを追加します。

Scratch シューティングゲーム作り方5 Scratch シューティングゲーム作り方43

 

こうもりがBeamにあたったとき

次に、こうもりがBeamにあたったときの音を設定します。

同じく音を選択してこうもりのスプライトに音を鳴らす、を追加します。

「Teleport2」という音を選んでいます。

Scratch シューティングゲーム作り方6 Scratch シューティングゲーム作り方42

 

ロケットがこうもりにあたったとき

ロケットがこうもりにあたったときの音は、ロケットのスプライトに設定します。

「Pew」という音を選択しました。

Scratch シューティングゲーム作り方7 Scratch シューティングゲーム作り方41

 

GameOverになったとき

GameOverになったときの音は、GameOverのスプライトに設定します。

表示するタイミングで「Lose」という音を鳴らすようにしました。

Scratch シューティングゲーム作り方8 Scratch シューティングゲーム作り方40

これで基本的なシューティングゲームの完成です!

ゲームをアレンジするには

さらに本格的なシューティングゲームにするには、

  • 弾のバリエーションを増やす
  • 機体のクローンを作るなどパワーアップさせる
  • 敵キャラの種類や動き方を変える
  • 大型のボスキャラを作る
  • スクロールの向きやスピードを変える
  • 効果音やBGMをつける
  • 背景を変える
  • CLEARの画面や設定をいれる

など、さまざまなポイントが考えられます。

オリジナルのシューティングゲームを作ってみましょう!

 

他に、アクションゲームの作り方もまとめていますので、こちらも参考にしてください。

アクションゲーム作り方14
Scratchを使った【簡単アクションゲーム】の作り方|横スクロールしてアイテムを取る方法Scratchでの簡単なアクションゲームの作り方についてご紹介しています。シンプルなゲームに比べ、アクションゲームの作成はちょっと難しくなりますが、背景の設定方法やジャンプの仕方、ゴールの設定方法やクリア画面の作り方についてなどをおさえて自分なりのアクションゲームを作ってみましょう。...

 

【塾・教室向け】Scratchをベースにしたオンライン教材

sample_arstudio

アルスクールでは、オンライン教材パッケージ【アルスタジオ】を開発しました。

アルスタジオは、Scratchを徹底的に学びやすくした教材です。

指導者にプログラミング知識がなくても大丈夫!

テキスト教材、レッスン動画、カリキュラム、指導方法のデータなど、レッスンに必要なものはすべてご用意しました。

むらっち
むらっち
シューティングゲーム・タイピングゲームなど、作例をたくさん載せました。
むらっち
むらっち
【オリジナルキャラ】もたくさんあって、楽しく学べますよ。

プログラミング教室運営でつちかった【プログラミング×探究学習】のカリキュラムで、
子ども達のプログラミング力・思考力・創造性を伸ばすことができます。

アルスタジオ>>【教室・塾経営者様向け】オンライン教材パック 詳しくはコチラ

 

プログラミング教室アルスクールでScratchを学ぼう

Scratch シューティングゲーム

キッズプログラミング教室【アルスクール】では、主に、小学生向けにScratchレッスンを行っています。
※現在は、Scratchを学びやすくした教材【アルスタジオ】を使ってレッスンを行っています。

子供たちの興味や好奇心を大切に、Scratchで楽しく学んでいますよ。

アルスクールキッズの作品|シューティングゲーム

アルスクールに通っている子が作ったシューティングゲームを紹介します。

子供たちが自分で考えて作った作品です。

どれも個性的でおもしろいですよ。

 

敵が落ちてくる前に全部やっつけろ!


>>中のコードを見てみる

 

弓矢をよけよう!HPが減っていくよ


>>中のコードを見てみる

 

りんごのビームから逃げろ!


>>中のコードを見てみる

 

他にも、アルスクールに通う子達は、アクションゲーム・対戦ゲーム・クリスマスカードなど、自分の好きな作品をたくさん作っていますよ。
>>アルスクールキッズの作品集はこちら

 

アルスクールのScratchレッスンの学びと成長や、他のプログラミング教室とどうちがうのかについてはこちらの記事をご覧ください

Scratch プログラミング教室(14)
スクラッチを学べるプログラミング教室の選び方|小学生の成長のちがいScratch(スクラッチ)は、プログラミング教室や小学校で、教材としてよく使われています。プログラミングが必修化された影響もあって、スクラッチを学べるプログラミング教室は増えていく一方です。今回は、スクラッチが子供の教材として優れている理由と、プログラミング教室によるちがいについて、詳しく解説していきます。...

 

アルスクールで楽しく学ぼう

プログラミング教室 開業 (11)

キッズプログラミング教室【アルスクールでは、スクラッチのレッスンを行っています。

アルスクールでは、オリジナルゲームを作成したり、電子工作をしたりと、子ども達は主体的に楽しく学んでいます。

ぜひ一度、アルスクールに遊びに来てください。

無料体験レッスン

キッズプログラミング教室【アルスクール】では、自由が丘校・中野校・中野TCS校・恵比寿校・大阪南千里校・福岡西新校・オンライン校で、プログラミングレッスンを行っています。

好きなモノを作り、子どもどうしがお互い刺激し合いながら、プログラミングスキルや非認知能力を伸ばしています。

通常レッスンに参加できる無料体験レッスンは、随時開催しています。

現在、通常11,000円(税込)する入会金が0円になる、新学期キャンペーン実施中

この機会に、一度アルスクールの学びを体験してみませんか。


新学期入会金無料キャンペーン
>> 無料体験レッスンを詳しくみる