左上から続いてて、敵が230m以内正面にいて熱が上がってないときは攻撃に移る。89%という数字はてきとう。カノン一発で7%くらい上がるのかな。このあと最多でミサイル2発とカノン1発を撃つ可能性があるからほんとはもっと厳しくした方がいい。
次にカウンタBを使ってフレームを勘定するので0でリセットしておく。定期で弾を見てカウンタCに今の時間を入れてDよりでかければ前のミサイル発射から3秒たってるのでミサイル発射へ進む。そうでないときはカノンを撃ちにいく。185m以内に敵がいれば撃つ。いなければ前進。
カウンタCがDよりでかかった場合はミサイルを二発撃とうとする。この形だと二番のミサイルをまず使って、それがなければ三番武装を撃つ。そのあとDに時間を入れて3を足す。定型の処理。ただしこれだとこのあとの接近弾検知で回避に突入するとミサイルを撃ってないのに撃ったことになってしまう。例えば7フレーム(サブ乱射で初弾が出るのにかかる時間)の間自分が射撃なら初めてカウンタDに時間を入れるようにするとちゃんと撃ったときの数値になる。でもいいや。
そのあとの [ターゲットが145m以内なら] でカウンタBをいじってるのは、敵が近くにいるときはミサイルを一発にしたいから。距離はてきとう。なぜ近いと一発かというと、ミサイル -> カノンと撃ったときに最初に撃ったミサイルが着弾する直前にカノンが到達するようにしたいから。要調整。
そのあと自分射撃中かどうか調べるのは弾切れ確認。まあ武装3の残弾が1以上かどうかの判断の方がよいのだけど、万が一速攻で武装3が壊されたときはミサイルを撃たなくなるので嫌かなと思った。それなら武装2と3両方の残弾をチェックすればいいじゃんということになるけど、チップの流れ的にこうなった。それともミサイルを撃ったあとに3番の残りがなければDに10000辺りを入れようか。
で、無事ミサイルを撃ち始めていればフレームを数えて13フレーム、すなわち乱射ミサイルを二発撃ち終わる時間、したらカノンを撃ってミサイルを追い越す。1番武装発射のあとにカウンタEに敵の方向を入れてカウンタ指定射撃でやり直しているのは、敵がジャンプしていたとき対策。横に跳ばれてたらもちろん当たらないわけだけど、前後方向に跳んでれば当たるかもね。実はまず当たらないわけだけどもっとがんばれば当てられるだろ。それと、カルポエディタのバグでカウンタ指定射撃の仰角カウンタがチップの表示に反映されない。AになってるけどほんとはHと思ってください。カウンタHには何も入れていない。初期値の0のまま。これでいいわけはないけどまあいいや。
ミサイル発射中に弾をみつけたらリターンで戻さずにすぐに回避行動に入るようにした。隙間が余ってたからそうした。
この辺のフレームのカウントはチップ処理の踏み方の関係でぎりにするとうまくいかないのかも。stop を使うなりしてちゃんとやった方がいいんじゃないの。それとループをチップ5枚にこだわる必要はない。ここでは見た目わかりやすいようにそうしたけど、例えば13フレームの間待ちたいなら 13x5 の65枚チップを踏めばよい。4枚で回して16-17周にしてみたりとか。
画は前回のエントリになるのだけど、熱判断の前にターゲット230mならこちらに来るようになってる。ほんとは180mから撃ち始めたかったけどどうにも無謀くさいのでミサイルは妥協してもっと遠くから撃つことにした。一応これで牽制して近付くんだよと後付けで理由を考えた。
でも実はこれでも近い。
非公開 2012年09月18日(火)03時36分 編集・削除
管理者にのみ公開されます。