スクラッチでシューティングゲームを作ろう③

ICT活用担当のyotaです。地域おこし協力隊として小学校やイベント等でプログラミングを教えています。今回はシューティングの弾をプログラミングしていきます。

キーを押すと弾がキャラクターから発射される

弾に対応するスプライトは「Ball」を使用します。通常スプライトは画面に1つのみ表示された状態となりますが、キーを押すたびに同じスプライトが複数画面上に表示する必要があります。このように同じスプライトを複数動かすようなことを行いたい場合、クローンという機能を使用します。

クローンとは?

クローンはスプライトを複製(コピー)する機能です。クローンを作成するブロックを使った場合、クローンされたときのブロックに繋げたプログラムが都度動きます。

スペースキーを押すとクローンを作成する

前回の記事にあったようにキー入力の方法は2通りあります。キーを連打して弾を発射させたい場合は「イベントのキーが押された場合」が向いています。キーを押しっぱなしにした場合に一定間隔で弾を発射させたい場合は「条件分岐のキーを押された場合」が向いています。今回は条件分岐のキーが押された場合を使います。

まず、初期処理としてBallの大きさを設定しています。今回はキーを押した際に発射されるクローンのみあればよいので本体のBallのスプライトは隠すで見えないようにしています。
その後にずっとブロックの中にスペースキーが押されたら自分自身のクローンを作るとしています。0.1秒待つの処理を入れることでキーを押しっぱなしにした場合に0.1秒間隔で弾が発射されるようになります。

クローンのプログラム

クローンされたときブロックの下に繋げたプログラムがクローンのプログラムになります。弾のプログラムはキャラクターから発射されて右方向に移動させます。

クローンされた際に、まず、弾のスプライトを「○○へ行く」のブロックを使用ししてキャラクター(Dove)の位置に移動させます。その後、右方向(90度)に向けて初期処理で隠すで見えないようにしているため「表示する」でクローンのスプライトを見えるようにします。
あとはずっと10歩動かすを入れて、端に触れたらクローンを削除するようにプログラムを作ります。

弾のプログラムが完成しました。スペースキーを押すと弾が0.1秒間隔で連射されるようになります。

この記事が気に入ったら
いいねしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次