Scratch(スクラッチ)で場面変更するゲームをつくろう・2

Scratch(スクラッチ)
スポンサーリンク

第2ステージをつくろう

第2ステージは、車を運転しながら、道に落ちている爆弾をドリフトで跳ね飛ばすというゲームです。

ドリフトせずに爆弾にぶつかってしまうとゲームオーバーです。

変数を作る

まず、「ゲーム終了判定」「スコア」という変数を作ります。

「ゲーム終了判定」は、ゲーム開始時は「0」で、車が爆弾にぶつかったら「1」になり、ゲームオーバーにします。

「スコア」は、ゲーム開始時は「0」で、爆弾をドリフトで跳ね飛ばすと「1」ずつ増え、スコアが「10」になったらゲームクリアです。

「ステージ」のスクリプトエリアで、「ゲーム終了判定」「スコア」変数を「0」にして初期化します

車のコスチュームを追加する

車のスプライトに、上から見た車の絵を追加します。

ステージ1で追加したコスチュームと同じ順番になるように、青、ピンク、黃、黒、緑、赤の順番で登録します。

コスチューム名は、それぞれ 7、8、9、10、11、12 と半角数字で名前をつけておきます

スクリプトを書く

コスチューム名に半角数字で名前をつけたので、例えば赤い車だったらコスチューム番号は「6」「12」になります。(上図参照)

そのため、ステージ1で選んだ車のコスチューム番号+6が、ステージ2で表示するコスチュームになります。

「ゲーム終了判定」「1」になるか、または「スコア」「10」になるまでゲームは続くので、その間、  が押されたら車の位置を動かせるようにします。

背景画像のスプライトを作る

「ステージ2」という新しいスプライトを作り、背景画像を登録します。

ステージではなくスプライトとして登録するのは、クローンを使って永久ループする背景にするためです。(ステージではクローンを使えないので、ループさせることが出来ません)

スクリプトを書く

1枚目の画像を「x座標0、y座標0」にして、画面の中央に置き、クローンで作った2枚目の画像を「x座標0、y座標340」に置きます。

自分自身もクローンも、同じ速度(y座標を-10ずつ)で移動して、y座標が-340まで行ったら y座標を340にする、という動きを繰り返して、背景画像をループさせます。

「ゲーム終了判定」「1」になるか、または「スコア」「10」になったら画面から消します。

ステージに背景画像を追加する

ゲームが終了した時、「ステージ2」スプライトの背景画像は消えるため、「ステージ2」スプライトと同じ背景画像を「ステージ」にも追加しておきます。

ステージに音を追加する

ゲーム中に鳴らすBGMを設定します。

ライブラリーから「drive around」を選択して、ステージの「音」に登録します。

ステージのスクリプトを書く

旗がクリックされたときは背景を「ステージ1」にして、「ステージ2へ」のメッセージを受け取ったら背景を「ステージ2」にします。

そして、「drive around」をずっと鳴らします。

爆弾のスプライトを作る

爆弾のスプライトを作ります。

スクリプトを書く

爆弾は実体を隠し、クローンを画面上に表示します。

「スコア」「10」未満で、かつ「ゲーム終了判定」「0」のあいだ、爆弾のクローンが発生し続けます。

そして、「スコア」「10」になったら「ステージ3へ」というメッセージを送って、このスクリプトを停止します。

クローンされたときは、画面のいちばん上から「y座標を-10ずつの速さ」で移動し、いちばん下まで来たら、このクローンを削除します。

そして、車に触れたら「ゲーム終了判定」「1」にして「ゲームオーバー」というメッセージを送ります。

ドリフトで爆弾を跳ね飛ばせるようにする

今の状態ではまだ、車が爆弾に触れたらゲームオーバーとなるだけなので、車がドリフト(回転)して爆弾を跳ね飛ばせるようにします。

車のスクリプトを追加する

スペース が押されたら、キキキーッ!というドリフト音を鳴らしながら、爆弾が車より左側にあったら時計回りにまわり、右側にあったら反時計回りに回るようにします。

爆弾のx座標はx座標(爆弾)で調べたくなりますが、x座標(爆弾)で調べられるのは爆弾のスプライトの実体(隠している)なので、ここでは爆弾のクローンのx座標を調べなければなりません。

そこで、「クローン爆弾のx座標」という変数を作って、そこに爆弾のクローンのx座標を格納するようにします。

爆弾のスクリプトを追加する

まず旗がクリックされたときに「クローン爆弾のx座標」「0」にしておきます。

そして、クローンされたときに「クローン爆弾のx座標」変数にx座標を格納します。

もし車の向きが90度ではない(つまり、車が回転している最中)なら、スコアを「1」増やして、爆弾が跳ね返るようにします。

跳ね返る動きは「定義」にまとめました。

(スクリプトエリアの「その他」「ブロックを作る」で、新しい定義を作ることが出来ます。)

ここで定義した「跳ね返る」の動きは、もし爆弾が車より右側にあるなら左上に飛んでいき、もし爆弾が車より左側にあるなら右上に飛んでいき、画面の端まで行ったら消える、というものです。

もしよかったら、Scratchスクラッチのサイトで実際に遊んでみてください。

 

さて、次回は第3ステージを作ります。いよいよエンディングです!

 

 

おすすめのScratchスクラッチ関連書籍
とにかく丁寧でとってもわかりやすい! 初心者に一番のおすすめ本。こどもへの教え方のアドバイスまで載っています。

文字が多いのでとっつきにくいかもしれないけど、内容がすごくいい。基礎固めの2冊目としてもおすすめ。

子どもに読ませるための入門書としておすすめ。マンガでわかりやすく書かれています。

コメント

タイトルとURLをコピーしました