CombatHeroMoveState.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. using UnityEngine;
  2. using UnityEngine.AI;
  3. namespace GameLogic.Combat.Hero.State
  4. {
  5. public class CombatHeroMoveState : CombatHeroStateBasic
  6. {
  7. protected Vector3 t;
  8. public CombatHeroMoveState(CombatHeroEntity combatHeroEntity) : base(combatHeroEntity)
  9. {
  10. }
  11. protected override void ProEnter()
  12. {
  13. combatHeroEntity.combatHeroAnimtion.Play("run");
  14. // SetNewPath();
  15. }
  16. protected void SetNewPath()
  17. {
  18. Vector3 p = new Vector3(Random.Range(-10, 10), 0, Random.Range(-10, 10));
  19. t = p;
  20. combatHeroEntity.CombatAIBasic.NavMeshAgent.SetDestination(p);
  21. }
  22. protected override void ProUpdate(float t)
  23. {
  24. // combatHeroEntity.CombatAIBasic.NavMeshAgent.path.status == NavMeshPathStatus.PathComplete
  25. // if (Vector3.Distance( combatHeroEntity.CombatAIBasic.NavMeshAgent.pathEndPosition, combatHeroEntity.combatHeroGameObject.position)<0.1)
  26. // {
  27. // SetNewPath();
  28. // }
  29. //测试
  30. }
  31. }
  32. }