private void Awake() { gameManager = Locator.Get <GameManager>(); generationManager = Locator.Get <MapGenerationManager>(); SubscribeUIListeners(); }
public void Build(List <UnitStats> playerUnits) { tilesContainer = new GameObject("Tile Container"); tilesContainer.transform.parent = transform; MapGenerationManager mapGenerator = GetComponent <MapGenerationManager>(); mapGenerator.Generate(); tiles = new List <List <Tile> >(); width = mapGenerator.width; height = mapGenerator.height; for (int x = 0; x < width; x++) { List <Tile> column = new List <Tile>(); for (int y = 0; y < height; y++) { Terrain terrain = mapGenerator.GetTerrainForXY(x, y); GameObject prefab = mapGenerator.GetTilePrefabForTerrain(terrain); GameObject obj = Instantiate(prefab, new Vector3(x, y, 1), Quaternion.identity) as GameObject; obj.transform.parent = tilesContainer.transform; Tile tile = obj.GetComponent <Tile>(); tile.p = new Point(x, y); column.Add(tile); } tiles.Add(column); } units = GetComponent <UnitPlacementManager>().setupUnits(playerUnits); }