敵機の動きを自動化
効率を考えずに敵機を作っていたため、動きのパターンの量産に手間がかかる仕様になっていました。
先を考え、設定した数値を元に、敵機を自動で動かす仕組みを実装しました。
以下のような引数を関数に渡すことで、敵機インスタンス生成+動き自動化を行ってくれます。
「初期位置」「中間位置」「最終位置(到達すると自動で消滅)」「中間位置で停止する時間」「移動速度」
ただ、この方法だと、複雑な動きをする敵を実現できません。
例えば、退場することがなく、画面内を動き回るような敵(ボスなど)は、独自に動作を作る必要があります。
でも、それは従来の仕様から変わらないので、雑魚が楽になった分、成果はあったと言えますね。
動きの自動化を用いて、以前に作成したテストステージの構成を再現しました。
便利なのは、今まで敵機が画面外に出たかどうかを、アクションで条件分岐を使って判断してから消去していたのですが、それも自動化できるようになったこと。
また、動きごとに敵機オブジェクトを作る必要がなくなり、敵機オブジェクトを約半分に削減できました。
ステージ1作成前に仕様を変更しておいて、正解だったと言えますね。