2023.11.30Scratch で始める小学生からのプログラミング
小学生がスクラッチでシューティングゲームを作る3つのステップ(プレイヤーの動き)
皆さん、こんにちは!タイムレスエデュケーションの日高です。
今回は、スクラッチでシューティングゲームを作る方法について説明させて頂きます!実は7年前にも同じ内容で書かれた記事を出しているのですが、現在ではスクラッチのバージョンが変わっているため、今の仕様に合わせて改めて解説していきます。小学生でも分かるように説明しているので、お子様と一緒に是非取り組んでみて下さいね!
ステップ1:背景とキャラクタの設定
まずは、背景とキャラクタを設定します。今回はネコが空を飛んでいるように見せたいので、水色の背景を選びましょう!ライブラリに「Blue Sky 2」という背景が入っているので、それを選択して下さい。
次に、キャラクタを選びます。元々入っているネコの代わりに、飛んでいるネコを使いましょう!またビルを置くと、ネコが飛ぶ様子をよりリアルに作れます。
どうでしょうか。ネコが空を飛んでいるように見えてきましたね!
飛んでいる雰囲気をより出すため、ネコかビルのどちらかを動かしていきましょう!ここでは、ネコを動かすことにします。なぜなら、ネコを動かすと、次の画面に変わらないと飛んでいるように見えないからです。
今回はビルを動かして、ビルが画面から消えた後に別のビルを表示することで、ネコが飛んでいるように見せます。
試しに上記のようなプログラムを、ビルに追加して下さい。先ほどより、ネコが飛んでいる感じに見えると思います!雲を入れると、飛んでいる雰囲気がさらに出て来ますね。
ただ、これで満足してはダメです!同じ動きを繰り返してばかりで、見ていると飽きてしまいますよね。そこで「乱数」の命令を使います。この命令を使うと、自分が決めた範囲でランダムな数字を設定できるので、ビルの動きに変化を加えられます。今回は、ビルの速さと高さを変えてみましょう!
乱数の命令を使う時は、数字の幅を決めます。ここでは、ビルの速さを3から6に設定しました。また高さを、y座標値で-24の倍数で1から5倍まで設定しました。このような形でプログラムを作ると、ビルの速さがランダムに変わることがわかりますね。またy座標の数字が小さくなった時はビルの高さが低くなって、数字が大きくなった時はビルの高さが高くなることもわかると思います!ここまで作ったプログラムで、だいぶそれらしい形になってきたのではないでしょうか。
ステップ2:キャラクタの動作設定
次に、プレイヤーがネコを操作できるようにします。ゲームらしくするために、今回は上下のカーソルキーでネコを動かせるようにしましょう!
カーソルキーのイベントを取得する命令があるので、ここでは「上向き矢印キーが押されたとき」と「下向き矢印キーが押されたとき」に、それぞれの方向にネコが動くようにプログラムを作っています。またネコの向きの設定を、回転しないようにしておくことも必要です。理由は、この設定が無いとネコが上や下に向いてしまうからです。設定を変更すれば、ネコの向きが固定されたまま、上方向や下方向に動かせるようになります。これで、プレイヤーがネコを操作できる状態になりましたね!
ステップ3:たまを打つ
ここまで作ったプログラムで、だいぶゲームらしくなってきました。ただ、まだ物足りない感じがしますよね。そこで、たまを打って敵を倒す機能も入れましょう!まずは自分でたまの絵を描いて下さい。ここでは、とりあえず黒い長方形のたまにしていますが、自分のお好みの形で描いてみて下さいね!
次に、ネコのいる場所からたまが現れて、右端まで飛んで行くようにプログラムを作っていきます。動くネコの位置に合わせてたまを表示するためには、変数を使います!厳密に言うと、他のスプライトからも見える変数(専門的にはグローバル変数)ですね。今回は、ネコの位置に関する情報を、たまのスプライトに渡します。まずは下記のように、新しい変数を2つ作りましょう!
これでネコのX座標とY座標を、それぞれ変数に保存できるようになりました。そして、これらの変数をネコとたまの両方で使います。下記のように、プログラムを作ってみましょう!
ネコのプログラムでは、プログラムが始まった時にネコのX座標の値を記録しています。これは、今回のプログラムではネコが上下にしか動かず、x座標が変わらないからです。そしてネコが上や下に動いた時は、Y座標の値を変数に記録しています。
一方、たまのプログラムでは、スペースキーが押された時に、ネコがいる場所にたまが出て来るようにします。また、右方向に向かって飛んで行くように動きを作ります。ここではネコのプログラムで変数に座標を記録しているので、この数字を使っています。たまのx座標とy座標をそれぞれ設定してから、右へ動かすような形になっていますね。この時、y座標はそのままにしているので、たまは真っ直ぐ飛んで行きます!さらに右端まで動いた後は、たまが消えるようにしました。実際にプログラムを動かすと、ネコの位置に合わせてたまが発射されるようになったことが分かると思います!
もう1つアクセントを加えるため、次は音を入れてみましょう!ここでは、ライブラリに入っている「Laser2」という音を使用しています。
音を追加できたら、下記のようにたまのプログラムを改造しましょう!スペースキーを押してたまを発射した時、効果音が鳴るはずです。
いかがでしょうか。シューティングゲームらしくなってきましたか?
まとめ
お気づきだと思いますが、まだ敵がいない状態です。敵のプログラムの作り方も説明すると、さらに長文となってしまうため、次回の記事で改めて説明させて頂ければと思います。どうぞお楽しみに!