Example #1
0
        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();
                    }
                }
                Console.Clear();
                Tela.imprimirPartida(partida);
            }

            catch (TabuleiroException e)
            {
                Console.WriteLine(e.Message);
            }

            Console.WriteLine();
        }
Example #2
0
        static void Main(string[] args)
        {
            try
            {
                PartidaDeXadrez partida = new PartidaDeXadrez();

                while (!partida.terminada)
                {
                    try
                    {
                        Console.Clear();
                        Tela.imprimirPartida(partida);
                        Console.WriteLine(); Console.WriteLine();
                        Console.Write("Peça a mover: ");
                        Posicao origem = Tela.lerPosicaoXadrez().toPosicao();
                        partida.validarPosicaoDeOrigem(origem);

                        // mostrar posições possiveis para a peça escolhida para mover
                        bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentosPossiveis();
                        Console.Clear();
                        Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis);
                        Console.WriteLine(); Console.WriteLine();


                        Console.Write("Destino da Peça: ");
                        Posicao destino = Tela.lerPosicaoXadrez().toPosicao();
                        partida.validarPosicaoDeDestino(origem, destino);

                        partida.realizaJogada(origem, destino);
                    }
                    catch (TabuleiroException ex)
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine(ex.Message);
                        Console.ReadLine();
                        Console.ResetColor();
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            Console.ReadLine();
        }
Example #3
0
        static void Main(string[] args)
        {
            Console.SetWindowSize(55, 20);
            //Console.SetWindowSize(100, 50);
            try
            {
                PartidaDeXadrez partida = new PartidaDeXadrez();

                while (!partida.terminada)
                {
                    try
                    {
                        Console.Clear();
                        Tela.imprimirPartida(partida);
                        Console.WriteLine();
                        Console.Write("Digite a posiçao de origem: ");
                        Posicao origem = Tela.lerPosicaoXadrez().toPosicao();
                        partida.validarPosicaoDeOrigem(origem);

                        //mostra uma tela com as movimentaçoes possiveis destacadas de cada peça
                        bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentosPossiveis();
                        // na classe tela foi criado outro metodo imprimir tabulero com as posicoesPossiveis como parametro.
                        Console.Clear();
                        Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis);
                        Console.WriteLine();
                        Console.Write("Digite a posição destino: ");
                        Posicao destino = Tela.lerPosicaoXadrez().toPosicao();
                        partida.validarPosicaoDeDestino(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();
        }
Example #4
0
        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(); //vai pegar a posiçao digitada na origem e armazenar na matiz posicoes.Posiveis

                        Console.Clear();
                        Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis); //vai mostrar as posições possíveis para movimento das peças

                        Console.WriteLine();
                        Console.Write("Destino: ");
                        Posicao destino = Tela.lerPosicaoXadrez().toPosicao();
                        partida.validarPosicaoDeDestino(origem, destino);//validarPosicaoDeDestino é método da classe PartidaDeXadrez

                        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();
        }
Example #5
0
        static void Main(string[] args)
        {
            try {
                PartidaDeXadrez partida = new PartidaDeXadrez();
                Tela.imprimirTabuleiro(partida.tab);

                while (!partida.terminada) // Enquanto a partida não estiver terminada
                {
                    try {
                        Console.Clear(); // Limpa a tela
                        Tela.imprimirPartida(partida);

                        Console.WriteLine();
                        Console.Write("Origem: ");
                        Posicao origem = Tela.lerPosicaoXadrez().toPosicao(); // Lê a posição e transforma ela na posição de matriz do sistema
                        partida.validarPosicaoDeOrigem(origem);

                        bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentoPossiveis();

                        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 h) {
                        Console.WriteLine(h.Message);
                        Console.WriteLine();
                    }
                }
                Console.Clear();
                Tela.imprimirPartida(partida);
            }
            catch (TabuleiroException e) {
                Console.WriteLine(e.Message);
            }
        }
        static void Main(string[] args)
        {
            try {
                PartidaDeXadrez partida = new PartidaDeXadrez();
                while (partida.terminada == false)
                {
                    try {
                        Console.Clear();
                        Tela.imprimirPartida(partida);
                        Console.WriteLine();
                        Console.Write("ORIGEM: ");
                        Posicao origem = Tela.lerPosicaoXadrez().toPosicao();
                        partida.validarPosicaoDeOrigem(origem);

                        //mostrar o tabuleiro marcado com os possiveis movimentos da peça
                        bool[,] possiveisMovimentosMarcados = partida.tab.peca(origem).movimentosPossiveis();
                        Console.Clear();
                        Tela.imprimirTabuleiro(partida.tab, possiveisMovimentosMarcados);

                        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();
                    }
                }
                Console.Clear();
                Tela.imprimirPartida(partida);
            }
            catch (TabuleiroException e) {
                Console.WriteLine(e.Message);
            }
            Console.ReadKey();
        }
Example #7
0
        static void Main(string[] args)
        {
            try {
                PartidadeXadrez Partida = new PartidadeXadrez();

                while (!Partida.Terminada)
                {
                    try {
                        Console.Clear();
                        Tela.imprimirPartida(Partida);

                        Console.Write("Digite a posição de origem :");
                        Posicao PosOrigem = Tela.LerPosicaoXadrez().ToPosicao();
                        Partida.ValidaPosicaodeOrigem(PosOrigem);

                        bool[,] posicoesPossiveis = Partida.tab.Peca(PosOrigem).MovimentosPossiveis();

                        Console.Clear();
                        Tela.imprimirTabuleiro(Partida.tab, posicoesPossiveis);

                        Console.Write("Digite a posição de destino :");
                        Posicao PosDestino = Tela.LerPosicaoXadrez().ToPosicao();

                        Partida.ValidaPosicaodeDestino(PosOrigem, PosDestino);
                        Partida.realizaJogada(PosOrigem, PosDestino);
                    }
                    catch (TabuleiroException e) {
                        Console.WriteLine(e.Message);
                        Console.ReadLine();
                    }
                }
            }
            catch (TabuleiroException e) {
                Console.WriteLine(e.Message);
            }
            Console.ReadLine();
        }
Example #8
0
        static void Main(string[] args)
        {
            try
            {
                PartidaDeXadrez partida = new PartidaDeXadrez();

                // Enquanto a partida não for terminada
                while (!partida.terminada)
                {
                    try
                    {
                        // Limpar o terminal
                        Console.Clear();

                        // Imprime tabuleiro
                        Tela.imprimirPartida(partida);

                        Console.WriteLine();

                        // Pegar a posição, e transformar ela pra posição de matriz
                        Console.Write("Origem: ");
                        Posicao origem = Tela.lerPosicaoXadrez().paraPosicao();

                        // Validando origem
                        partida.validarPosicaoDeOrigem(origem);

                        // Guardando na matriz os movimentos possíveis da peça
                        bool[,] posicoesPossiveis = partida.tab.peca(origem).movimentosPossiveis();

                        // Limpar o terminal
                        Console.Clear();

                        // Imprime tabuleiro, com os movimentos possíveis para peça
                        Tela.imprimirTabuleiro(partida.tab, posicoesPossiveis);

                        Console.WriteLine();

                        Console.Write("Destino: ");
                        Posicao destino = Tela.lerPosicaoXadrez().paraPosicao();

                        // Validando destino
                        partida.validarPosicaoDeDestino(origem, destino);

                        // E realiza a jogada
                        partida.realizaJogada(origem, destino);
                    }
                    catch (TabuleiroException e)
                    {
                        Console.WriteLine();
                        Console.WriteLine(e.Message);

                        // Esperar o jogador apertar enter para repetir a jogada
                        Console.ReadLine();
                    }
                }

                Console.Clear();
                Tela.imprimirPartida(partida);
            }
            catch (TabuleiroException e)
            {
                Console.WriteLine(e.Message);
            }

            Console.ReadLine();
        }
        static void Main(string[] args)
        {
            var cores = Enum.GetValues(typeof(Cor)).Cast <Cor>();
            int menu  = 100;
            Cor jogador1;
            Cor jogador2;

            Console.WriteLine("---  Seja bem vindo ao XADREZ ONLINE  ---");
            Console.WriteLine();
            Console.WriteLine();
            Console.WriteLine("-------------------------------------------------");
            Console.WriteLine("|               Iniciar partida                 |");
            Console.WriteLine("-------------------------------------------------");
            Console.WriteLine("-------------------------------------------------");
            Console.WriteLine("|                   Sair                        |");
            Console.WriteLine("-------------------------------------------------");
            Console.WriteLine("-------------------------------------------------");
            Console.WriteLine("| Digite 0 para sair e 1 para iniciar a partida |");
            Console.WriteLine("-------------------------------------------------");
            Console.Write("> ");
            menu = int.Parse(Console.ReadLine());

            while (menu != 0)
            {
                try
                {
                    Console.WriteLine();
                    if (menu == 1)
                    {
                        Console.WriteLine("Selecione uma das cores abaixo:");
                        Console.WriteLine();

                        foreach (Cor c in cores)
                        {
                            Console.WriteLine("------------------------");
                            Console.WriteLine($"|   Cor: {c}");
                            Console.WriteLine("------------------------");
                        }
                        Console.WriteLine();
                        Console.Write("Digite a cor para o primeiro jogador: ");
                        jogador1 = Enum.Parse <Cor>(Console.ReadLine());

                        foreach (Cor c in cores)
                        {
                            if (c != jogador1)
                            {
                                Console.WriteLine("------------------------");
                                Console.WriteLine($"|   Cor: {c}");
                                Console.WriteLine("------------------------");
                            }
                        }
                        Console.WriteLine();
                        Console.Write("Digite a cor para o segundo jogador: ");
                        jogador2 = Enum.Parse <Cor>(Console.ReadLine());

                        try
                        {
                            PartidaDeXadrez partida = new PartidaDeXadrez(jogador1, jogador2);

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

                                    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 inexperado: " + e.Message);
                                    Console.WriteLine("Pressione enter para continuar...");
                                    Console.ReadLine();
                                }
                            }
                            Console.Clear();
                            Tela.imprimirPartida(partida, jogador1, jogador2);
                        }
                        catch (TabuleiroException e)
                        {
                            Console.WriteLine(e.Message);
                        }
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine("Erro inexperado: " + e.Message);
                }

                Console.ReadLine();
            }
        }