static void Main(string[] args) { try { ChessGame game = new ChessGame(); while (!game.Finished) { try { Screen.PrintGame(game); Console.Write("Origem: "); Position source = Screen.ReadChessPosition().ToPosition(); game.ValidateSourcePosition(source); bool[,] posibleMovements = game.Board.Piece(source).PossibleMovements(); Console.Clear(); Screen.PrintBoard(game.Board, posibleMovements); Console.WriteLine(); Console.Write("Destino: "); Position destination = Screen.ReadChessPosition().ToPosition(); game.ValidateDestinationPosition(source, destination); game.MakePlay(source, destination); } catch (BoardException e) { Console.WriteLine(e.Message); Console.ReadLine(); } Screen.PrintGame(game); } } catch (BoardException e) { Console.WriteLine(e.Message); } //ChessPosition pos = new ChessPosition('a', 1); //Console.WriteLine(pos); //Console.WriteLine(pos.ToPosition()); }
static void Main(string[] args) { try { ChessMatch match = new ChessMatch(); while (!match.Ended) { try { Console.Clear(); Screen.PrintMatch(match); Console.WriteLine(); Console.Write("Origin: "); Position origin = Screen.ReadChessPosition().ToPosition(); match.ValidateOriginPosition(origin); bool[,] possiblePositions = match.BoardOfMatch.UniquePiece(origin).PossibleMoviments(); Console.Clear(); Screen.PrintBoard(match.BoardOfMatch, possiblePositions); Console.WriteLine(); Console.Write("Destiny: "); Position destiny = Screen.ReadChessPosition().ToPosition(); match.ValidateDestinyPosition(origin, destiny); match.PerformPlay(origin, destiny); } catch (BoardException e) { Console.WriteLine(e.Message); Console.ReadLine(); } } Console.Clear(); Screen.PrintMatch(match); } catch (BoardException e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
static void Main(string[] args) { try { ChessMatch match = new ChessMatch(); while (!match.EndedMatch) { try { Console.Clear(); Console.WriteLine("User Guide: K-King; B-Bishop; H-Knight; R-Rook; Q-Queen; P-Pawn"); Screen.PrintMatch(match); Console.WriteLine(); Console.Write("Origin: "); Position origin = Screen.ReadChessPosition().ToPosition(); match.ValidateOriginPosition(origin); bool[,] possiblePositions = match.Board.Piece(origin).PossibleMovements(); Console.Clear(); Screen.PrintBoard(match.Board, possiblePositions); Console.WriteLine(); Console.Write("Destination: "); Position destination = Screen.ReadChessPosition().ToPosition(); match.ValidateDestinationPosition(origin, destination); match.PerformMovement(origin, destination); } catch (BoardException exception) { Console.WriteLine(exception.Message); Console.WriteLine("Press Enter to continue..."); Console.ReadLine(); } } Console.Clear(); Screen.PrintMatch(match); } catch (BoardException exception) { Console.WriteLine(exception.Message); } }