/// <summary> /// /// </summary> /// <param name="map"></param> /// <param name="cell"></param> /// <returns></returns> public static double GetY(MapInstance map, int cell) { if (!CellPoints.ContainsKey(map.Cells.Count)) { Pathfinding.GenerateGrid(map.Width, map.Cells.Count); } Point p = new Point(); if (CellPoints[map.Cells.Count].TryGetValue(cell, out p)) { return(p.Y); } return(-1000); }
/// <summary> /// /// </summary> /// <param name="Map"></param> /// <param name="Cell"></param> /// <returns></returns> public static Point GetPoint(MapInstance map, int cell) { if (CellPoints.ContainsKey(map.Cells.Count)) { if (!CellPoints[map.Cells.Count].ContainsKey(cell)) { Logger.Info("Pathfinding::GetPoint unknow cell : cellId=" + cell + " cellCount=" + map.Cells.Count); var point = new Point(_GetX(map.Width, cell), _GetY(map.Width, cell)); CellPoints[map.Cells.Count].Add(cell, point); return(point); } else { return(CellPoints[map.Cells.Count][cell]); } } Pathfinding.GenerateGrid(map.Width, map.Cells.Count); return(GetPoint(map, cell)); }