public List <TDTile> FindAdjacentFlammableTiles(TDTile tile) { List <TDTile> adjacentFlammable = new List <TDTile> (); List <TDTile> allAdjacent = GetAdjacentTiles(tile); for (int i = 0; i < allAdjacent.Count; i++) { TDTile other = allAdjacent[i]; if (other.IsFlammable()) { adjacentFlammable.Add(other); } } return(adjacentFlammable); }
int ReadInMap(string[] splitLevelData) { string mapSize = splitLevelData [0]; string[] mapSizes = mapSize.Split(VALUE_DELIMITER); mapWidth = int.Parse(mapSizes [0]); mapHeight = int.Parse(mapSizes [1]); int offset = 1; //Read one line for width and height tiles = new TDTile[mapWidth, mapHeight]; int flamableCount = 0; for (int y = offset; y < mapHeight + offset; y++) { string mapRowData = splitLevelData[y]; for (int x = 0; x < mapWidth; x++) { TDTile tile = new TDTile(x, y - offset); tile.type = TDTile.GetTypeForString(mapRowData[x].ToString()); if (tile.type == TDTile.Type.FIREHOUSE) { firehouseLocation = new Vector2(x, y - offset); } if (tile.IsFlammable()) { flamableCount++; float tileDurability = tile.durability; totalDurability += tileDurability; } tiles[x, y - offset] = tile; } } return(mapHeight + offset); }