static void Main(string[] args) { try { PartidaDeXadrez partida = new PartidaDeXadrez(); while (!partida.terminada) { try { Console.Clear(); Tela.imprimirPartida(partida); Console.WriteLine(); Console.WriteLine("Origem:"); Posicao origem = Tela.LerPosicaoXadrez(); partida.ValidaPosicaoOrigem(origem); Console.Clear(); bool[,] posicoesPossiveis = partida.tab.peca(origem).MovimentosPossiveis(); Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis); Console.WriteLine("Destino:"); Posicao destino = Tela.LerPosicaoXadrez(); partida.ValidaPosicaoDestino(origem, destino); partida.RealizaJogada(origem, destino); } catch (TabuleiroException ex) { Console.WriteLine(ex.Message + ". Aperte enter para continuar..."); Console.ReadLine(); } } } catch (TabuleiroException ex) { Console.WriteLine(ex.Message); } catch (Exception ex) { Console.WriteLine(ex.Message); } }