예제 #1
0
        public void GerarCarta()
        {
            if (RPCDeJogadores.DeveUsarRPC())
            {
                RPCDeJogadores.UsarRPC("RPC_GerarCarta");
                return;
            }

            Debug.Log("GerarCarta()");

            float     rand = Random.value;
            TiposCasa carta;

            if (rand <= 0.1f) // 10%
            {
                carta = TiposCasa.BemMal;
                _painelCartas.MudaDescricao(carta, "Benção ou Maldição");
            }
            else if (rand <= 0.2f) // 10%
            {
                carta = TiposCasa.Garrafa;
            }
            else if (rand <= 0.35f) // 15%
            {
                carta = TiposCasa.Acontecimento;
                _painelCartas.MudaDescricao(carta, "Acontecimento Aleatório");
            }
            else if (rand <= 0.50f) // 15%
            {
                carta = TiposCasa.PowerUp;
                _painelCartas.MudaDescricao(carta, "Melhoramento Aleatório");
            }
            else if (rand <= 0.85f) // 35%
            {
                carta = TiposCasa.Moeda;
            }
            else // 15%
            {
                carta = TiposCasa.MiniJogo;
            }

            _escolheRota.estadoPowerUp = true;
            _escolheRota.AlteraEstadoPowerUps();

            PainelCartas.MostrarCarta(carta);

            _gerenPartida.MoverJogador((int)carta);
        }
예제 #2
0
        public void escolheJogador()
        {
            if (RPCDeJogadores.DeveUsarRPC())
            {
                RPCDeJogadores.UsarRPC("RPC_escolheJogador");
                return;
            }

            int qtdJogadores = GerenciadorGeral.qtdJogadores;

            jogadorEscolhido++;
            jogadorEscolhido %= qtdJogadores;

            if (jogadorEscolhido == GerenciadorPartida.Turno)
            {
                jogadorEscolhido = ++jogadorEscolhido % qtdJogadores;
            }

            textoBtn.text = "Jogador " + (jogadorEscolhido + 1);
        }
예제 #3
0
        public void AtivarPowerUp()
        {
            if (RPCDeJogadores.DeveUsarRPC())
            {
                RPCDeJogadores.UsarRPC("RPC_AtivarPowerUp");
                return;
            }

            if (jogadorEscolhido != -1)
            {
                pnlEscolherJogador.SetActive(false);
                _escolheRota.AlteraEstadoPowerUps();

                MethodInfo metodo = GetType().GetMethod(powerUpEscolhido.ToString());

                metodo.Invoke(this, null);

                GerenciadorPartida gp = FindObjectOfType <GerenciadorPartida>();
                gp.NovaRodada();
            }
        }