private void Build() { for (int y = 0; y < map.GetLength(1); y++) { for (int x = 0; x < map.GetLength(0); x++) { Tile tempTile = tileDictionary.getTile(TileMethods.TypeById[map[x, y]]); GameObject tempObj = Instantiate(tempTile.getPrefab, new Vector3Int(x * (int)transform.parent.GetComponent <WorldManager>().getDisplacement, 0, y * (int)transform.parent.GetComponent <WorldManager>().getDisplacement), Quaternion.Euler(0, 90, 0)); if (tempTile.getType == TileType.Start) { StartVector = new Vector2Int(x, y); } else if (tempTile.getType == TileType.End) { EndVector = new Vector2Int(x, y); } if (tempTile.isWalkable) { Walkables.Add(new Vector2Int(x, y)); } //Debug.Log(tempTile.name); switch (tempTile.getType) { case TileType.End: tempObj.transform.parent = Specials.transform; break; case TileType.Obstacle: tempObj.transform.parent = Obstacles.transform; break; case TileType.Path: tempObj.transform.parent = Paths.transform; break; case TileType.Start: tempObj.transform.parent = Specials.transform; break; case TileType.TowerOne: tempObj.transform.parent = Towers.transform; break; case TileType.TowerTwo: tempObj.transform.parent = Towers.transform; break; } } } //Debug.Log("Walkable Tiles: " + Walkables.Count); }