public static void ImprimirPecasCapturadas(PertidaDeXadrez partida) { Console.WriteLine("Peças capturadas:"); Console.Write("Brancas:"); ImprimirConjunto(partida.PegarPecasCapturadas(Cor.Branca)); Console.WriteLine(); Console.Write("Pretas:"); ConsoleColor corAtual = Console.ForegroundColor; Console.ForegroundColor = ConsoleColor.Yellow; ImprimirConjunto(partida.PegarPecasCapturadas(Cor.Preta)); Console.ForegroundColor = corAtual; Console.WriteLine(); }
static void Main(string[] args) { try { PertidaDeXadrez partida = new PertidaDeXadrez(); while (!partida.PartidaTerminada) { try { Console.Clear(); Tela.ImprimirPartida(partida); Console.WriteLine(); Console.Write("Digite a posição de origem:"); Posicao posicaoOrigem = Tela.LerPosicaoXadrez().ToPosicao(); partida.ValidarPosicaoOrigem(posicaoOrigem); bool[,] posicoesPossiveis = partida.Tabuleiro.Peca(posicaoOrigem).MovimentosPossiveis(); Console.Clear(); Tela.ImprimirTabuleiro(partida.Tabuleiro, posicoesPossiveis); Console.WriteLine(); Console.Write("Digite a posição de destino:"); Posicao posicaoDestino = Tela.LerPosicaoXadrez().ToPosicao(); partida.ValidarPosicaoDestino(posicaoOrigem, posicaoDestino); partida.RelizaJogada(posicaoOrigem, posicaoDestino); } catch (TabuleiroException e) { Console.WriteLine(e.Message); Console.ReadLine(); } } } catch (TabuleiroException e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
public static void ImprimirPartida(PertidaDeXadrez partida) { ImprimirTabuleiro(partida.Tabuleiro); Console.WriteLine(); ImprimirPecasCapturadas(partida); Console.WriteLine(); Console.WriteLine("Turno: " + partida.Turno); if (!partida.PartidaTerminada) { Console.WriteLine("Aguardando jogada: " + partida.JogadorAtual); if (partida.PartidaEmXeque) { Console.WriteLine("XEQUE!!"); } } else { Console.WriteLine("XEQUE MATE!!"); } }