Merge branch 'patch-3' into '4.3.4'

Raid/Baradin Hold: Pit Lord Argaloth

Pit Lord Argaloth should cast one time Fel Firestom at 66% Health and 33% Health. The way it was scripted made boss cast continuosly Fel Firestom from 66% to 0%. Now it is ok.

See merge request !9
This commit is contained in:
Carbenium committed 2016-04-30 22:48:49 +00:00
commit dd917e4214
1 file changed
+15 -4
@@ -48,7 +48,7 @@ class boss_pit_lord_argaloth : public CreatureScript
struct boss_pit_lord_argalothAI : public BossAI
{
boss_pit_lord_argalothAI(Creature* creature) : BossAI(creature, DATA_ARGALOTH) { }
void EnterCombat(Unit* /*who*/) override
{
_EnterCombat();
@@ -57,9 +57,11 @@ class boss_pit_lord_argaloth : public CreatureScript
events.ScheduleEvent(EVENT_CONSUMING_DARKNESS, urand(20 * IN_MILLISECONDS, 25 * IN_MILLISECONDS));
events.ScheduleEvent(EVENT_BERSERK, 5 * MINUTE * IN_MILLISECONDS);
}
void EnterEvadeMode(EvadeReason /*why*/) override
{
first_fel_firestorm = false;
second_fel_firestorm = false;
me->GetMotionMaster()->MoveTargetedHome();
instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me);
_DespawnAtEvade();
@@ -67,9 +69,15 @@ class boss_pit_lord_argaloth : public CreatureScript
void DamageTaken(Unit* /*attacker*/, uint32& damage) override
{
if (me->HealthBelowPctDamaged(33, damage) ||
me->HealthBelowPctDamaged(66, damage))
if (me->HealthBelowPctDamaged(66) && !first_fel_firestorm)
{
first_fel_firestorm = true;
DoCastAOE(SPELL_FEL_FIRESTORM);
}
else
if(me->HealthBelowPctDamaged(33) && !second_fel_firestorm)
{
second_fel_firestorm = true;
DoCastAOE(SPELL_FEL_FIRESTORM);
}
}
@@ -112,6 +120,9 @@ class boss_pit_lord_argaloth : public CreatureScript
DoMeleeAttackIfReady();
}
private:
bool first_fel_firestorm;
bool second_fel_firestorm;
};
CreatureAI* GetAI(Creature* creature) const override