自機と敵機から弾丸を発射する処理をおこないましたが、命中したか? 命中したらどうするかについては考えていませんでした。そこで今回は弾丸の当たり判定と爆発の処理をおこないます。

以下のコードでは当たり判定をおこなったあと爆発を描画する準備をしています。

では爆発の処理をするためにはどうすればよいでしょうか?

弾丸が命中しただけなら小爆発なので位置を変える必要はありません。キャラクターが死亡した場合は大きな爆発にしたいので発生した位置から放射状に広がるように移動させます。Explosionクラスはそのあと示します。

以下のようなExplosionクラスを作成します。コンストラクタに爆発が発生したXY座標、その移動距離、オブジェクトの半径をわたすようにします。また爆発のテクスチャは時間の経過とともに変化させます。

ではForm1クラスに爆発を描画する機能を追加しましょう。すでにUpdateメソッドで爆発の描画に必要なオブジェクトは集められているので描画の処理だけ追加します。