public void NewMaze() { var maze = new Maze(Dimensions); DisjointSetMazeGenerator.Generate(maze); LongestPathEndpointGenerator.Generate(maze, maze.Dimensions[0] / 2, 0); this.maze = maze; MazeUpdated(); }
public void SpiralMaze() { // ┌─────┐ // ├───┐ │ // │ ╶─┘ │ // └─────┘ var maze = new Maze(3, 3); maze[0, 0][2] = false; maze[1, 0][2] = false; maze[2, 0][3] = false; maze[2, 1][3] = false; maze[2, 2][0] = false; maze[1, 2][0] = false; maze[0, 2][1] = false; maze[0, 1][2] = false; LongestPathEndpointGenerator.Generate(maze, 0, 0); Assert.AreEqual(new int[] { -1, 1 }, maze.Exit); }