public static Dictionary <Vector2Int, float> BuildMountain(int x, int y, int levelsCount, int ringWidth, float ringHeight, int maxX, int maxZ) { var result = new Dictionary <Vector2Int, float>(); var ringsToBeRaised = MapPiecesSelector.GetRingsAround(x, y, levelsCount, ringWidth, maxX, maxZ); for (int i = 0; i < levelsCount; ++i) { foreach (var tile in ringsToBeRaised[i]) { if (MapOperationValidator.IsValidPointOnMap(tile.x, tile.y, maxX, maxZ)) { if (!result.ContainsKey(tile)) { result.Add(tile, (levelsCount - i) * ringHeight); } else { result[tile] = (levelsCount - i) * ringHeight; } } } } return(result); }
private bool IsValidPointOnMap(int x, int y) { return(MapOperationValidator.IsValidPointOnMap(x, y, XResolution, ZResolution)); }