public void startBuilding() { //initialze grid for (int i = 0; i < gridX; i++) { for (int k = 0; k < gridY; k++) { for (int j = 0; j < gridZ; j++) { grid[i, k, j].posibilitySpace.Clear(); if (grid[i, k, j].isPath) { grid[i, k, j].posibilitySpace.Add(floorGO); } else { grid[i, k, j].posibilitySpace.AddRange(modules); } } } } mL.randomPooltmp.AddRange(mL.randomPool); /*for (int i = 0; i < gridX; i++) * { * grid[i, 0, gridZ - 1].posibilitySpace.Clear(); * grid[i, 0, gridZ - 1].posibilitySpace.AddRange(walls); * * grid[i, 0, 0].posibilitySpace.Clear(); * grid[i, 0, 0].posibilitySpace.AddRange(walls); * } * for (int j = 0; j < gridZ; j++) * { * grid[gridX - 1, 0, j].posibilitySpace.Clear(); * grid[gridX - 1, 0, j].posibilitySpace.AddRange(walls); * * grid[0, 0, j].posibilitySpace.Clear(); * grid[0, 0, j].posibilitySpace.AddRange(walls); * }*/ mL.grid = grid; noiseMap.grid = grid; noiseMap.InitNoiseWeights(gridX, gridY, gridZ); StartCoroutine(IterateAndCollapse()); }