【Scratchで簡単なゲーム作成編③】スプライトのコピーとゲーム機能の拡張


※ 当ページには【広告/PR】を含む場合があります。
2020/09/13
【Scratchで簡単なゲーム作成編②】スコアボードの作成と得点の表示
【Scratchで簡単なゲーム作成編④】条件を満たすとアイテムの種類を変化する機能をつける
前回 | Scratchで簡単なゲーム作成編②~スコアボードの作成と得点の表示 に引き続きゲームとしての機能を盛り込んでいきます。

合同会社タコスキングダム|蛸壺の技術ブログ
【Scratchで簡単なゲーム作成編②】スコアボードの作成と得点の表示

Scratchでスコアボードの作り方を中心に、ゲームとしての機能を盛り込んでいきます。



今回の内容までの完成品サンプルは以下のようになります。 この記事では、エサ置き場の増やし方(スプライトのコピー追加)のテクニックを中心に解説していきます。


合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選

エサ置き場をコピーで追加する

前回までの作品/taco_swish_2 からプログラミングの修正をスタートしましょう。
このプログラムでは、たこのエサ置き場が1つだけでしたので、ゲームとしてはまだまだつまらないため、まずはもう1つエサ置き場を追加してみます。
すでに作成したスプライトをコピーして利用する場合、コピーしたいスプライトの上にマウスをもってきて右クリックすると、
[複製] メニューが出ますのでこれを選ぶとスプライトがコピーされます。
今回は、
おきばしょ という名前のエサ置き場であるスプライトをコピーしてみます。

合同会社タコスキングダム|蛸壺の技術ブログ


複製されると、スプライトパレットに
おきばしょ2 という名前でコピーされました。

合同会社タコスキングダム|蛸壺の技術ブログ


また、区別をつきやすくするため、オリジナルの
おきばしょおきばしょ1 という名前に変えておきます。

合同会社タコスキングダム|蛸壺の技術ブログ


残念ながら単にスプライトをコピーしただけでは、プログラムは正しく動かないので、手直しが必要です。 以降では、コピーした後のコーディングの手直しのポイントを説明していきます。


合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選

変数をみなおす



スプライトをコピーした場合、オリジナルのスプライトが持っていた、ある状態を記憶しておく変数、
状態変数 を探して、今のゲームの状態を正しく保持しているかを確認する必要があります。
まず、元の
おきばしょ スプライトでは、 たべもの? という名前の変数で皿に乗せている食べ物を記録していましたが、皿が増えたため、もう1つの変数では、複数の食べ物を記録出来なさそうです。
ということで、
たべもの? の状態変数を別の状態変数になおす必要があります。
ここでは
おきばしょ1 にしたので、 たべもの1? に変数の名前を変更します。

合同会社タコスキングダム|蛸壺の技術ブログ


またコピーした側の
おきばしょ2 の方は、新しく たべもの2? という名前で変数を追加しておきましょう。

合同会社タコスキングダム|蛸壺の技術ブログ

合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選

コードの修正



変数を入れ替えたので、各スプライトのブロックコードも修正していきます。

スプライト・おきばしょ1



初期化のブロックである
🚩が押されたとき に、 たべもの1? をゲーム最初に からっぽ にするブロックを追加しておきましょう。

合同会社タコスキングダム|蛸壺の技術ブログ


スプライトをクリックした際の処理も以下のように変更します。 たべもの1に何か食べ物が記録されていたら、クリックした後
からっぽ にしています。

合同会社タコスキングダム|蛸壺の技術ブログ
たこおきばしょ1 に触ったときのイベント・ さわった1 も、どこの場所の食べ物が食べられたか分かるように、 たべた イベントから たべた1 イベントに名前を変えておきましょう。

合同会社タコスキングダム|蛸壺の技術ブログ

スプライト・おきばしょ2



先程の
おきばしょ1 のスプライトで行った修正の繰り返しとなります。 以下の図のように番号付けが少々変わっているだけなので説明は省きます。

合同会社タコスキングダム|蛸壺の技術ブログ


赤く囲ったところが主な変更点です。
メッセージイベントも、
さわった2たべもの2たべた2 が新しく追加になっています。

スプライト・たこ



たこの動きも修正します。
触ったエサ置き場ごとに、
さわった1さわった2 イベントメッセージが分かれるようにしています。

合同会社タコスキングダム|蛸壺の技術ブログ

スプライト・りんごとタコ(食べ物)



こちらは食べ物選択画面でクリックされたときに、食べ物をどちらのエサ置き場におけばよいのかを決める修正をおこないます。
りんごのスプライトの修正:

合同会社タコスキングダム|蛸壺の技術ブログ


タコのスプライトの修正:

合同会社タコスキングダム|蛸壺の技術ブログ

スプライト・スコアボード



最後に、得点を計算する
スコアボード のコードの修正です。
たこがどちらのエサ置き場に触れて、どの食べ物をたべたかで点数を付けられるように修正します。

合同会社タコスキングダム|蛸壺の技術ブログ


以上の修正を行うと、エサ置き場が2つに増やすことができました。

合同会社タコスキングダム|蛸壺の技術ブログ

合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選

エサ置き場をさらに追加する



スプライトをコピーして増やしていくコツを掴めばあとはそれを繰り返していくことで、よりゲーム性を拡張していくことができます。

合同会社タコスキングダム|蛸壺の技術ブログ


エサ置き場をもう少し増やして、どう変わるかは自分の手でやってみてください。


合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選

まとめ



エサ置き場を増やしてみましたが、まだまだゲームとしては物足りないところではあります。
次回はアイテムの種類をスコアに応じて増やしていくような機能を追加してみようと思います。