Exemplo n.º 1
0
    public void RestablecerMana(int cantidad, GameObject objetivo)
    {
        if (objetivo.CompareTag("Player"))
        {
            HeroeBase heroe = objetivo.GetComponent <HeroeStateMachine>().heroe;
            if ((heroe.manaActual + cantidad) >= heroe.manaBase)
            {
                heroe.manaActual = heroe.manaBase;
            }
            else
            {
                heroe.manaActual += cantidad;
            }

            statHandler.ActualizarInfo();
        }
        else if (objetivo.CompareTag("Enemigo"))
        {
            EnemigoBase enemigo = objetivo.GetComponent <EnemigoStateMachine>().enemigo;
            if ((enemigo.manaActual + cantidad) >= enemigo.manaBase)
            {
                enemigo.manaActual = enemigo.manaBase;
            }
            else
            {
                enemigo.manaActual += cantidad;
            }
        }

        if (!SceneManager.GetActiveScene().name.Equals("Hoguera"))
        {
            SpawnDMG(cantidad, objetivo, "mana");
        }
    }
Exemplo n.º 2
0
 private float calcularModificador(AtaqueBase ataque, EnemigoBase enemigo)
 {
     if (ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.AGUA) && enemigo.elemento.Equals(EnemigoBase.Elemento.FUEGO) ||
         ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.FUEGO) && enemigo.elemento.Equals(EnemigoBase.Elemento.PLANTA) ||
         ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.PLANTA) && enemigo.elemento.Equals(EnemigoBase.Elemento.AGUA) ||
         ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.ELECTRICO) && enemigo.elemento.Equals(EnemigoBase.Elemento.AGUA) ||
         ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.LUZ) && enemigo.elemento.Equals(EnemigoBase.Elemento.OSCURIDAD) ||
         ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.OSCURIDAD) && enemigo.elemento.Equals(EnemigoBase.Elemento.LUZ))
     {
         return(2f);
     }
     else if (ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.FUEGO) && enemigo.elemento.Equals(EnemigoBase.Elemento.AGUA) ||
              ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.PLANTA) && enemigo.elemento.Equals(EnemigoBase.Elemento.FUEGO) ||
              ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.AGUA) && enemigo.elemento.Equals(EnemigoBase.Elemento.PLANTA) ||
              ataque.elementoAtaque.Equals(AtaqueBase.ElementoAtaque.AGUA) && enemigo.elemento.Equals(EnemigoBase.Elemento.ELECTRICO))
     {
         return(0.5f);
     }
     else
     {
         return(1f);
     }
 }