static void Main(string[] args) { try { PartidaDeXadrez partida = new PartidaDeXadrez(); while (partida.terminada == false) { try { Console.Clear(); Tela.imprimirPartida(partida); Console.WriteLine(); Console.Write("ORIGEM: "); Posicao origem = Tela.lerPosicaoXadrez().toPosicao(); partida.validarPosicaoDeOrigem(origem); //mostrar o tabuleiro marcado com os possiveis movimentos da peça bool[,] possiveisMovimentosMarcados = partida.tab.peca(origem).movimentosPossiveis(); Console.Clear(); Tela.imprimirTabuleiro(partida.tab, possiveisMovimentosMarcados); Console.WriteLine(); Console.Write("DESTINO: "); Posicao destino = Tela.lerPosicaoXadrez().toPosicao(); partida.validarposicaoDeDestino(origem, destino); partida.realizaJogada(origem, destino); }catch (TabuleiroException e) { Console.WriteLine(e.Message); Console.ReadLine(); } } Console.Clear(); Tela.imprimirPartida(partida); } catch (TabuleiroException e) { Console.WriteLine(e.Message); } Console.ReadKey(); }