弾を撃つ!
こんにちは、おおやけハジメです。
三回目は敵を倒すための弾を発射出来るようにしました。
シューティングゲームを作ろう(3) Scratchプロジェクト
スプライト新規作成
まず最初に弾のスプライトを新規作成します。
キャラの絵はなんでもいいのですが、今回はBallを使いました。
変数作成
次に、ボールを制御するための変数「tama」を作成します。「データ」の「変数を作る」をクリックするとダイアログが出ます。
すべてのスプライト用」で「tama」という変数を作成します。
この変数は、発射できる弾の数を制御するために使用します。
弾の発射プログラム
次にSprite1(猫)のプログラムを、弾を撃てるように変更します。
前回からの変更点は、プログラム開始時に変数「tama」を「0」にしています。
さらに次の処理が追加されています。
この処理は「スペースバーが押された時に変数tamaが1より小さかったら(0だったら)tamaを1増やし、Ballスプライトをクローンしろ」という処理になります。この条件が満たされた時、変数tamaが「1」になるため、次からはスペースバーを押してもクローンされなくなります。
Ballスプライトのプログラム
次に「Ball」スプライトにプログラムを作ります。
このスプライトもクローンで使用するので、プログラム開始と同時に隠します。スプライトのサイズも20%に縮少します。
そして、クローンされた時には画面に表示し、座標をSprite1(猫)と同じにします。これによって猫から弾が発射されたように見えます。
その後は無限ループでY座標を増やしていきます。これで弾が上に飛んで行くように見えます。そして、画面の一番上に行ったところで自分自身を削除し、先ほど作った変数「tama」を「1」減らします。
これでtamaが「0」になるので、また弾が発射出来るようになります。
ここで、鋭い方は気づいていると思いますが、先ほどのスペースバーを押した時の「tama < 1」の「1」が発射出来る弾の数になります。この「1」を変えてみるとBallスプライトはひとつしか作っていなくとも、複数の弾が発射出来ることが分かるでしょう。