スクラッチ

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

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

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

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

 

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

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

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

アルスパーク_小
>>スクラッチをもっと楽しんで学べる!デジタル学童【アルスパーク】

 

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

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

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

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

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

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

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

 

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

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

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

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

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

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

 

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

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

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

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

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

 

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

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

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

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

 

コインを打ち落とせ

 

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

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

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

 

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

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

アルスパーク_小
>>スクラッチをもっと楽しんで学べる!デジタル学童【アルスパーク】

 

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

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

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

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

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

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

 

背景の画像

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

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

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

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

 

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

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

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

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

 

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

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

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

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

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

弾の動き

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

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

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

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

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

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

 

敵キャラの動き

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

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

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

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

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

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

 

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

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

 

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

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

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

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

スクラッチ シューティングゲーム作り方 (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の画面や設定をいれる

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

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

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

スクラッチ マリオ 作り方 (37)
【スクラッチ】簡単マリオ風ゲームの作り方|横スクロールする方法Scratch(スクラッチ)を使った簡単マリオ風ゲームの作り方について紹介します。マリオ風ゲームとは、スーパーマリオブラザーズのような敵を避けながら、コインなどを獲得し、面を越していくゲームです。難しいイメージがあると思いますが、スクラッチなら小学生でも作れます。「1面だけ作る」「横移動やジャンプをして、アイテムを取ってみる」など、簡単なゲームから作り始めるといいですよ。 ...

 

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

スクラッチ 変数  作り方(5)
スクラッチの【変数】の使い方|HPを減らすゲームを紹介スクラッチで「変数」を使う方法を紹介します。変数を使えば、ゲームの中でHPを表示させたり、取ったコインの数を表示させたりできます。今回は、変数を使ったゲームの作り方を紹介しながら解説していきます。...
スクラッチ 乱数(12)
スクラッチの【乱数】でキャラをランダムに動かす方法スクラッチの乱数ブロックは、スクラッチでゲームを作りたい時にとても便利なブロックです。そこで、今回は次の3つの例を紹介します。①サイコロの目がランダムに出現する②キャラをランダムに動かす③雷をランダムに落とす...
スクラッチ メッセージ(9)
スクラッチの【メッセージ】を使う方法|ジャンケンゲームで解説しますスクラッチの「メッセージ」の使い方を紹介します。メッセージを使うと、複数のスプライト(キャラクター)や背景に、合図を送ることができます。そして、その合図をきっかけに、別の複数のスプライトや背景にも命令することができるようになります。...
スクラッチ クローン (13)
スクラッチでクローンを作るには|増やす方法・削除する方法スクラッチで【クローン】ブロックの使い方について紹介します。【クローンされたとき】【自分自身のクローンをつくる】【このクローンを削除する】の3つのブロックについて使い方を詳しく解説していきます。...

 

アルスパーク

オンラインでデジタルを楽しめる、【デジタル学童アルスパーク】をスタートしました!

特徴は大きく2つです。

  1. 楽しく学べるオリジナルプログラミング教材

    Scratchを小学生でも学びやすくしたオリジナル教材が使い放題!レッスン動画や、遊んで学べる作品例がたっぷり入っていて、オリジナルキャラも充実しています。
  2. サークルタイム

    プログラミング教室の先生と、Scratchでキャラを動かしたり、マイクラでマルチプレイをしたり、デジタルの世界で楽しく遊びます。
アルスパークサークルタイム

対象学年は小2~中3で、価格は1,980円/月です。

プログラミング教室の先生がサポートするので、プログラミングやデジタルデバイスに興味をもち始めたお子さんでも気軽に始められます。

今なら、先着100名様で初月50%OFF

デジタルの世界で、安全・安心に思いっきり楽しんでみませんか。


>>【デジタル学童アルスパーク】 詳しくはコチラ