スプリンギンマガジン
【入門教材#3】 トレジャーゲームをつくってみよう
「コロコロゲーム」のつくり方では、基本的な属性のつけ方を学び、「シューティングゲーム」のつくり方では、属性のついたアイテム同士を組み合わせてイベントを発生させる方法を学びました。
今回は、これまでに学んだことを活かして「トレジャーゲーム」をつくってみましょう。
ここでいうトレジャーゲームは、主人公が敵や障害をよけながら目標のものを集めてクリアするゲームを指します。
・主人公を動かすしくみ
・目標のものを集めるしくみ
・敵や障害を配置・動かすしくみ
といった、大きく3つのしくみをつくっていきます。
これまで学んできたことを活かしながら、ストーリー性の高いゲームをプログラミングできるようになることで、より人にあそんでもらいやすい作品づくりをすることができるようになります。
↑こちらの記事は、動画版もございます。実際の操作を動画で確認したい方は、ぜひこちらをご覧ください!
①ワークに使用するアイテムを描く
これまで同様、ワークで使うアイテムを準備します。
主人公や敵、目標などは自分の好きなものを描いて大丈夫です。何を描いていいかわからない人は、動画にあるように主人公を「宇宙人」、敵を「紫の雲」、目標を「星」として描いてみましょう。
▼使用するアイテム
・主人公(宇宙人)
・敵(紫の雲)
・目標(星)
・矢印
・床
・ジャンプボタン
・ゲームクリアの文字
・ゲームオーバーの文字
・白い丸(隠しアイテム用)
②主人公(宇宙人)のコントローラーをつくる
次に、作成したアイテムをワーク作成画面に配置していきます。
画面下部には、主人公を動かすしくみとしてコントローラーをつくります。左右に向く矢印とジャンプボタンを配置します。矢印の配置は「シューティングゲーム」のつくり方でもあった反転を使用して配置すると便利です。
まずは、矢印で宇宙人を動かす設定をつけます。
左向きの矢印をタップしメニューを開きます。触れたときに矢印が移動しないように、まずはピン止めをします。次に、属性の中の動力(左)を設定しましょう。動力は「シューティングゲーム」をつくる中でも使用した属性です。動力の対象の宇宙人を選択します。
これで宇宙人を左に動かす矢印の設定は完了です。
同様に右の矢印もピン止めしたのちに、属性の動力(右)を設定しましょう。以上で、左右に宇宙人を動かすボタンができました。
次に、ジャンプボタンの設定をします。
ジャンプボタンの設定は「コロコロゲーム」のつくり方にもありましたね。まずはジャンプボタンをピン止めし、属性のジャンプをタップします。対象は宇宙人に設定します。
ジャンプボタンの設定も完了しました。コントローラー上にある床が動かないようにピン止めも忘れずにしておきましょう。
これでコントローラーは完成……ではありません!
「コロコロゲーム」のつくり方を思い出しましょう。
ジャンプをさせるためには重力の設定が必要になりますね。このワークにはまだ重力が設定されていないので、このままだとジャンプができない状態になります。このゲームの世界に重力をつけましょう。
ここまででコントローラーが完成しました!
再生ボタンを押して、宇宙人が左右に動くか、ジャンプできるかなど試してみましょう
③主人公(宇宙人)が集める目標(星)アイテムを設定する
次は目標のものをあつめるしくみをつくります。目標アイテムを星とし、宇宙人が星をあつめていく設定をつくります。
また、あつめていることがわかるように、宇宙人が星にふれるとその星は消えるしくみをつくります。
まずは、目標アイテムとなる星を配置します。
星は宇宙人にふれると消える設定なので、属性の消滅を押します。
また、この世界には重力が設定されているので、このままだと星が浮かばずに床に落ちてしまいます。それを防ぐために属性の物理無効を設定しましょう。物理無効を設定することで、星には重力が影響しなくなります。
次に、星が宇宙人にふれると消える設定をつけます。
先ほど星に消滅の属性を設定しましたが、このままだと星をタップしないと星は消えません。宇宙人と星にぶつかったら消えるという関係性をつくる必要があります。
ここで、属性の接触をつかいます。消滅を発動するために接触をつかうのは「シューティングゲーム」でもやりましたね。接触した対象がアイテムのイベントを発生させるので、今回は宇宙人に接触を設定し、対象を星にしましょう。
これで、宇宙人が星をあつめる(ふれたら消える)設定ができました。
④目標アイテム(星)を増やしたり動かしたりする
次は、星を増やしてみましょう。ここでコピーをつかいます。
コピーも「シューティングゲーム」でやったことのある方法です。コピーでできた星は属性も引き継いでいるので、同様に宇宙人にふれたら消えます。
一番上に増やした星には、ゲームの難易度をさらに上げるために動きをつけましょう。
「シューティングゲーム」では敵に属性の移動&オートを設定することで自動的な動きをつけていましたが、今回はさらにオートの隣にあるループをつけることで、動きを繰り返させることができます。
これでゲームの開始と同時に繰り返す動く星の設定ができました。
⑤床を増やす
次に、ゲームをよりおもしろくするために床を増やします。
床を増やすのにもコピーを利用します。絶妙な位置に置くことで、ゲームが何倍にもおもしろくなるので、配置するときには細かい部分も気にしてみましょう。
⑥敵(紫の雲)を動かして邪魔をさせる
ただ星を集めるだけでなく、敵や障害を配置・動かすしくみ=行く手を阻む敵をつくってゲームの難易度をあげましょう。今回は敵として紫の雲を配置します。
一番上の動く星の下に紫の雲を配置します。
動く星と同様、紫の雲も自動で動かしたいので④で星に設定したように、物理無効&移動&オート&ループをつけましょう。
これで紫の雲の動きを設定しました。今度は、敵である紫の雲に宇宙人が当たると宇宙人が消える設定をします。
当たると消えるしくみは③でやりましたね。③では星に宇宙人が当たると星が消える設定をしました。
まずは紫の雲をタップし、メニューを開きます。属性の接触を選択し、対象となる宇宙人を選択しましょう。これで、紫の雲に宇宙人が当たると何かが起こる、という準備ができました。
次は宇宙人が消える設定をつけます。宇宙人をタップし、属性の消滅を押しましょう。
これで、宇宙人が自動で動き回る紫の雲に当たると消える設定が完了しました。
⑦主人公(宇宙人)が目標アイテム(星)をすべて取ったらゲームクリア画面を出す
ゲームとして完成させるためにはゲームクリア&ゲームオーバー画面が必要になります。最後はこの画面を表示するしくみをつくっていきましょう。
ゲームクリア・ゲームオーバーの文字アイテムはすでに準備しているので、まずは画面を作成します。右上の+ボタンで新しく画面を作成し、文字を配置してください。
まずは、ゲームクリアの画面を出す設定です。今回のトレジャーゲームのゲームクリアの条件は「星をすべて集めること=画面から星がなくなる」です。この条件をチェックするアイテムをつくります。
ここでつかうのがアイテムで準備していた白い丸です。これが隠しアイテムになります。隠しアイテムはゲーム自体では見せる必要がないので、背景と同じ色でつくっています。
この白い丸を画面矢印横に配置し、メニューを開きます。
ゲームクリアの画面に変えるためのアイテムなので、属性シーンチェンジを押します。選択画面でゲームクリアの画面を選びましょう。
これで、この白い丸に何かが起こるとゲームクリアの画面に切り替わる設定ができました。
間違ってこの白い丸にあそぶ人が触らないようにするため、ピン止め&物理無効&タッチトリガー無効&タッチ移動無効も設定しておきましょう。
次に、画面上の星が消えたら白い丸にイベントを起こす設定をつけます。
白い丸をタップし、属性フラグをつけてください。
フラグの対象は画面上の星です。こうすることで、星が消えると白い丸に対しイベントが起こり、シーンチェンジを起こすことができます。
これで、宇宙人が星をすべて集めるとゲームクリアの画面を表示させることができました。
再生ボタンを押して、実際に表示されるか確認してみましょう。
⑧敵(紫の雲)に当たったらゲームオーバーの画面を出す
次に、ゲームオーバーの画面を表示する設定を行います。
今回のトレジャーゲームのゲームオーバーの条件は「紫の雲に当たって宇宙人が消えること」です。ゲームクリア画面の表示と同様、この条件をチェックするアイテムをつくります。
まずは、⑦と同じように隠しアイテムの白い丸を配置します。
属性シーンチェンジを設定し、今回はゲームオーバーの画面を選択して設定しましょう。
この白い丸も間違って触られないように、ピン止め&物理無効&タッチトリガー無効&タッチ移動無効を設定しておきます。
そして、宇宙人が消えたら白い丸にイベントを起こす設定をつけます。
白い丸をタップし、属性フラグをつけてください。
フラグの対象は宇宙人です。こうすることで、宇宙人が消えると白い丸に対しイベントが起こり、シーンチェンジを起こすことができます。
宇宙人が消えるとゲームオーバーの画面を表示させる設定ができました。
再生ボタンを押して、実際に表示されるか確認してみましょう。
これでトレジャーゲームが完成しました!
基本の形ができたので、ここから敵を増やしたり、前後に物語をつけたりすることでさらにおもしろいゲームをつくることができます。
ぜひ、自分の好きな主人公や敵をつかったトレジャーゲームをつくってみてください!