public static void ImprimirPecasCapturadas(PartidaDeXadez partida) { Console.WriteLine("Pecas capturadas: "); Console.Write("Brancas: "); ImprimirConjuntos(partida.PecasCapturadas(Cor.Branca)); Console.WriteLine(); Console.Write("Pretas: "); ConsoleColor aux = Console.ForegroundColor; Console.ForegroundColor = ConsoleColor.Yellow; ImprimirConjuntos(partida.PecasCapturadas(Cor.Preta)); Console.ForegroundColor = aux; Console.WriteLine(); }
static void Main() { try { PartidaDeXadez partida = new PartidaDeXadez(); while (!partida.Terminada) { try { Console.Clear(); Tela.ImprimirParida(partida); Console.WriteLine(); Console.Write("Origem: "); Posicao origem = Tela.lerPosicaoXadrez().ToPosicao(); partida.ValidarPosicaoOrigem(origem); bool[,] posicoesPossiveis = partida.Tab.Peca(origem).MovimentosPossiveis(); Console.Clear(); Tela.ImprimirTabuleiro(partida.Tab, posicoesPossiveis); Console.WriteLine(); Console.Write("Destino: "); Posicao destino = Tela.lerPosicaoXadrez().ToPosicao(); partida.ValidarPosicaoDestino(origem, destino); partida.RealizarJogada(origem, destino); } catch (TabuleiroException e) { Console.WriteLine(e.Message); Console.ReadLine(); } } Console.Clear(); Tela.ImprimirParida(partida); } catch (TabuleiroException e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
public static void ImprimirParida(PartidaDeXadez 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("XEQUE"); } } else { Console.WriteLine("XEQUEMATE!!"); Console.WriteLine($"Vencedor: {partida.JogadorAtual}"); } }