スクラッチで簡単シューティングゲームを作る方法|点数・ライフ・背景スクロール
![スクラッチ シューティングゲーム作り方 (24)](https://arspark.jp/contents/wp-content/uploads/2021/12/スクリーンショット-2022-09-27-144859-e1664257830115.jpg)
Scratch(スクラッチ)のシューティングゲームの作り方について紹介します。
「スクラッチでシューティングゲームが作れるの!?」と思う方もいますよね。
実は、スクラッチでは、簡単なものから複雑なものまで、シューティングゲームがたくさん作られています。
そこで、今回は、初心者がシューティングゲームを作るポイントをまとめてみました。
基本編と応用編に分けて、シューティングゲームの作り方を詳しく紹介します。
その前に、まずはシューティングゲームの作品例から紹介します。
シューティングゲーム|スクラッチの作品例
![スクラッチ シューティングゲーム (2)](https://arspark.jp/contents/wp-content/uploads/2022/07/スクラッチ-シューティングゲーム-2-1024x659.png)
スクラッチで作れるシューティングゲームってどんなもの?
シューティングゲームは、飛行機やロケットを操縦し、敵となる飛行機や宇宙船などをビームなどで撃墜するゲームです。
スクラッチで作れるのは、大きく分けて、縦スクロールと横スクロールの2つのタイプ。
どちらのタイプでも、背景の画面を、縦または横に強制スクロールをさせるのが特徴。
強制スクロールのため躍動感があり、ドキドキハラハラのスリルや爽快感が楽しめるのがシューティングゲームの大きな魅力です。
縦スクロールのシューティングゲーム例
縦スクロールのシューティングゲームとしては、次の作品がおすすめです。
メインキャラや敵キャラ、背景、動きなどはまさにシューティングゲームそのもの。
ビームは自動で発射され、対地ミサイルは自分で発射する形式。
シンプルな作りで、初心者でもプレイを楽しめます。
横スクロールのシューティングゲーム例
横スクロールシューティングゲームは、次の作品がおすすめです。
スペースキーで弾を発射するだけでなく、P・B・Rを使って、それぞれパワーモード、レーザーモード、爆弾モードが使えるシューティングゲーム。
敵も様々な形の弾幕を発射してくるなど、本格的な内容になっています。
小学生が作ったシューティングゲーム例
キッズプログラミング教室アルスクールに通っている小学生が作ったシューティングゲームを紹介します。
子供たちが自分で考えて作った作品です。どれも個性的でおもしろいですよ。
カラフルキャラのシューティングゲーム
コインを打ち落とせ
https://youtu.be/rD9R0xUKR7A
簡単シューティングゲームの作り方【スクラッチ】
では、ここからは初心者向けにシューティングゲームの作り方を解説していきます。
こちらの動画のゲームを作っていきます。
今回は、日本人向けの背景やスプライトが多い【アルスタジオ】を使って説明します。
スクラッチと操作はまったく同じなので、スクラッチで作成する場合でも参考にしていただけます。
スプライトの準備|メインキャラ・弾・敵キャラ
まずは、必要なスプライトを準備しましょう。
ここでは、右下の猫マーク(スプライトを選ぶ)から、次の3つを選びました。
- 自分が操縦するキャラ:戦闘機2
- 敵:赤い敵
- 弾:ビームイエロー
![スクラッチ シューティングゲーム作り方 (1)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-1-1024x480.png)
![スクラッチ シューティングゲーム作り方 (1)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-1-1024x480.png)
ここまでで画面は次のようになります。
![スクラッチ シューティングゲーム作り方 (2)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-2-1024x481.png)
![スクラッチ シューティングゲーム作り方 (2)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-2-1024x481.png)
背景の画像
次に、右下の画像マーク(背景を選ぶ)から、「Stars」を選びました。
![スクラッチ シューティングゲーム作り方 (3)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-3-1024x490.jpg)
![スクラッチ シューティングゲーム作り方 (3)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-3-1024x490.jpg)
そうすると、右画面に宇宙の背景がつきました。
![スクラッチ シューティングゲーム作り方 (4)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-4-1024x311.jpg)
![スクラッチ シューティングゲーム作り方 (4)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-4-1024x311.jpg)
メインキャラの動きを作ろう
次に、メインキャラの動きを作っていきます。
![スクラッチ シューティングゲーム作り方 (5)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-5-1024x474.jpg)
![スクラッチ シューティングゲーム作り方 (5)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-5-1024x474.jpg)
- 0度に向ける:戦闘機を上に向ける
- x座標を0、y座標を-120にする:戦闘機のはじめの位置を決める
これで、戦闘機の向きと初めの位置が決まりました。
さらに、戦闘機を上下左右に動かせるようにします。
左右方向は、ここでは「左右矢印キーが押されたとき」に「x座標を±10ずつ変える」ようにします。
上下方向は、ここでは「上下矢印キーが押されたとき」に「y座標を±10ずつ変える」ようにします。
![スクラッチ シューティングゲーム作り方 (6)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-6-1024x439.jpg)
![スクラッチ シューティングゲーム作り方 (6)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-6-1024x439.jpg)
これで、矢印キーで戦闘機が動くようになりました。
弾の動き
次に、弾(ビーム)の動きを作ります。
「スペースキーが押された時に、戦闘機からビームが上に発射される。端に当たるとビームは消える。」というコードを作りました。
![スクラッチ シューティングゲーム作り方 (7)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-7-1024x483.jpg)
![スクラッチ シューティングゲーム作り方 (7)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-7-1024x483.jpg)
ビームイエローは、次のような順番でコードを並べました。
- オリジナルのビームイエローは隠す
- クローンされたら、戦闘機2へ行く
- 0度に向ける(上方向に向ける)
- y座標を10ずつ変えて、上に移動させる
- 端に当たったらクローンを削除する
少しずつシューティングゲームっぽくなってきました。
敵キャラの動き
次は、敵キャラの動きです。
敵キャラは、「画面内に2秒に1回現れ、下の方へ落ちていく」ようにコードを並べました。
![スクラッチ シューティングゲーム作り方 (8)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-8.jpg)
![スクラッチ シューティングゲーム作り方 (8)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-8.jpg)
敵は、次のような順番でコードを並べました。
- オリジナルの敵は隠す
- 2秒に1回クローンを作成
- 現れる場所は画面上方、乱数を用いてx軸方向はランダムな位置に出現する
- 下方向に動き、端に触れると自動的に消える
ここまでで、それぞれのスプライトの基本的動作が完成しました。
ただ、これでは、ビームイエローが敵に当たっても、何も起こりません。
ここからは、「ビームイエローに当たったら敵が消える」というコードを作っていきます。
「弾が当たる ⇒ 敵が消える」を作ろう
シューティングゲームのように、弾(ビーム)が当たったら敵が消えるようにしましょう。
まず、敵のスプライトで、ビームイエローに触れたら、敵のクローンが削除されるようにします。
それと同時に弾も消す必要があるため、「げきつい」のメッセージを送ります。
![スクラッチ シューティングゲーム作り方 (11)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-11.png)
![スクラッチ シューティングゲーム作り方 (11)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-11.png)
一方、ビームイエローのスプライトでは、「げきつい」のメッセージを受け取ったときに、同様にクローンが削除されるようにします。
![スクラッチ シューティングゲーム作り方 (13)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-13.png)
![スクラッチ シューティングゲーム作り方 (13)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-13.png)
ちなみに、ビームイエローには、コスチュームがあと2つあるので、敵に当たったら2と3が現れるようにしました。
![スクラッチ シューティングゲーム作り方 (12)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-12.png)
![スクラッチ シューティングゲーム作り方 (12)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-12.png)
これで弾が命中すると敵が消えるようになりました。
「効果音」をつけよう
ビームイエローを発射したときと、敵に当たったときの効果音をつけていきます。
効果音は、左上の「音」を選び、左下の「スピーカーマーク」で選択することができます。
今回は、レーザー3とばくはつを選びました。
![スクラッチ シューティングゲーム作り方 (15)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-15.png)
![スクラッチ シューティングゲーム作り方 (15)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-15.png)
次に、音ブロックから、「○○の音を鳴らす」を取ってきて、ビームイエローのスプライトで、「ばくはつ」と「レーザーー3」を下の場所に並べます。
![スクラッチ シューティングゲーム作り方 (14)](https://arspark.jp/contents/wp-content/uploads/2021/12/スクラッチ-シューティングゲーム作り方-14.jpg)
![スクラッチ シューティングゲーム作り方 (14)](https://arspark.jp/contents/wp-content/uploads/2021/12/スクラッチ-シューティングゲーム作り方-14.jpg)
これで、効果音をつけることができました。
ここまでで、シューティングゲーム基本編は完成です。
シューティングゲームの応用編①点数・ライフ(HP)
応用編①として、点数やライフの作り方を解説します。
次の2つができるようにブロックを並べていきます。
- ビームイエローが敵にあたったら、「点数」が1ずつ増える
- 戦闘機の「ライフ」を3に設定し、敵に当たったら1ずつ減る、0になったらゲームオーバー
<完成イメージ>
点数の作り方
まず、「変数」⇒「変数を作る」から、「点数」を作成します。
その後、ビームイエローのスプライトの下の箇所に、次のブロックを並べます。
- 「点数を0にする」
- 「もし敵に触れたなら」「点数を1ずつ変える」
![スクラッチ シューティングゲーム作り方 (18)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-18.png)
![スクラッチ シューティングゲーム作り方 (18)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-18.png)
これで、ビームイエローが敵に当たれば、点数が1ずつ増えるようになりました。
旗を押せば、また点数は0にリセットされます。
ライフの作り方|敵の攻撃
次に、戦闘機のライフを設定します。
まず、「変数」⇒「変数を作る」から、「ライフ」を作成。
今回は、最初のライフを3にしました。
戦闘機のスプライトに、「旗が押されたとき」の下に、「ライフを3にする」を並べます。
![スクラッチ シューティングゲーム作り方 (16)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-16.jpg)
![スクラッチ シューティングゲーム作り方 (16)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-16.jpg)
次に、戦闘機が敵に当たったら、ライフが1ずつ減るを作っていきます。
敵のスプライトで、次のように並べました。
- 「もし戦闘機に触れたなら」「ライフを-1ずつ変える」「このクローンを削除する」
- 「もしライフ<1なら」「すべてを止める」
![スクラッチ シューティングゲーム作り方 (17)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-17.jpg)
![スクラッチ シューティングゲーム作り方 (17)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-17.jpg)
ここでは、「ライフを-1ずつ変える」の後に、「このクローンを削除する」の入れ忘れに注意!
そうしないと、一瞬で3つのライフがなくなります。
ゲームオーバーの作り方
次に、ライフが0になった時に、ゲームオーバーが表示されるよう作っていきます。
右下の背景を押して、左側のstarsを複製します。
![スクラッチ シューティングゲーム作り方 (19)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-19.png)
![スクラッチ シューティングゲーム作り方 (19)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-19.png)
背景のタイトルを「ゲームオーバー」に変えました。
そして、背景の画面で、■やTを使って、GAMEOVERを描いていきます。
![スクラッチ シューティングゲーム作り方 (20)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-20.png)
![スクラッチ シューティングゲーム作り方 (20)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-20.png)
その後、敵のスプライトで、「もしライフ<1なら」の後に、「背景をゲームオーバーにする」を並べました。
![スクラッチ シューティングゲーム作り方 (22)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-22.jpg)
![スクラッチ シューティングゲーム作り方 (22)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-22.jpg)
ここまでで、点数・ライフ・ゲームオーバー表示の完成です!
シューティングゲームの応用編②|縦スクロール
さらに、応用編として、背景が縦スクロールするシューティングゲームにします。
【完成イメージ】
では作り方を解説していきます。
画像をスプライトとして使う
縦スクロールする方法はいくつかありますが、今回は、画像をスプライトとして使い、縦に動かす方法を紹介します。
まず、右下の背景からstarsを選び、こちらの真ん中の画像をPCなどに保存します。
![スクラッチ シューティングゲーム作り方 (23)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-23.png)
![スクラッチ シューティングゲーム作り方 (23)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-23.png)
保存した画像をスプライトとして、右下の猫マークからアップロードします。
そのままだと、戦闘機や敵が隠れてしまうので、「旗が押されたとき」「最背面に移動する」を並べます。
![スクラッチ シューティングゲーム作り方 (24)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-24.jpg)
![スクラッチ シューティングゲーム作り方 (24)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-24.jpg)
背景を縦スクロールする
次に、背景のスプライトで、下のようにブロックを並べると、背景を縦スクロールすることができます。
![スクラッチ シューティングゲーム作り方 (26)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-26.jpg)
![スクラッチ シューティングゲーム作り方 (26)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-26.jpg)
こちらのコードでは、背景のスプライトとクローンのスプライトを下に動かします。
- 背景のスプライト:「x座標を0, y座標を0にする」
- クローンのスプライト:「x座標を0, y座標を360にする」
- 背景・クローンともに、「y座標を-5ずつ変える」でゆっくり下に移動
そして、スクラッチの座標はY座標:-180~180なので、背景のスプライトとクローンのスプライトをY座標:-360~360の間で動かします。
![スクラッチ シューティングゲーム作り方 (25)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-25.png)
![スクラッチ シューティングゲーム作り方 (25)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-25.png)
- 「もしy座標<-359なら」「y座標を360にする」で背景とクローンを入れ替える
縦スクロールでも「GAME OVER」を表示する
次に、縦スクロールでも、ライフが0になったら、GAME OVERが表示されるようにします。
それには、ライフが0になったら、背景スクロールが表示されないようにする必要があります。
まず、新しいメッセージで「ゲームオーバー」を作り、敵のスプライトで「もしライフ<1なら」の下に、「ゲームオーバーを送る」を並べます。
![スクラッチ シューティングゲーム作り方 (27)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-27-1024x388.jpg)
![スクラッチ シューティングゲーム作り方 (27)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-27-1024x388.jpg)
その後、背景のスプライトで、「ゲームオーバーを受け取ったとき」「隠す」を並べます。
また、「クローンされたとき」の下に、「もしライフ<1なら」「このクローンを削除する」を並べます。
![スクラッチ シューティングゲーム作り方 (29)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-29.jpg)
![スクラッチ シューティングゲーム作り方 (29)](https://arspark.jp/contents/wp-content/uploads/2022/09/スクラッチ-シューティングゲーム作り方-29.jpg)
これで、GAMEOVERが表示されるようになりました。
以上で、応用編のシューティングゲームも完成です!
さらにアレンジするなら
さらに本格的なシューティングゲームにするには、次のような様々なポイントが考えられます。
- 弾のバリエーションを増やす
- 機体のクローンを作るなどパワーアップさせる
- 敵キャラの種類や動き方を変える
- 大型のボスキャラを作る
- スクロールの向きやスピードを変える
- BGMをつける
- 背景を変える
- CLEARの画面や設定をいれる
オリジナルのシューティングゲームを作ってみましょう!
他に、マリオ風ゲームの作り方もまとめていますので、こちらも参考にしてください。
![](https://arspark.jp/contents/wp-content/uploads/2023/12/名称未設定のデザイン-2-300x171.gif)
![](https://arspark.jp/contents/wp-content/uploads/2023/12/名称未設定のデザイン-2-300x171.gif)
また、便利なブロックの使い方もこちらの記事にまとめていますので、参考にしてください。
スクラッチのゲームを作ろう
オンライン校でキッズプログラミング教室アルスクールのオンライン校では、スクラッチを使ったレッスンを行っています。
子ども達は、自分で考えたゲームを創作するなどして、想像力を思いっきり広げながらプログラミングを学んでいます。
- 小5男子の作品
- ゲームの構成は、一から自分で考えた
- 横スクロールのプラグラミング方法を学びながら、完成までがんばった作品
無料体験レッスンは、随時開催中!アルスクールの学びを体験してみませんか?