using Invector.vCharacterController.AI; using Invector.vCharacterController.AI.FSMBehaviour; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Beyond { public class bIDCombatAction : vSimpleCombatAction { public override string defaultName { get { return "ID Melee Combat"; } } protected override void EngageTarget(vIControlAICombat controller) { if (controller.currentTarget.transform == null) return; if (controller.targetDistance <= controller.attackDistance) { controller.Stop(); if (controller.currentHealth < IDBattleController.firstEventHP) { controller.Attack(true); } else { controller.Attack(); } } else if (!controller.animatorStateInfos.HasAnyTag("Attack", "LockMovement", "CustomAction")) { if (engageInStrafe) controller.StrafeMoveTo(controller.currentTarget.transform.position, (controller.currentTarget.transform.position - controller.transform.position).normalized, engageSpeed); else controller.MoveTo(controller.currentTarget.transform.position, engageSpeed); } else controller.Stop(); } } }