static void Main(string[] args) { try { PartidaXadrez partida = new PartidaXadrez(); while (!partida.Terminada) { try { Console.Clear(); Tela.ImprimirPartida(partida); Console.WriteLine(); Console.Write("Origem: "); Posicao origem = Tela.LerPosicaoXadez().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.LerPosicaoXadez().ToPosicao(); partida.ValidarPosDestino(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); } }
static void Main(string[] args) { try { PartidaXadrez partida = new PartidaXadrez(); while (!partida.terminada) { try { Console.Clear(); Tela.imprimirPartida(partida); Console.WriteLine(); Console.Write("Origem: "); Posicao origem = Tela.lerPosicaoXadrez().toPosicao(); partida.ValidarPosOrigem(origem); bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentosPossiveis(); //Armazena as possiveis posicoes para poder destacar Console.Clear(); Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis); Console.WriteLine(); Console.Write("Destino: "); Posicao destino = Tela.lerPosicaoXadrez().toPosicao(); partida.ValidarPosDestino(origem, destino); partida.RealizaJogada(origem, destino); } catch (ExceptionTabuleiro e) { Console.WriteLine(e.Message); Console.ReadLine(); } } Console.Clear(); Tela.imprimirPartida(partida); } catch (ExceptionTabuleiro e) { Console.WriteLine(e.Message); } }