// Token: 0x06008D0E RID: 36110 RVA: 0x0029288C File Offset: 0x00290A8C public void GetSuccessors(WorldPathfinder pathfinder, WorldPathNode parentNode) { foreach (int id in this.m_waypointInfo.Waypoints_ID) { this.AddSuccessor(pathfinder, id, parentNode); } }
// Token: 0x06008D0F RID: 36111 RVA: 0x002928F0 File Offset: 0x00290AF0 private void AddSuccessor(WorldPathfinder pathfinder, int id, WorldPathNode parentNode) { ConfigDataWaypointInfo configDataWaypointInfo; Vector2 position; if (!pathfinder.GetWaypoint(id, out configDataWaypointInfo, out position)) { return; } if (parentNode != null && configDataWaypointInfo == parentNode.m_waypointInfo) { return; } if ((!pathfinder.HasGoalNode() || configDataWaypointInfo != pathfinder.GoalNode.m_waypointInfo) && !pathfinder.CanMoveToWaypoint(id)) { return; } WorldPathNode worldPathNode = pathfinder.AllocatePathNode(); worldPathNode.m_waypointInfo = configDataWaypointInfo; worldPathNode.m_position = position; pathfinder.AddSuccessor(worldPathNode); }
// Token: 0x06008D0D RID: 36109 RVA: 0x00292878 File Offset: 0x00290A78 public float GetCost(WorldPathfinder pathfinder, WorldPathNode successor) { return(Vector2.Distance(this.m_position, successor.m_position)); }
// Token: 0x06008D0C RID: 36108 RVA: 0x00292860 File Offset: 0x00290A60 public float GetGoalHeuristic(WorldPathfinder pathfinder) { return(Vector2.Distance(pathfinder.GoalNode.m_position, this.m_position)); }