static void Main(string[] args) { #region Primeiro teste try { Tabuleiro tab = new Tabuleiro(8, 8); tab.colocarPeca(new Torre(tab, Cor.preta), new Posicao(0, 0)); tab.colocarPeca(new Torre(tab, Cor.preta), new Posicao(1, 7)); tab.colocarPeca(new Rei(tab, Cor.preta), new Posicao(0, 2)); tab.colocarPeca(new Rei(tab, Cor.Branca), new Posicao(1, 2)); Tela.imprimirTabulerio(tab); } catch (TabuleiroException e) { Console.WriteLine(e.Message); } #endregion /* * PosicaoXadrez pos = new PosicaoXadrez('a', 1); * Console.WriteLine(pos); * Console.WriteLine(pos.toPosicao()); * */ Console.ReadKey(); }
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.validarPosicaoOrigem(origem); bool[,] posicoesPossiveis = partida.Tab.peca(origem).movimentosPossiveis(); Console.Clear(); Tela.imprimirTabulerio(partida.Tab, posicoesPossiveis); Console.WriteLine(); Console.Write("Destido: "); Posicao destino = Tela.lerPosicaoXadrez().toPosicao(); partida.validarPosicaoDestino(origem, destino); partida.realizaJogada(origem, destino); } catch (TabuleiroException e) { Console.WriteLine(e.Message); Console.ReadLine(); } catch (Exception e) { Console.WriteLine(e.Message); Console.ReadLine(); } } Console.Clear(); Tela.imprimirPartida(partida); } catch (TabuleiroException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } }
public static void imprimirPartida(PartidaDeXadrez partida) { Tela.imprimirTabulerio(partida.Tab); Console.WriteLine(); imprimmirPecasCapturadas(partida); Console.WriteLine("Turno: " + partida.Turno); if (!partida.Terminada) { Console.WriteLine("Aguardando jogada: " + partida.JogadorAtual); if (partida.Xeque) { Console.WriteLine("VOCÊ ESTÁ EM XEQUE!"); } } else { Console.WriteLine("XEQUEMATE!"); Console.WriteLine("Vencedor: " + partida.JogadorAtual); } }