Scratchから始めるシューティングゲームの作り方⑨〜オープニング&エンディング画面・複数の攻略ステージを作る
※ 当ページには【広告/PR】を含む場合があります。
2022/09/26

これまで連載記事として紹介してきた
今回の内容では、まだ実装していなかった
なお前回までに仕上げたScratchプロジェクトを元に、ブロックコードを修正しながら説明していきます。
オープニング画面を作る
まずはオープニング画面の追加方法から見ていきましょう。
以前、別のScratchアプリを作ったときの内容で、同じようにオープニング画面を追加したときがありました。
復習になりますが、この方法で今回のScratchシューティングゲームにもオープニング画面を追加してみます。
まずは
背景

これまでのシューティングゲームでは、
🚩
まず
背景
先にゲームスタートをするためのイベント・
「ステージ1」

背景はゲームスタート時のみに表示され、ステージが開始されると消える必要があります。
Scratchの背景は基本的に非表示の選択が出来ないので、非表示にする代わりに

では新しくクリックするボタンを作るために、
[スタート]

この
[スタート]

🏳
またこの
[スタート]
ステージ1
この
ステージ1
例えば、
[プレーヤー]
🏳
🏳
ステージ1

ここでは、他のスプライトの初期化の具体的な分離に関しては省略します。
方針として、変数の初期値などはプログラム開始時に与えておいたほうがロード時間を短縮する意味で好ましく、実際のスプライトやクローンの表示や処理はイベントブロックへ置くようにしましょう。
オープニング画面が問題なく追加できれば、以下のように、
「スタート」

エンディング画面&ゲームオーバー画面を作る
次に、エンディング画面もしくはゲームオーバー画面を追加していきましょう。
これも、以前のブログ記事で同様の内容を説明していました。
こちらも同じように、ゲーム終了画面を盛り込んでみようと思います。
まずは新しいイベントとして、

次に、
[背景]

背景のブロックコードには追加で以下のようなブロックを追加し、イベントで背景が切り替わるようにしておきます。

ゲームオーバーについては、
[ライフ]
これまで
[ライフ]
ゲームオーバー

これで、ライフが尽きたときに、ゲームオーバー画面へ移った後で、プログラムが終了するようになります。
エンディング画面も同じ要領で、クリア条件を担当している
[アイテム]
[すべてを止める]
エンディング

問題なければ、ライフがなくなった時と、ボスを撃破した時に、それぞれ終了に応じた画面へ切り替えが行われます。
新しく攻略ステージを追加する
これまで1ステージだけでしたが、新たに別のステージを追加する方法を考えてみます。
なお以前、同じような試みとして別のScratchゲームでも複数のステージ化を題材に記事に取り上げていました。
今回もそちらで説明した内容と考え方はほとんど同じで、各ステージの切り替えには、
まずなんと言っても、追加する新しい攻略ステージが必要になります。
これまで説明してきた内容の総まとめのような話になりますが、2番目の攻略をダイジェストで作ってみます。
新しいステージを作成する
作り方の詳細はこれまで説明してきた各ブロク記事を良く読んでいただくとして、新しいステージを追加するポイントだけをまとめてみます。
長い背景の分割方法
新しい攻略ステージ用に、Scratchゲームの横に長くスクロールする背景を用意します。
新しいステージを追加するやり方としては、ステージ1として使った
[背景]
[背景2]

この
[背景2]
次いでステージ2への切り替えフラグ用に、
ステージ2

この
ステージ2
[背景2]
[ステージ2]を受け取ったとき
また、現在のステージの番号を記録しておくグローバル変数・
「ステージ」

このグローバル変数に現在のステージ数を残しておくことで、条件分岐処理が必要になった場合に便利です。

基本的にステージを追加する場合、
[背景]
ステージの敵を追加する
ステージの背景を新しくしたので、そこに登場する敵も新しくしておきましょう。
スクロールするが出来たら、出現ポイントを定義しているリストに、そのステージに出現させる敵を登録します。
なお、Scratchゲームで敵のバリエーションの増やし方に関しては以下の記事で取り上げていました。
このScratchゲームでは、敵のパターンを固定の番号で登録することで、それぞれのシーンの出現ポイントで呼び出して利用していました。
ステージ1で既に敵の番号を「0〜6」(ボスは6)まで利用していましたので、ステージ2で利用する敵は「7〜」から番号を登録するようにします。
ここでは、敵の追加の詳細は省略しますが、ご自分の手で
[敵]
[敵2]

新しく動きを考えてみたり、新しいコスチュームを追加してみるのも面白いでしょう。
ステージ2用に新しい敵を登録したら、
[背景2]
例えば、フィールドの敵を
7〜10

ドロップアイテムの種類も増やしても面白いのですが、アイテムの増やし方も敵を追加する方法と全く同じですので、ここではステージ1と同じアイテムを再利用します。
ステージボスを追加する
ステージ終わりのボスを作成する方法は次の記事で解説していました。
ステージ2の最後に登場させるボスは、ステージ1のボス・
[ボス1]
[ボス2]

複製した
[ボス2]
ボスを追加する上で重要になるのは、
ステージクリアアイテム
例えば、ステージ2のクリアアイテムを番号
「6」
[アイテム]
[アイテム]
ステージ2
エンディング

これで
[ボス2]

また
[背景2]
ボス2「11」
クリアアイテム「6」

新しいステージを追加するためのスプライトコードの微調整
最後にステージ2の追加したことによる細かい仕上げの作業を行います。
先程までで
ステージ2
ステージ1
ここらへんはご自身のプログラミングによって事情は様々ですので、全てのスプライトや背景のブロックコードを点検し、問題があれば全て調整していきます。
細かい手直しですので、全ては取り上げませんが、ステージを増やしたことで、例えば今回の
[プレーヤー]

これまでは攻略ステージを作っていなかったので、スプライトの初期化は
🏳が押されたとき
まとめ
以上、今回のScratchシューティングゲームの改造内容をひとまとめにしたものは以下のようになります。
※たまに背景画像が表示されないなど、Scratchアプリ特有のゲーム中の動作が不安定なことがあります。 そんなときはお手数ですが、一旦プログラムをストップして、もう一度スタートしてみてください。
さて、Scratchシューティングゲームの大まかな作成手順は、大体この記事をもってほぼ終了です。
次回はこれまでで解説の都合上、細かく取り上げきれなかったちょっとした改良点を紹介する内容でこの連載記事を一旦締めたいと思います。
よろしければ最後までお付き合いください。