レッスン91
Scratchでスネークゲームを作ってみよう⌗
どんなゲームを作るのか、まず完成したゲームをみてみましょう。
ステップ1 へびを作る⌗
新規プロジェクトを作成し、へびを作ります。
-
スクラッチで「作る」にして、新規のプロジェクトを作ります。
-
プロジェクトの名前を「スネークゲーム(自分の名前)」にします。
-
スプライトの「ねこ」を削除します。
-
スプライトに「ball」を追加し、名前を「へび」に変更します。
-
「へび」の「コスチューム」を選び、1、2のコスチューム以外を削除します。
-
1のコスチュームを選び、塗りつぶしの色を明るい緑色に設定し、バケツマークを使って、設定した色に変更し、名前を「あたま」に変更します。
-
次に2のコスチュームを選び、塗りつぶしの色を青色に設定し、バケツマークを使って、設定した色に変更し、名前を「からだ」に変更します。
これでへびが出来ました。
ステップ2 へびを動かす⌗
作ったへびを動かします。
-
「へび」の「コード」を開きます。
-
「緑の旗が押されたとき」
-
「大きさを(40)%にする」
-
「コスチュームを(あたま)にする」
-
「x座標を(0)、y座標を(0)にする」
-
「ずっと」
-
「(0.2)秒待つ」
-
「(20)歩動かす」
-
Scratchコード
ここまで作ったら、右上を画面で「緑の旗」を押して実行してみましょう。
画面中央に緑色の円が現れ、少しずつ上に上がっていって端に行ったら止まります。
次に、へびをいろいろな方向に動くようにします。
-
「[上向き矢印]キーが押されたとき」
-
「(0)度に向ける」
-
「[下向き矢印]キーが押されたとき」
-
「(180)度に向ける」
-
「[右向き矢印]キーが押されたとき」
-
「(90)度に向ける」
-
「[左向き矢印]キーが押されたとき」
-
「(-90)度に向ける」
Scratchコード
この4つを追加したら、右上を画面で「緑の旗」を押して実行してみましょう。
矢印キーを押すと押した方向に緑色の円が動くようになります。
ステップ3 へびを伸ばす⌗
このままでは円が動くだけなので、へびになるように伸ばします。
-
「ずっと」の「(20)歩動かす」の後に
-
「(自分自身)のクローンを作る」を追加します。
Scratchコード
右上を画面で「緑の旗」を押して実行してみましょう。
へびがどんどん伸びていきます。
これではへびが伸びすぎなので、長さを制限してみましょう。
-
「クローンされたとき」
-
「(1)秒待つ」
-
「このクローンを削除する」
Scratchコード
右上を画面で「緑の旗」を押して実行してみましょう。
へびの長さが4個になりました。
「(1)秒待つ」の(1)の値を変えると(例えば2にすると)、へびの長さが変わる(2倍の8個になる)ことがわかります。
ステップ4 へびが端に着いたらゲームを終了する⌗
へびが端まで着いたらそこで止まっていますが、ゲームが終了しているわけではありません。
端についても方向を変えれば、へびはまた動き続けます。
そこで、へびが端についたらゲームオーバーの音を流して、ゲームを終了させるようにします。
-
「へび」の「コード」の「(20)歩動かす」の後に
-
「もし<(端)に触れた>なら」
-
「[ゲーム終了]を送る」(「[メッセージ]を送る」の新しいメッセージを「ゲーム終了」にします)
-
「[このスクリプトを止める]」
-
Scratchコード
-
画面右下の「ステージ」を選択する
-
「音」を選択して、「Lose」を追加する
-
「コード」を選択し、
-
「[ゲーム終了]を受け取ったとき」
-
「終わるまで(Lose)の音を鳴らす」
-
「すべてを止まる」
Scratchコード
これで、へびが端に着いたらゲーム終了音が鳴って、ゲームが終了するようになりました。
ステップ5 りんごをいろいろな場所におく⌗
次にへびが食べるりんごを登場させましょう。
いろいろな場所におくようにするには「移動」という名前の「定義」を作成します。
-
スプライトに「Apple」を追加する
-
名前を「りんご」にする
-
「りんご」の「コード」を選択する
-
「ブロック定義」で「ブロックを作る」をクリックする
-
「ブロック名」を「移動」に変更し、「OK」を押す
-
定義「移動」の後ろに、「x座標を((-180)から(180)までの乱数)、y座標を((-130)から(130)までの乱数)にする」を追加する
-
「緑の旗が押されたとき」
-
「大きさを(70)%にする」
-
「移動」
Scratchコード
これで、緑の旗を押すと、いろいろな場所にりんごが現れるようになります。
ステップ6 へびがりんごを食べると点数が増え、りんごが別の場所に移動する⌗
へびがりんごに当たる(食べる)と点数が増え、りんごが別の場所に移動するようにします。また、その際音(コイン音)が鳴るようにします。
-
「へび」の「コード」を選択する
-
変数を作るで「点数」という変数を「全てのスプライト」で作り、画面に表示させる
-
「緑の旗が押されたら」の後に
-
「[点数]を(0)にする」を追加する
-
「もし<(端)に触れた>なら」の後に
-
「もし<(りんご)に触れた>なら」
- 「[りんごを取った]を送る」(「[メッセージ]を送る」の新しいメッセージを「りんごを取った」にします)
Scratchコード
-
「りんご」の「コード」を選択する
-
「[りんごを取った]を受け取ったら」
-
「移動」
-
「[点数]を(1)ずつ変える」
-
「音」でCoinの音を追加し、「(Coin)の音を鳴らす」
Scratchコード
これで、へびがりんごを食べると点数が増え、りんごが別の場所に移動するようになりました。
ステップ7 へびがりんごを食べるとへびのからだが伸びる⌗
へびがりんごを食べる(当たる)とへびのからだが伸びるようにします。そのためにはクローンされたとき、クローンを削除するまでの時間を追加で点数分待つようにします。
また、追加して伸びた部分は「からだ」が伸びるようにします。
-
「へび」の「コード」を選択する
-
「クローンされたとき」の後の「(1)秒待つ」の後に
-
「コスチュームを(からだ)にする」
-
「(点数)秒待つ」を追加する
Scratchコード
これによって、へびがりんごを食べるとへびのからだ(青色)が伸びていきます。
ステップ8 へびが自分のからだに触れてもゲームオーバーにする⌗
へびが自分のからだに触れてもゲームオーバーにします。
-
「へび」の「コード」を選択する
-
「もし<(りんご)に触れた>なら」を「もし<<(りんご)に触れた>または<(青)色に触れた>>なら」に変更する
「青」の部分はスネークのコスチュームを「からだ」に変更して右上の画面に表示させ、「色に触れた」の色の部分をクリックし、一番下のスポイトを選択して、右上の画面の中の「からだ」の色を選択します。
Scratchコード
これでスネークゲームの完成です。
完成したScratchコード⌗
スネークのコード
りんごのコード
ステージのコード