Agent
Абстракция нижнего уровня, решающая математические задачи ИИ, для персонажа. Использует NavMeshAgent агент Юнити.
Name
Имя агента, используется системное поле gameobject.name, тем самым видно в редакторе Юнити, а так же дублируется в полоске жизни HealthBar.
WalkTarget
Vector3 WalkTarget
Цель движения агента, если он движется
OnWalkEnd
event Send OnWalkEnd
Возникает, когда агент заканчивает движение к заданной цели
Init()
Перед использование агента его нужно инициализировать.
Walk()
Walk(Vector3 argTarget, float stoppingDistance = 0.1f)
Дать задание агенту двигаться к точке argTarget, с точностью её достижения stoppingDistance.
Tick()
Init() запускает короутин, который раз в 0.1 сек. CheckWalkEnd()
CheckWalkEnd()
Проверить достиг ли агент назначенной цели
Stop()
Остановить агента
CheckPosition()
Найти ближайшую доступную позицию на NavMesh карте и поместить в неё агента
DrawPath()
Рисует линией путь, куда движется агент