static void Main(string[] args) { PartidaXadrez match = new PartidaXadrez(); while (!match.Terminada) { try { Tela.ImprimirPartida(match); Console.Write("Origem: "); Posicao origem = Tela.LerPosicaoXadrez().ToPosicao(); match.ValidarOrigem(origem); Console.Clear(); bool[,] mat = match.Tab.Peca(origem).MovimentosPossiveis(); Tela.ImprimirTabuleiro(match.Tab, mat); Console.WriteLine(); Console.Write("Destino: "); Posicao destino = Tela.LerPosicaoXadrez().ToPosicao(); match.ValidarDestino(origem, destino); match.RealizaJogada(origem, destino); } catch (Exception ex) { Console.WriteLine(ex.Message); Console.ReadLine(); } } Console.ReadLine(); }
static void Main(string[] args) { try { PartidaXadrez partida = new PartidaXadrez(); while (!partida.Terminada) { try { Console.Clear(); Tela.ImprimirPartida(partida); Console.WriteLine(); Console.Write("\nDigtie a origem: "); Posicao origem = Tela.LerPosicaoXadrez().ConvertPosition(); partida.ValidarOrigem(origem); Console.Clear(); bool[,] posicoesPossiveis = partida.Tab.PegaPeca(origem).MovimentosPossiveis(); Tela.ImprimirTabuleiro(partida.Tab, posicoesPossiveis); Console.Write("\nDestino: "); Posicao destino = Tela.LerPosicaoXadrez().ConvertPosition(); partida.ValidaDestino(origem, destino); partida.RealizaJogada(origem, destino); } catch (GameBoardException e) { Console.WriteLine("Chess game error: " + e.Message); Console.ReadLine(); } } Console.Clear(); Tela.ImprimirPartida(partida); } catch (GameBoardException e) { Console.WriteLine("Chess game error: " + e.Message); Console.ReadLine(); } catch (Exception e) { Console.WriteLine("Error: " + e.Message); } }