public static List <TilePosition> CalculateAStarPahtTile(IGCalculator characterCalculator, TilePosition startTile, TilePosition endTile) { List <AStarPathNode> rawPath = CalculatePath(characterCalculator, startTile.ConvertToAStarPathNode(), endTile.ConvertToAStarPathNode()); List <TilePosition> result = new List <TilePosition>(); for (int i = 0; i < rawPath.Count; i++) { result.Add(rawPath[i].ConvertToTilePosition()); } return(result); }
public static List <TilePosition> CalculateAStarPathTile(int[,] weightMap, TilePosition startTile, TilePosition endTile) { ArrayGCalculator arrayCalculator = new ArrayGCalculator(weightMap); List <AStarPathNode> rawPath = CalculatePath(arrayCalculator, startTile.ConvertToAStarPathNode(), endTile.ConvertToAStarPathNode()); List <TilePosition> result = new List <TilePosition>(); for (int i = 0; i < rawPath.Count; i++) { result.Add(rawPath[i].ConvertToTilePosition()); } return(result); }