private void CreateGrid() { rows.Clear(); for (int x = 0; x < Constants.gridSizeVertical; x++) { GameObject rowObject = Instantiate(Resources.Load("HexRow")) as GameObject; HexRow row = rowObject.GetComponent <HexRow>(); row.Init(x); rowObject.transform.SetParent(this.transform, false); rowObject.name = "Row " + x; rows.Add(rowObject.GetComponent <HexRow>()); for (int y = 0; y < Constants.gridSizeHorizontal; y++) { GameObject newTile = Instantiate(Resources.Load("HexTile")) as GameObject; newTile.transform.SetParent(rowObject.transform, false); HexTile tile = newTile.GetComponent <HexTile>(); tile.xy = new Vector2(x, y); newTile.name = "Tile (" + x + "," + y + ")"; //F.e. Tile (0,7) tile.InitRandom(); row.tiles.Add(tile); } } }