Пример #1
0
    public void Destruir()
    {
        MesaBehaviour mesa = transform.parent.transform.parent.GetComponent <MesaBehaviour>();

        mesa.SetAnimacao(mesa.distanciamentoCartasMaximo);
        Destroy(this.transform.parent.gameObject);
    }
Пример #2
0
    //player no caso é a vida dele e não os das suas cartas
    public void AtacarPlayer(int posicaoAtacador)
    {
        MesaBehaviour defensor = transform.GetChild(2).GetComponent <MesaBehaviour>();

        defensor.cartas[posicaoAtacador].transform.GetChild(0).GetComponent <CartaNaMesa>().QuantidadeAtaque--;
        defensor.cartas[posicaoAtacador].transform.GetComponent <Animator>().SetTrigger("Atacar");
        StartCoroutine(DarDanoInimigo(defensor.cartas[posicaoAtacador]));
    }
Пример #3
0
    public void TirarCarta(int a)
    {
        CartaInimigo  atributos = maoAdversaria[a].GetComponent <CartaInimigo>();
        MesaBehaviour mesa      = transform.GetChild(2).GetComponent <MesaBehaviour>();

        CartaSegurada = maoAdversaria[a];
        distanciamentoCartasMaximo -= 10;
        maoAdversaria[a].GetComponent <Animator>().SetBool("autoDestruir", true);
        maoAdversaria.RemoveAt(a);
        SetAnimacao(distanciamentoCartasMaximo);
    }
Пример #4
0
    public void ColocarCartaBaralho(string id)
    {
        MesaBehaviour mesa    = transform.GetChild(2).GetComponent <MesaBehaviour>();
        Card          refCard = Resources.Load <Card>("InformacoesCartas/" + id);

        mesa.CriarCartaInicio(refCard.dano, refCard.vida,
                              Resources.Load <Sprite>("CartasProntas/" + id),
                              refCard.ativarPassivaQuando,
                              new PassivaComulativa(refCard.quantidadePassiva, refCard.passiva),
                              refCard.alvoDaPassiva, refCard.SomEmMorte);
        if (refCard.SomNaEntrada != null && refCard.SomNaEntrada.Length > 0)
        {
            GetComponent <Mao>().som.PlayOneShot(refCard.SomNaEntrada[Random.Range(0, refCard.SomNaEntrada.Length)]);
        }
    }
Пример #5
0
    //posicao atacar é o index do atacador na mesa do baralho inimigo e posicao inimigo
    //é a posicao da carta do player que sera atacada
    public void AtacarCarta(int posicaoAtacar, int posicaoInimigo)
    {
        MesaBehaviour atacante = transform.GetChild(2).GetComponent <MesaBehaviour>();
        MesaBehaviour defensor = transform.GetChild(1).GetComponent <MesaBehaviour>();

        //if redundante
        if (atacante.cartas.Count > 0 && defensor.cartas.Count > 0)
        {
            CartaNaMesa refCard      = atacante.cartas[posicaoAtacar].transform.GetChild(0).GetComponent <CartaNaMesa>();
            CartaNaMesa enemyRefCard = defensor.cartas[posicaoInimigo].transform.GetChild(0).GetComponent <CartaNaMesa>();
            refCard.QuantidadeAtaque--;
            // passiva do inimigo quando atacado se inicia primeiro do que quando a carta ataca primeiro
            switch (enemyRefCard.AtivarPassivaQuando)
            {
            case Evento.CartaRecebeuDano:
                if (enemyRefCard.Alvo != AlvoPassiva.CartaQueAtacou)
                {
                    this.gameObject.GetComponent <EventControllerBehaviour>().RealizarPassivaEm(enemyRefCard.Passiva, enemyRefCard.Alvo, false, defensor.cartas[posicaoInimigo].gameObject);
                }
                else
                {
                    this.gameObject.GetComponent <EventControllerBehaviour>().RealizarPassivaEm(enemyRefCard.Passiva, atacante.cartas[posicaoAtacar].gameObject, false, defensor.cartas[posicaoInimigo].gameObject);
                }
                break;
            }
            switch (refCard.AtivarPassivaQuando)
            {
            case Evento.CartaAtaque:
                if (!(refCard.Alvo == AlvoPassiva.CartaAtacada))
                {
                    this.gameObject.GetComponent <EventControllerBehaviour>().RealizarPassivaEm(refCard.Passiva, refCard.Alvo, true, atacante.cartas[posicaoAtacar].gameObject);
                }
                else
                {
                    this.gameObject.GetComponent <EventControllerBehaviour>().RealizarPassivaEm(refCard.Passiva, defensor.cartas[posicaoInimigo].gameObject, true, atacante.cartas[posicaoAtacar].gameObject);
                }
                // nao testei esse else

                break;
            }
            atacante.cartas[posicaoAtacar].transform.GetComponent <Animator>().SetTrigger("Atacar");
            StartCoroutine(DarDano(defensor.cartas[posicaoInimigo], atacante.cartas[posicaoAtacar]));
        }
    }
    private void Start()
    {
        testandoNoEditor = false;

        DefinirPlayerIdJogadores();

        PlayerHost.PedidoMulliganHost();
        //botao.transform.GetChild(0).GetComponent<Text>().text = "INICIAR";
        turno = Turnos.DecidirIniciante;

        Inimigo = GetComponent <PlayerAdversario>();
        Player  = GetComponent <Mao>();

        ouroLimite = 10;
        ouroMaximo = 1;

        Player.SetarGold(ouroMaximo);
        Inimigo.SetarGold(ouroMaximo);

        CartasInimigo = transform.GetChild(2).GetComponent <MesaBehaviour>();
        CartasPlayer  = transform.GetChild(1).GetComponent <MesaBehaviour>();

        preparado = true;
    }