private void InitialiseMonos() { List <Vector2Int> ChunkPositions = new List <Vector2Int>(); List <ChunkController> ChunkControllers = new List <ChunkController>(); for (int x = 0; x < 20; ++x) { for (int z = 0; z < 20; ++z) { ChunkPositions.Add(new Vector2Int(x, z)); var chunkController = new GameObject("Chunk Controller: " + x + ", " + z).AddComponent <ChunkController>(); chunkController.transform.SetParent(WorldGameObject.transform); ChunkControllers.Add(chunkController); } } var Chunks = WorldGeneration.GenerateChunks(ChunkPositions); for (int i = 0; i < ChunkControllers.Count; ++i) { ChunkControllers[i].SetChunk(Chunks[i], World); } }