void GenerateMaze() { //Generate new random seed int mazeSeed = Random.Range(0, System.Int16.MaxValue); //Wipe existing maze mazeGenerator.Wipe(); mazeGenerator.SetSeed(mazeSeed); mazeGenerator.Spawn(MAZE_WIDTH, MAZE_LENGTH); mazeGenerator.ResetTiles(); if (mainRoomSize > 0) { mazeGenerator.CarveMainRoom(TILE_SIZE, TILE_SIZE); } TileController generatorStartTile = mazeGenerator.tiles[0, 0]; mazeGenerator.FindFirstStep(Direction.N, generatorStartTile.pos); mazeGenerator.CleanColumns(); mazeGenerator.UpdateMeshes(); mazeGraph.Refresh(mazeGenerator.tiles); graphView.ClearNodes(mazeGraph.mazeNodesList); mazeGenerated = true; SolveMaze(); }