示例#1
0
        private static void imprimePecasCap(Partida partida)
        {
            Console.Write("Peças Capturadas:" + "\n" + "Brancas:");
            imprimirConjunto(partida.pecasCapturadas(Cor.Branca));
            Console.Write("Pretas:");
            ConsoleColor aux = Console.ForegroundColor;

            Console.ForegroundColor = ConsoleColor.Green;
            imprimirConjunto(partida.pecasCapturadas(Cor.Preta));
            Console.ForegroundColor = aux;
            Console.WriteLine();
        }
示例#2
0
        static void Main(string[] args)
        {
            try
            {
                Partida partida = new Partida();

                while (!partida.terminou)
                {
                    try
                    {
                        Console.Clear();
                        Tela.imprimirPartida(partida);
                        Console.Write("Digite a posição de origem: ");

                        Posicao origem = Tela.lerPosXadrez().toPosition();
                        partida.validarOrigem(origem);
                        bool[,] possiveispos = partida.tab.peca(origem).possiveisMove();
                        Console.Clear();
                        Tela.imprimirTabu(partida.tab, possiveispos);
                        Console.WriteLine();
                        Console.Write("Digite a posição de destino: ");
                        Posicao destino = Tela.lerPosXadrez().toPosition();
                        partida.validarDestino(origem, destino);
                        partida.realizaJogada(origem, destino);
                    }
                    catch (TabuleiroException e)
                    {
                        Console.WriteLine(e.Message);
                        Console.ReadLine();
                    }
                    catch (IndexOutOfRangeException)
                    {
                        Console.WriteLine("Valores de posição inválido");
                        Console.ReadLine();
                    }
                    catch (FormatException)
                    {
                        Console.WriteLine("Formato de dado inválido");
                        Console.ReadLine();
                    }
                }
                Console.Clear();
                Tela.imprimirPartida(partida);
            }
            catch (TabuleiroException e)
            { Console.WriteLine(e.Message); }
            catch (FormatException e)
            { Console.WriteLine(e.Message); }
        }
示例#3
0
        public static void ImprimirCapturadas(Partida game)
        {
            Console.WriteLine("\nPeças Capturadas: ");
            Console.Write("Amarelas: ");
            ConsoleColor aux = Console.ForegroundColor;

            Console.ForegroundColor = ConsoleColor.Yellow;
            ImprimirConjunto(game.ListaCapturadas(Cor.Amarela));
            Console.ForegroundColor = aux;

            Console.Write("\nRosas: ");
            Console.ForegroundColor = ConsoleColor.Magenta;
            ImprimirConjunto(game.ListaCapturadas(Cor.Rosa));
            Console.ForegroundColor = aux;
        }
示例#4
0
        public static void ImprimirPecasCapturadas(Partida partida)
        {
            Console.WriteLine("Peças capturadas: ");
            ConsoleColor aux = Console.ForegroundColor;

            Console.ForegroundColor = ConsoleColor.White;
            Console.Write("Brancas: ");
            ImprimirConjunto(partida.PecasCapturadas(Cor.Branco));
            Console.WriteLine();

            Console.ForegroundColor = ConsoleColor.Blue;
            Console.Write("Pretas: ");
            ImprimirConjunto(partida.PecasCapturadas(Cor.Preto));
            Console.ForegroundColor = aux;
            Console.WriteLine();
        }
示例#5
0
        static void Main(string[] args)
        {
            try
            {
                Partida partida = new Partida();

                while (!partida.terminada)
                {
                    try
                    {
                        Console.Clear();
                        Tela.imprimirPartida(partida);

                        Console.WriteLine();
                        Console.Write("Posição de 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("Posição de Destino: ");
                        Posicao destino = Tela.lerPosicaoXadrez().ToPosicao();
                        partida.validarPosicaoDestino(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);
            }

            Console.ReadLine();
        }
示例#6
0
 public static void imprimirPartida(Partida partida)
 {
     Tela.imprimirTabu(partida.tab);
     Console.WriteLine();
     imprimePecasCap(partida);
     Console.WriteLine("Turno:{0}", partida.turno);
     if (!partida.terminou)
     {
         Console.WriteLine("Aguardando movimento das peças:{0}", partida.jogadorAtual);
         if (partida.xeque)
         {
             Console.WriteLine("XEQUE!");
         }
     }
     else
     {
         Console.WriteLine("Xeque mate a peça " + partida.jogadorAtual + " venceu o jogo");
     }
 }
示例#7
0
        static void Main(string[] args)
        {
            Partida partida = new Partida();

            do
            {
                try
                {
                    Console.Clear();
                    Tela.exibirTabuleiro(partida._TabuleiroPartida);
                    Console.WriteLine();
                    Console.WriteLine("\nRodada n°: " + partida._rodada + "\n");
                    Tela.cemiterio(partida);
                    Console.WriteLine();
                    if (partida.xeque == true)
                    {
                        Console.WriteLine("XEQUE!");
                    }
                    Console.WriteLine("\nAguardando jogador: " + partida._jogador);

                    Console.WriteLine("\nEscolha a posição da peça a ser movimentada: ");
                    Posicao inicial = Tela.jogada().toPosicao();
                    partida.validarPosInicial(inicial);
                    bool[,] movPossiveis = partida._TabuleiroPartida.peca(inicial).movimentosPossiveis();

                    Console.Clear();
                    Tela.exibirTabuleiro(partida._TabuleiroPartida, movPossiveis);


                    Console.WriteLine("\nEscolha a posição de destino: ");
                    Posicao final = Tela.jogada().toPosicao();
                    partida.validarPosFinal(inicial, final);
                    partida.realizarJogada(inicial, final);
                    Tela.exibirTabuleiro(partida._TabuleiroPartida);
                }
                catch (ExceptionsTabuleiro e)
                {
                    Console.WriteLine(e.Message);
                    Console.ReadLine();
                }
            } while (partida._fim != true);
        }
示例#8
0
        public static void imprimirPartida(Partida partida)
        {
            ImprimirTabuleiro(partida.Tab);
            ImprimirPecasCapturadas(partida);
            Console.WriteLine();
            Console.WriteLine("Turno: " + partida.Turno);

            if (!partida.Final)
            {
                Console.WriteLine("Aguardando jogador: " + partida.JogadorAtual);
                if (partida.Xeque)
                {
                    Console.Write("Xeque!");
                }
            }
            else
            {
                Console.WriteLine("Xequemate.");
            }
        }
示例#9
0
        static void Main(string[] args)
        {
            try
            {
                Partida partida = new Partida();

                while (!partida.Terminada)
                {
                    Console.Clear();
                    Tela.ImprimirTabuleiro(partida.tab);

                    Console.Write("Origem: ");
                    Posicao origem = Tela.LerPosicaoXadrez().ToPosicao();
                    Console.Write("Destino: ");
                    Posicao destino = Tela.LerPosicaoXadrez().ToPosicao();

                    partida.ExecutaMovimento(origem, destino);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
示例#10
0
文件: Peao.cs 项目: ozMoreira/CSharp
 public Peao(TabuleiroJogo tab, Cor cor, Partida partida)
     : base(tab, cor)
 {
     this.partida = partida;
 }
示例#11
0
        static void Main(string[] args)
        {
            //Testando class Posição
            //Posicao posicao = new Posicao(4,5);
            //Console.WriteLine(posicao);



            /*
             * Testando a class PosicaoXadrez
             * PosicaoXadrez posicaoXadrez = new PosicaoXadrez('c', 7);
             * Console.WriteLine(posicaoXadrez.ToPosicao());
             * Console.WriteLine(posicaoXadrez);
             *
             */

            //Testando metodo para posicionar peças
            try
            {
                //Testando a class Tabuleiro
                Partida partida = new Partida();


                while (!partida.Final)
                {
                    try
                    {
                        Console.Clear();
                        Tela.imprimirPartida(partida);

                        Console.WriteLine();
                        Console.Write("Origem: ");
                        Posicao origem = Tela.CapturarLetra().ToPosicao();
                        partida.ValidarPosicaoOrigem(origem);
                        bool[,] posicoesPosiveis = partida.Tab.Peca(origem).MovimentosPossiveis();


                        //Marcar os caminhos livres
                        Console.Clear();
                        Tela.ImprimirTabuleiro(partida.Tab, posicoesPosiveis);

                        Console.WriteLine();
                        Console.Write("Destino: ");
                        Posicao destino = Tela.CapturarLetra().ToPosicao();
                        partida.ValidarPosicaoDestino(origem, destino);


                        partida.AlterarMovimentosTurno(origem, destino);
                    }
                    catch (DomainExeptions erros)
                    {
                        Console.WriteLine(erros.Message);
                        Console.Write("Digite qualquer tecla para tentar novamente.");
                        Console.ReadLine();
                    }
                }
                Console.Clear();
                Tela.imprimirPartida(partida);
            }
            catch (DomainExeptions execao)
            {
                Console.WriteLine("Erro: " + execao.Message);
            }
        }