static void Main(string[] args) { try { PartidaDeXadrez partida = new PartidaDeXadrez(); while (!partida.terminada) { try { Console.Clear(); Tela.imprimirPartida(partida); Console.WriteLine(); Console.Write("Origem: "); Posicao origem = Tela.lerPosicaoXadrez().toPosicao(); partida.validarPosicaoDeOrigem(origem); bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentosPossiveis(); Console.Clear(); Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis); 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(); } catch (Exception e) { Console.WriteLine("Erro inesperado: " + e.Message); Console.ReadLine(); } } Console.Clear(); Tela.imprimirPartida(partida); } catch (TabuleiroException e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
static void Main(string[] args) { try { PartidaDeXadrez partida = new PartidaDeXadrez(); while (!partida.terminada) { try { /*Tela.imprimirTabuleiro(partida.tab); * Console.WriteLine(); * Console.WriteLine("Turno: " + partida.turno); * Console.WriteLine("Aguardando jogada: " + partida.jogadorAtual); */ Console.Clear(); Tela.imprimirPartida(partida); Console.Write("Origem: "); Posicao origem = Tela.lerPosicaoXadrez().toPosicao(); partida.validarPosicaoDeOrigem(origem); bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentosPossiveis(); Console.Clear(); Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis); Console.Write("Destino: "); Posicao destino = Tela.lerPosicaoXadrez().toPosicao(); partida.validarPosicaoDeDestino(origem, destino); partida.realizaJogada(origem, destino); } catch (TabuleiroExcecao e) { Console.WriteLine(e.Message); Console.WriteLine("Repita a Jogada!"); Console.ReadLine(); } } Console.Clear(); Tela.imprimirPartida(partida); //Tela.imprimirTabuleiro(partida.tab); /* * Tabuleiro tabuleiro = new Tabuleiro(8, 8); * tabuleiro.colocarPeca(new Torre(tabuleiro, Cor.Preta), new Posicao(0, 0)); * tabuleiro.colocarPeca(new Torre(tabuleiro, Cor.Preta), new Posicao(1, 3)); * tabuleiro.colocarPeca(new Rei(tabuleiro, Cor.Preta), new Posicao(2, 4)); * tabuleiro.colocarPeca(new Rei(tabuleiro, Cor.Branca), new Posicao(3, 5)); * Tela.imprimirTabuleiro(tabuleiro); */ } catch (TabuleiroExcecao e) { Console.WriteLine(e.Message); } Console.ReadKey(); }