using GameLogic.Combat.CombatTool; using UnityEngine; namespace GameLogic.Combat.Hero.State { public class CombatHeroFollowIdleState : CombatHeroStateBasic { public CombatHeroFollowIdleState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity) { } protected override void ProEnter() { combatHeroEntity.combatHeroAnimtion.Play("idle"); } protected override void ProUpdate(float t) { Vector3 targetPos = CombatController.currActiveCombat.CombatHeroController.GetFollowPos(combatHeroEntity); Vector3 myPos = combatHeroEntity.dotPos; if (Vector3.SqrMagnitude(targetPos - myPos) > 0.5f) { combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.followMove); } // else // { // GameObject[] b = combatHeroEntity.CombatAIBasic.AreaList; // if (b != null && b.Length > 0) // { // combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.rolling); // } // else // { // if (combatHeroEntity.CombatHeroSkillControl.CanReleaseSkill() != null) // { // combatHeroEntity.CombatAIBasic.ChangeState(CombatHeroStateType.att); // } // } // } } } }