こうげきするときの中で locate するとトリガーが連続で呼ばれるバグ
v0.36 から発生していた模様。v0.45 で修正済み
おかしい挙動
正しい挙動
コード (ジャンプしようとしている)
js
rule.こうげきするとき(async function() {
await this.いく(this.mapX + 1, this.mapY - 1) // この位置にテレポ-ト
await this.まつ(0.01)
await this.いく(this.mapX + 1, this.mapY + 1) // この位置にテレポ-ト
})
症状
こうげきするときの中で locate を使うと、こうげきするときが毎フレーム連続で発生してしまう
locate の内部で
this.behavior = BehaviorTypes.Idle
を実行することで、walk による位置の移動を止めている しかし
BehaviorTypes.Idle
に戻ることで attack がすぐに呼ばれてしまい、このバグが起きた behavior ではなく、特別なフラグを追加した方がいい。
skipWalkingAfterLocate
としよう