AIが判断材料にするのは相手との距離情報の他にも、足場の状況だったり、残り体力差だったり、ジャンプ中や何か技を出してるモーション中とかだったり色々あると思いますけど そういう要素を全部洗い出して、行動の優先順位を変えた色んなパターンのフローを作ってみたらいいんじゃないです? そうすれば格闘技で言う『型』みたいなのが出来上がると思うんですけど。 あと予めデータ化してあるモーションも垂れ流しで使うんじゃなくて、実行する時に数値の一部をループ中で常時更新してるグローバル変数に変更するだけでも柔軟性はかなり上がると思いますけど。