static void Main(string[] args) { try { MatchChess partida = new MatchChess(); while (!partida.terminada) { try { Console.Clear(); Screem.imprimirPartida(partida); Console.WriteLine(); Console.Write("Origem: "); Position origem = Screem.lerPosicaoXadrez().toPosicao(); partida.validarPosicaoDeOrigem(origem); bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentosPossiveis(); Console.Clear(); Screem.imprimirTabuleiro(partida.tab, posicoesPossiveis); Console.WriteLine(); Console.Write("Destino: "); Position destino = Screem.lerPosicaoXadrez().toPosicao(); partida.validarPosicaoDeDestino(origem, destino); partida.realizaJogada(origem, destino); } catch (BoardExceptions e) { Console.WriteLine(e.Message); Console.ReadLine(); } } Screem.imprimirTabuleiro(partida.tab); } catch (BoardExceptions e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
public static void imprimirPecasCapturadas(MatchChess partida) { Console.WriteLine("Peças capturadas:"); Console.Write("Brancas: "); imprimirConjunto(partida.pecasCapturadas(Color.Branca)); Console.WriteLine(); ConsoleColor aux = Console.ForegroundColor; Console.Write("Pretas: ");; Console.ForegroundColor = ConsoleColor.Yellow; imprimirConjunto(partida.pecasCapturadas(Color.Preta)); Console.ForegroundColor = aux; Console.WriteLine(); }
public static void imprimirPartida(MatchChess partida) { imprimirTabuleiro(partida.tab); Console.WriteLine(); imprimirPecasCapturadas(partida); Console.WriteLine(); Console.WriteLine("Turno: " + partida.turno); if (!partida.terminada) { Console.WriteLine("Aguardando jogada: " + partida.jogadorAtual); if (partida.xeque) { Console.WriteLine(); Console.WriteLine("XEQUE!"); } } else { Console.WriteLine(); Console.WriteLine("XEQUEMATE!"); Console.WriteLine("Vencedor: " + partida.jogadorAtual); } }