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}]");
 }
예제 #4
0
 public EnemyState(EnemySoilder owner, EnemyDebugger debugger)
 {
     this.owner    = owner;
     this.debugger = debugger;
 }
 public EnemyStateCombat(EnemySoilder owner, EnemyDebugger debugger) : base(owner, debugger)
 {
 }