Published on: 2021-06-15
敵弾には自機狙い弾と方向指定弾がある。両者には以下の共通点がある:
敵弾の最大数および発射間隔は敵弾ランクによって決まる(敵編隊ランクとは異なる)。
敵弾ランクは周回数、面、自機パワーに依存し、次式で計算される:
(敵弾ランク) = min(28, 2*(自機パワー) + (面) + ((2周目) ? 12 : 0))
敵弾の最大数は (敵弾ランク)/4 + 1
となる(切り捨て除算。値の範囲は 1..=8
)。
敵弾の発射間隔は -((敵弾ランク)+2)/4 + 7
となる(切り捨て除算。値の範囲は 0..=7
)。
敵が弾を撃った後、この値と同じ回数だけ敵弾の発射がキャンセルされる。
敵編隊パラメータにより計算されたスピード、誘導弾フラグがパラメータとして渡される。
自機狙い弾の方向は近似計算され、さらにパラメータで渡されたスピードが OR される。
自機狙い弾が誘導弾になることがある。条件は以下の通り:
方向指定弾を撃つのはビッグスターブレインの砲台のみ。
敵AIバイトコードにも方向指定弾命令はあるが、ゲーム内では使われていない。
方向指定弾は敵編隊パラメータの影響を受けない。
また、プログラム中には自機パワーによって方向指定弾を高速化する意図と思われるコードがあるが、実際には機能していない(((自機パワー)<<2) & 0x30
を方向に OR しているが、これではシフト量が足りない)。
方向指定弾が誘導弾になることがある。条件は以下の通り: