2024年09月21日
Laboratoryテーマ16「波状攻撃してくる敵を作りたい」その@
さて、長らく放置してしまったLaboratoryですが、「シューティングゲーム」を製作するにあたり、主に「シューティングゲーム」用の敵の移動系のテーマをやってしまおうと考えました。
多分4つとも使います。
まず、テーマ16「波状攻撃してくる敵を作りたい」その@です。
波状攻撃とは、いわゆる魔城伝説の序盤のコウモリです。
こんな感じの動作をします。
放物線を描いているので、三角関数の出番です。
…が、三角関数を用いて計算しながら移動させると、編隊飛行のように複数出現させるとなると処理が重いです。
ではどうするか?
何通りかの方法があると思いますが、今回は、もっとも単純な方法、最初にExcelで放物線上の任意の座標を求めておき、始点からの移動量をデータベース化します。
データベース化するのは、波形1回分のデータです。
後はそれを繰り返すだけです。
座標データ数により、敵の動作が速くなったり粗くなったりするので、そのあたりは最適な数を見付けて下さい。
このデータベースをそのまま利用してもいいのですが、全部で208バイトもある。
移動データ1つにそれだけのメモリはさすがに使えない…。
と、言う事で波形を⓪〜Bに4分割します。
形を見てみれば、⓪を基準とすると、@は⓪の上下左右反転型。
Aは左右反転型。
Bは上下反転型となるので、データとしては⓪分の52バイト持っておいて、後は計算で求めるようにします。