public static PuzzleSolution GetPuzzleSolution(ChessBoardLayoutType layoutType) { return(layoutType switch { ChessBoardLayoutType.Puzzle => PuzzleSolution, ChessBoardLayoutType.Puzzle2 => Puzzle2Solution, ChessBoardLayoutType.Puzzle3 => Puzzle3Solution, ChessBoardLayoutType.Puzzle4 => Puzzle4Solution, ChessBoardLayoutType.Puzzle5 => Puzzle5Solution, ChessBoardLayoutType.Puzzle6 => Puzzle6Solution, });
public ChessBoard(ChessBoardLayoutType boardLayoutType, ITwoPlayerZeroSumGameMovesEngine gameEngine) : this(new ChessBoardState(ChessBoardLayoutFactory.CreateChessBoardLayout(boardLayoutType), capturedPiecesPerPlayer : ChessBoardLayoutFactory.GetCapturedPiecesInLayout(boardLayoutType)), gameEngine) { }