コード例 #1
0
        public bool Jogar(int posicao, out ValidacaoDaJogada validacao)
        {
            bool retorno = false;

            validacao = ValidacaoDaJogada.JogadaValida;

            if (Status == Dominio.Status.Acabado)
            {
                validacao = ValidacaoDaJogada.JogoAcabado; retorno = false;
            }
            else if (Casas[posicao] != Marca.Vazio)
            {
                validacao = ValidacaoDaJogada.PosicaoJaMarcada; retorno = false;
            }
            else
            {
                retorno              = true;
                validacao            = ValidacaoDaJogada.JogadaValida;
                Casas[posicao].Marca = MarcaDaRodada;

                if (Status == Dominio.Status.Rodando)
                {
                    PassarRodada();
                    JogadorDaRodada.Jogar(this);
                }
                else
                {
                    Jogador1.ObservarFimDaJogada(this);
                    Jogador2.ObservarFimDaJogada(this);
                    AtualizarPlacar();
                }
            }

            return(retorno);
        }
コード例 #2
0
        private string OberTextoDeValidacao(ValidacaoDaJogada validacao)
        {
            string texto = "";

            switch (validacao)
            {
            case ValidacaoDaJogada.JogadaValida:
                texto = "";
                break;

            case ValidacaoDaJogada.PosicaoJaMarcada:
                texto = "Esta posição no tabuleiro já foi marcada. Marque outra por favor.";
                break;

            case ValidacaoDaJogada.JogoAcabado:
                texto = "Fim de Jogo.";
                break;

            default:
                texto = "Ops! Validacao não tratada.";
                break;
            }

            return(texto);
        }
コード例 #3
0
        public bool Jogar(int linha, int coluna, out ValidacaoDaJogada validacao)
        {
            int posicaoUnidimensional = ((linha - 1) * Escala) + coluna;

            return(Jogar(posicaoUnidimensional, out validacao));
        }