スクランブルもどきに燃料計を表示させます。

スクランブルには燃料計があります。燃料がなくなると墜落してしまいます。燃料切れを回避するためには敵の燃料タンクを破壊して補給する必要があります(破壊すると燃料が炎上して補給にならないような気がするのだが・・・)。

そこで今回は燃料計と燃料タンクを作成します。

まず燃料計を表示させます。コンストラクタ内でInitFuel()を実行して燃料計の初期化をおこないます。表示の初期化だけでなく燃料が増加するときのイベント(後述)も処理できるようにしておきます。燃料の最大値は70とします。

自機は飛行することで燃料を消費します。そして燃料が0になると墜落し始めます。

ステージクラスのUpdateJikiPosition()メソッド内でIsFallingフラグをチェックして墜落処理が必要なときはそのための処理をしています。墜落中は操作ができず機体の高度がだんだん下がっていきます(ただしここでは地上との当たり判定の処理をしていないので画面下に消えていく・・・)。

それでは燃料補給の鍵となる燃料タンクを表示させましょう。まずFuelTankクラスを作ります。

次にStageクラスのInit()メソッドに燃料タンクに関する処理を追加します。

上記の処理で燃料タンクを描画することができるようになりましたが、破壊することができません。自機から発射された弾丸や投下された爆弾が命中したら燃料が破壊され、燃料が補給されるようにしましょう。

GetObjectsHitBullet()とGetObjectsHitBomb()メソッドに弾丸と爆弾が命中した燃料タンクを取得する処理を追加します。

燃料タンクに命中した場合は得点と燃料補給のイベントを発生させます。