スポンサーリンク

Scratch

micro:bitでシューティングゲームを作る

Scratch

micro:bitで簡単なゲームを作ってみましょう。
今回はシューティングゲームです。
シューティングゲームに必要な基本的な動きを学ぶことができます。
これを応用して、Scratchでストライプを動かしてきれいなゲームにするのも良いでしょう。
5分もあればコピーできますのでぜひ試してください。

スポンサーリンク

遊び方

LEDの一番上の列で点灯しているのが敵です。
LEDの一番下の列で点灯しているのが自分です。
敵は左から右へ移動します。
自分はAボタンで左へ移動、Bボタンで右へ移動します。
A+Bボタンでミサイルを発射します。
敵にミサイルが当たると音楽が鳴ります。
ミサイルは自分から上に向かって飛んでいきます。

プログラム解説

初期化

まずは変数の初期化です。
敵の初期位置、自機の初期位置とLEDの点灯、効果音のボリュームを決めます。
敵は左から右に移動させる予定で、初めは出現していないことにするので-1の位置に隠しておきます。
自機は真ん中に表示させます。

敵の動き

敵は1秒ごとに右に移動していきます。
敵の位置は一番上の行を左から右に移動します。
今表示しているLEDを消したら、一つ右のLEDを点灯します。
一番右まで行ったら(4より大きくなったら)左(-1)に戻します。

Aボタンを押したら左に移動

Aボタンを押したら自機の位置を左に移します。
今点灯しているLEDを消して一つ左のLEDを点灯します。
ただし、画面から消えてしまわないように0より小さくならないようにします。

Bボタンを押したら右に移動

Aボタンと反対の動きを作っています。

ミサイル発射と当たり判定

A+Bボタンを押したときにミサイルを発射します。
自機の場所から上向きにLEDを点灯させていきます。
動きは敵や自機と似ており、点灯と消灯を繰り返しています。
0.2秒間隔で上に移動していきます。
点灯する場所は自機の一つ上(3の場所)から開始しています。

カウンタ=0時に当たり判定を計算します。
カウンターが0になったとき、実際にはまだy=1の場所を点灯した状態です。
この時y=0の場所に敵(LEDが点灯)が居たらヒットしたと判断して音楽を鳴らします。

コメント

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