スクラッチで簡単シューティングゲームを作る方法|点数・ライフ・背景スクロール

スクラッチ シューティングゲーム作り方 (24)

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

「スクラッチでシューティングゲームが作れるの!?」と思う方もいますよね。

実は、スクラッチでは、簡単なものから複雑なものまで、シューティングゲームがたくさん作られています。

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

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

その前に、まずはシューティングゲームの作品例から紹介します。

目次

シューティングゲーム|スクラッチの作品例

スクラッチ シューティングゲーム (2)

スクラッチで作れるシューティングゲームってどんなもの?

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

スクラッチで作れるのは、大きく分けて、縦スクロール横スクロールの2つのタイプ。

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

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

縦スクロールのシューティングゲーム例

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

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

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

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

シンプルな作りで、初心者でもプレイを楽しめます。

横スクロールのシューティングゲーム例

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

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

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

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

小学生が作ったシューティングゲーム例

キッズプログラミング教室アルスクールに通っている小学生が作ったシューティングゲームを紹介します。

子供たちが自分で考えて作った作品です。どれも個性的でおもしろいですよ。

カラフルキャラのシューティングゲーム

コインを打ち落とせ
https://youtu.be/rD9R0xUKR7A

簡単シューティングゲームの作り方【スクラッチ】

では、ここからは初心者向けにシューティングゲームの作り方を解説していきます。

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

今回は、日本人向けの背景やスプライトが多い【アルスタジオ】を使って説明します。

スクラッチと操作はまったく同じなので、スクラッチで作成する場合でも参考にしていただけます。

スプライトの準備|メインキャラ・弾・敵キャラ

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

ここでは、右下の猫マーク(スプライトを選ぶ)から、次の3つを選びました。

  • 自分が操縦するキャラ:戦闘機2
  • :赤い敵
  • :ビームイエロー
スクラッチ シューティングゲーム作り方 (1)

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

スクラッチ シューティングゲーム作り方 (2)

背景の画像

次に、右下の画像マーク(背景を選ぶ)から、「Stars」を選びました。

スクラッチ シューティングゲーム作り方 (3)

そうすると、右画面に宇宙の背景がつきました。

スクラッチ シューティングゲーム作り方 (4)

メインキャラの動きを作ろう

次に、メインキャラの動きを作っていきます。

スクラッチ シューティングゲーム作り方 (5)
  • 0度に向ける:戦闘機を上に向ける
  • x座標を0、y座標を-120にする:戦闘機のはじめの位置を決める

これで、戦闘機の向きと初めの位置が決まりました。

さらに、戦闘機を上下左右に動かせるようにします。

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

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

スクラッチ シューティングゲーム作り方 (6)

これで、矢印キーで戦闘機が動くようになりました。

弾の動き

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

「スペースキーが押された時に、戦闘機からビームが上に発射される。端に当たるとビームは消える。」というコードを作りました。

スクラッチ シューティングゲーム作り方 (7)

ビームイエローは、次のような順番でコードを並べました。

  • オリジナルのビームイエローは隠す
  • クローンされたら、戦闘機2へ行く
  • 0度に向ける(上方向に向ける)
  • y座標を10ずつ変えて、上に移動させる
  • 端に当たったらクローンを削除する

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

敵キャラの動き

次は、敵キャラの動きです。

敵キャラは、「画面内に2秒に1回現れ、下の方へ落ちていく」ようにコードを並べました。

スクラッチ シューティングゲーム作り方 (8)

敵は、次のような順番でコードを並べました。

  • オリジナルの敵は隠す
  • 2秒に1回クローンを作成
  • 現れる場所は画面上方、乱数を用いてx軸方向はランダムな位置に出現する
  • 下方向に動き、端に触れると自動的に消える

ここまでで、それぞれのスプライトの基本的動作が完成しました。

ただ、これでは、ビームイエローが敵に当たっても、何も起こりません。

ここからは、「ビームイエローに当たったら敵が消える」というコードを作っていきます。

「弾が当たる ⇒ 敵が消える」を作ろう

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

まず、敵のスプライトで、ビームイエローに触れたら、敵のクローンが削除されるようにします。

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

スクラッチ シューティングゲーム作り方 (11)

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

スクラッチ シューティングゲーム作り方 (13)

ちなみに、ビームイエローには、コスチュームがあと2つあるので、敵に当たったら2と3が現れるようにしました。

スクラッチ シューティングゲーム作り方 (12)

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

「効果音」をつけよう

ビームイエローを発射したときと、敵に当たったときの効果音をつけていきます。

効果音は、左上の「音」を選び、左下の「スピーカーマーク」で選択することができます。

今回は、レーザー3ばくはつを選びました。

スクラッチ シューティングゲーム作り方 (15)

次に、音ブロックから、「○○の音を鳴らす」を取ってきて、ビームイエローのスプライトで、「ばくはつ」と「レーザーー3」を下の場所に並べます。

スクラッチ シューティングゲーム作り方 (14)

これで、効果音をつけることができました。

ここまでで、シューティングゲーム基本編は完成です。

シューティングゲームの応用編①点数・ライフ(HP)

応用編①として、点数やライフの作り方を解説します。

次の2つができるようにブロックを並べていきます。

  • ビームイエローが敵にあたったら、「点数」が1ずつ増える
  • 戦闘機の「ライフ」を3に設定し、敵に当たったら1ずつ減る、0になったらゲームオーバー

<完成イメージ>

点数の作り方

まず、「変数」⇒「変数を作る」から、「点数」を作成します。

その後、ビームイエローのスプライトの下の箇所に、次のブロックを並べます。

  • 「点数を0にする」
  • 「もし敵に触れたなら」「点数を1ずつ変える」
スクラッチ シューティングゲーム作り方 (18)

これで、ビームイエローが敵に当たれば、点数が1ずつ増えるようになりました。

旗を押せば、また点数は0にリセットされます。

ライフの作り方|敵の攻撃

次に、戦闘機のライフを設定します。

まず、「変数」⇒「変数を作る」から、「ライフ」を作成。

今回は、最初のライフを3にしました。

戦闘機のスプライトに、「旗が押されたとき」の下に、「ライフを3にする」を並べます。

スクラッチ シューティングゲーム作り方 (16)

次に、戦闘機が敵に当たったら、ライフが1ずつ減るを作っていきます。

敵のスプライトで、次のように並べました。

  • 「もし戦闘機に触れたなら」「ライフを-1ずつ変える」「このクローンを削除する」
  • 「もしライフ<1なら」「すべてを止める」
スクラッチ シューティングゲーム作り方 (17)

ここでは、「ライフを-1ずつ変える」の後に、「このクローンを削除する」の入れ忘れに注意!
そうしないと、一瞬で3つのライフがなくなります。

ゲームオーバーの作り方

次に、ライフが0になった時に、ゲームオーバーが表示されるよう作っていきます。

右下の背景を押して、左側のstarsを複製します。

スクラッチ シューティングゲーム作り方 (19)

背景のタイトルを「ゲームオーバー」に変えました。

そして、背景の画面で、■やTを使って、GAMEOVERを描いていきます。

スクラッチ シューティングゲーム作り方 (20)

その後、敵のスプライトで、「もしライフ<1なら」の後に、「背景をゲームオーバーにする」を並べました。

スクラッチ シューティングゲーム作り方 (22)

ここまでで、点数・ライフ・ゲームオーバー表示の完成です!

シューティングゲームの応用編②|縦スクロール

さらに、応用編として、背景が縦スクロールするシューティングゲームにします。

【完成イメージ】

では作り方を解説していきます。

画像をスプライトとして使う

縦スクロールする方法はいくつかありますが、今回は、画像をスプライトとして使い、縦に動かす方法を紹介します。

まず、右下の背景からstarsを選び、こちらの真ん中の画像をPCなどに保存します。

スクラッチ シューティングゲーム作り方 (23)

保存した画像をスプライトとして、右下の猫マークからアップロードします。

そのままだと、戦闘機や敵が隠れてしまうので、「旗が押されたとき」「最背面に移動する」を並べます。

スクラッチ シューティングゲーム作り方 (24)

背景を縦スクロールする

次に、背景のスプライトで、下のようにブロックを並べると、背景を縦スクロールすることができます。

スクラッチ シューティングゲーム作り方 (26)

こちらのコードでは、背景のスプライトクローンのスプライトを下に動かします。

  • 背景のスプライト:「x座標を0, y座標を0にする」
  • クローンのスプライト:「x座標を0, y座標を360にする」
  • 背景・クローンともに、「y座標を-5ずつ変える」でゆっくり下に移動

そして、スクラッチの座標はY座標:-180~180なので、背景のスプライトとクローンのスプライトをY座標:-360~360の間で動かします。

スクラッチ シューティングゲーム作り方 (25)
  • 「もしy座標<-359なら」「y座標を360にする」で背景とクローンを入れ替える

縦スクロールでも「GAME OVER」を表示する

次に、縦スクロールでも、ライフが0になったら、GAME OVERが表示されるようにします。

それには、ライフが0になったら、背景スクロールが表示されないようにする必要があります。

まず、新しいメッセージで「ゲームオーバー」を作り、敵のスプライトで「もしライフ<1なら」の下に、「ゲームオーバーを送る」を並べます。

スクラッチ シューティングゲーム作り方 (27)

その後、背景のスプライトで、「ゲームオーバーを受け取ったとき」「隠す」を並べます。

また、「クローンされたとき」の下に、「もしライフ<1なら」「このクローンを削除する」を並べます。

スクラッチ シューティングゲーム作り方 (29)

これで、GAMEOVERが表示されるようになりました。

以上で、応用編のシューティングゲームも完成です!

さらにアレンジするなら

さらに本格的なシューティングゲームにするには、次のような様々なポイントが考えられます。

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

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

他に、マリオ風ゲームの作り方もまとめていますので、こちらも参考にしてください。

あわせて読みたい
【スクラッチ】簡単マリオ風ゲームの作り方 【スクラッチ】簡単マリオ風ゲームの作り方 【どんなゲームか見てみよう】 左右矢印キー:左右に動く 上矢印キー:ジャンプ 敵にあたる:ライフがへる・スタート位置に...

また、便利なブロックの使い方もこちらの記事にまとめていますので、参考にしてください。

オンライン校で
スクラッチのゲームを作ろう

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

子ども達は、自分で考えたゲームを創作するなどして、想像力を思いっきり広げながらプログラミングを学んでいます。

  • 小5男子の作品
  • ゲームの構成は、一から自分で考えた
  • 横スクロールのプラグラミング方法を学びながら、完成までがんばった作品

無料体験レッスンは、随時開催中!アルスクールの学びを体験してみませんか?

目次