public EnemyMoveNonCombat(EnemySoilder owner, Vector3 target, Action onTargetReach, Action <List <Node> > onPathCreated) { this.owner = owner; this.onTargetReach = onTargetReach; //Debug.Log($"ownerPos {OwnerPos}, target {target}"); Pathfinding.FindPath(OwnerPos, target, out currentPath); //Debug.Log($"первая точка {currentPath.First().RealWorldPos}"); onPathCreated(currentPath); // Debug.Log("задал новый вейпоинт, путь " + currentPath.Count); }
public EnemyStateRoam(EnemySoilder owner, EnemyDebugger debugger) : base(owner, debugger) { currentWaypoint = FindClosestWaypoint(); move = new EnemyMoveNonCombat(owner, currentWaypoint.Position, OnMoveTargetReached, OnPathCreated); }
public void OnNoPathAvaliable(EnemySoilder entity, Waypoint waypoint) { Debug.Log($"{entity.EnemyName} не смог построить путь до {waypoint.WaypointName} [{waypoint.Position}]"); }
public EnemyState(EnemySoilder owner, EnemyDebugger debugger) { this.owner = owner; this.debugger = debugger; }
public EnemyStateCombat(EnemySoilder owner, EnemyDebugger debugger) : base(owner, debugger) { }