Ejemplo n.º 1
0
    void CastHellfire()
    {
        BuffHandler.Buff debuff = new BuffHandler.Buff(HellfireName, false, -(int)(HellfireDamage * (1.0f + 0.1 * HellfireCounts)), HellfireDuration, Spell.Enemy);

        if (Tank)
            Tank.PlaceBuff(new BuffHandler.Buff(debuff));

        if (DPS1)
            DPS1.PlaceBuff(new BuffHandler.Buff(debuff));

        if (DPS2)
            DPS2.PlaceBuff(new BuffHandler.Buff(debuff));

        if (DPS3)
            DPS3.PlaceBuff(new BuffHandler.Buff(debuff));

        if (Healer)
            Healer.PlaceBuff(new BuffHandler.Buff(debuff));

        HellfireCounts++;
        cycleNumber = 0;
        CurrentTarget = AttemptToTargetTank();
        castTime = DreadFlameCastTime;
        SpellName = DreadFlameName;
        BossFightNextSpellText.text = "Next Spell will be " + DreadFlameName + "!";
    }
Ejemplo n.º 2
0
    void CastDeadlyGust()
    {
        if (cycleNumber == 6)
            cycleNumber = 0;

        if (!CurrentTarget)
            return;

        BuffHandler.Buff debuff = new BuffHandler.Buff(DeadlyGustName, false, -(int)DeadlyGustDamage, DeadlyGustDuration, Spell.Enemy);
        CurrentTarget.PlaceBuff(new BuffHandler.Buff(debuff));

        CurrentTarget.CanDealDamage = false;
        StartCoroutine(EnableDPSAgain(CurrentTarget, DeadlyGustDuration));

        if (cycleNumber == 0)
        {
            CurrentTarget = AttemptToTargetTank();
            castTime = WindShearCastTime;
            SpellName = WindShearName;
            BossFightNextSpellText.text = "Next Spell will be " + WindShearName + "!";
        }
        else {
            CurrentTarget = GetRandomDPS();
            castTime = DropCastTime;
            SpellName = DropName;
            BossFightNextSpellText.text = "Next Spell will be " + DeadlyGustName + "!";
        }
    }
Ejemplo n.º 3
0
    void CastDreadFlame()
    {
        BuffHandler.Buff debuff = new BuffHandler.Buff(DreadFlameName, false, -(int)(DreadFlameDamage * (1.0f + 0.1 * DreadFlameCounts)), DreadFlameDuration, Spell.Enemy);
        if (!CurrentTarget)
            CurrentTarget = AttemptToTargetTank();

        CurrentTarget.PlaceBuff(debuff);
        if (cycleNumber == 1)
        {
            CurrentTarget = AttemptToTargetTank();
            BossFightNextSpellText.text = "Next Spell will be " + HellfireName + "!";
        }
        else
        {
            castTime = HellfireCastTime;
            SpellName = HellfireName;
            BossFightNextSpellText.text = "Next Spell will be " + DreadFlameName + "!";
        }

        DreadFlameCounts++;
    }
Ejemplo n.º 4
0
    IEnumerator CastBuffAfterTime(float time, PartyMemberScript target, Spell buff)
    {
        yield return new WaitForSeconds(time);
        if (target.isActiveAndEnabled)
        {
            ManaBar.value -= SpellStats.GetManaCost(buff);

            if (buff == Spell.Ultimate1)
            {
                BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Ultimate1), true, SpellStats.GetHealAmount(Spell.Ultimate1),SpellStats.Ultimate1Duration, Spell.Ultimate1);
                target.PlaceBuff(newBuff);
            }
            else if (buff == Spell.Ultimate3)
            {

                BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Ultimate3), true, SpellStats.GetHealAmount(Spell.Ultimate3), SpellStats.Ultimate3Duration, Spell.Ultimate3);
                target.PlaceBuff(newBuff);
            }
            else if (buff == Spell.Spell5)
            {
                BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Spell5), true, SpellStats.GetHealAmount(Spell.Spell5), SpellStats.Spell5Duration, Spell.Spell5);
                target.PlaceBuff(newBuff);
            }
            else if (buff == Spell.Spell8)
            {
                BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Spell8), true, SpellStats.GetHealAmount(Spell.Spell8), SpellStats.Spell8Duration, Spell.Spell8);
                target.PlaceBuff(newBuff);
                StartCoroutine(ReCastSpell8(SpellStats.Spell8Duration, SpellStats.Spell8Jumps));
            }
        }
    }
Ejemplo n.º 5
0
 IEnumerator ReCastSpell8(float time, int Spell8JumpsLeft)
 {
     yield return new WaitForSeconds(time);
     Spell8JumpsLeft--;
     if (Spell8JumpsLeft > 0)
     {
         BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Spell8), true, SpellStats.GetHealAmount(Spell.Spell8), SpellStats.Spell8Duration, Spell.Spell8);
         ReturnLowestHealthMember().PlaceBuff(newBuff);
         StartCoroutine(ReCastSpell8(SpellStats.Spell8Duration, Spell8JumpsLeft));
     }
 }
Ejemplo n.º 6
0
    IEnumerator CastUltimate2AfterTime(float time)
    {
        yield return new WaitForSeconds(time);

        ManaBar.value -= SpellStats.GetManaCost(Spell.Ultimate2);

        if (Tank.isActiveAndEnabled) {
            BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Ultimate2), true, SpellStats.GetHealAmount(Spell.Ultimate2), SpellStats.Ultimate2Duration, Spell.Ultimate2);
            Tank.PlaceBuff(newBuff);
        }

        if (DPS1.isActiveAndEnabled)
        {
            BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Ultimate2), true, SpellStats.GetHealAmount(Spell.Ultimate2), SpellStats.Ultimate2Duration, Spell.Ultimate2);
            DPS1.PlaceBuff(newBuff);
        }

        if (DPS2.isActiveAndEnabled)
        {
            BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Ultimate2), true, SpellStats.GetHealAmount(Spell.Ultimate2), SpellStats.Ultimate2Duration, Spell.Ultimate2);
            DPS2.PlaceBuff(newBuff);
        }

        if (DPS3.isActiveAndEnabled)
        {
            BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Ultimate2), true, SpellStats.GetHealAmount(Spell.Ultimate2), SpellStats.Ultimate2Duration, Spell.Ultimate2);
            DPS3.PlaceBuff(newBuff);
        }

        if (Healer.isActiveAndEnabled)
        {
            BuffHandler.Buff newBuff = new BuffHandler.Buff(SpellStats.GetSpellName(Spell.Ultimate2), true, SpellStats.GetHealAmount(Spell.Ultimate2), SpellStats.Ultimate2Duration, Spell.Ultimate2);
            Healer.PlaceBuff(newBuff);
        }
    }