static void Main(string[] args) { try { ChassMatch match = new ChassMatch(); while (!match.Finish) { try { Console.Clear(); Screen.printMatch(match); Console.WriteLine(); Console.Write("Origem: "); Position origin = Screen.readPositionChass().toPosition(); match.validPositionOrigin(origin); bool[,] possiblesPositions = match.board.piece(origin).possiblesMoviments(); Console.Clear(); Screen.printBoard(match.board, possiblesPositions); Console.WriteLine("+=+=+=+=+=+=+"); Console.Write("Destino: "); Position arrived = Screen.readPositionChass().toPosition(); match.validPositionArrived(origin, arrived); match.Move(origin, arrived); } catch (BoardException e) { Console.WriteLine(e.Message + " Enter para repetir a jogada."); Console.ReadLine(); } } Console.Clear(); Screen.printMatch(match); } catch (BoardException e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
public static void printPiecesCaptureds(ChassMatch match) { Console.WriteLine("Peças capturadas:"); Console.Write("Brancas: "); ConsoleColor aux1 = Console.ForegroundColor; Console.ForegroundColor = ConsoleColor.Blue; printCollection(match.piecesCaptured(Color.White)); Console.ForegroundColor = aux1; Console.WriteLine(); Console.Write("Pretas: "); ConsoleColor aux = Console.ForegroundColor; Console.ForegroundColor = ConsoleColor.Red; printCollection(match.piecesCaptured(Color.Black)); Console.ForegroundColor = aux; }
public static void printMatch(ChassMatch match) { Console.WriteLine("PARTIDA DE XADREZ!"); Console.WriteLine("+=+=+=+=+=+=+=+=+"); printBoard(match.board); Console.WriteLine("+=+=+=+=+=+=+=+=+"); printPiecesCaptureds(match); Console.WriteLine("+=+=+=+=+=+=+=+=+"); Console.WriteLine("Turno: " + match.Shifit); if (!match.Finish) { Console.WriteLine("Aguardando jogada: " + match.CurrentPlayer); if (match.xeque) { Console.WriteLine("XEQUE!"); } } else { Console.WriteLine("XEQUEMATE!"); Console.WriteLine("Vencedor: " + match.CurrentPlayer); } }