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:
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
|
struct boss_pit_lord_argalothAI : public BossAI
|
||||||
{
|
{
|
||||||
boss_pit_lord_argalothAI(Creature* creature) : BossAI(creature, DATA_ARGALOTH) { }
|
boss_pit_lord_argalothAI(Creature* creature) : BossAI(creature, DATA_ARGALOTH) { }
|
||||||
|
|
||||||
void EnterCombat(Unit* /*who*/) override
|
void EnterCombat(Unit* /*who*/) override
|
||||||
{
|
{
|
||||||
_EnterCombat();
|
_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_CONSUMING_DARKNESS, urand(20 * IN_MILLISECONDS, 25 * IN_MILLISECONDS));
|
||||||
events.ScheduleEvent(EVENT_BERSERK, 5 * MINUTE * IN_MILLISECONDS);
|
events.ScheduleEvent(EVENT_BERSERK, 5 * MINUTE * IN_MILLISECONDS);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EnterEvadeMode(EvadeReason /*why*/) override
|
void EnterEvadeMode(EvadeReason /*why*/) override
|
||||||
{
|
{
|
||||||
|
first_fel_firestorm = false;
|
||||||
|
second_fel_firestorm = false;
|
||||||
me->GetMotionMaster()->MoveTargetedHome();
|
me->GetMotionMaster()->MoveTargetedHome();
|
||||||
instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me);
|
instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me);
|
||||||
_DespawnAtEvade();
|
_DespawnAtEvade();
|
||||||
@@ -67,9 +69,15 @@ class boss_pit_lord_argaloth : public CreatureScript
|
|||||||
|
|
||||||
void DamageTaken(Unit* /*attacker*/, uint32& damage) override
|
void DamageTaken(Unit* /*attacker*/, uint32& damage) override
|
||||||
{
|
{
|
||||||
if (me->HealthBelowPctDamaged(33, damage) ||
|
if (me->HealthBelowPctDamaged(66) && !first_fel_firestorm)
|
||||||
me->HealthBelowPctDamaged(66, damage))
|
|
||||||
{
|
{
|
||||||
|
first_fel_firestorm = true;
|
||||||
|
DoCastAOE(SPELL_FEL_FIRESTORM);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if(me->HealthBelowPctDamaged(33) && !second_fel_firestorm)
|
||||||
|
{
|
||||||
|
second_fel_firestorm = true;
|
||||||
DoCastAOE(SPELL_FEL_FIRESTORM);
|
DoCastAOE(SPELL_FEL_FIRESTORM);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -112,6 +120,9 @@ class boss_pit_lord_argaloth : public CreatureScript
|
|||||||
|
|
||||||
DoMeleeAttackIfReady();
|
DoMeleeAttackIfReady();
|
||||||
}
|
}
|
||||||
|
private:
|
||||||
|
bool first_fel_firestorm;
|
||||||
|
bool second_fel_firestorm;
|
||||||
};
|
};
|
||||||
|
|
||||||
CreatureAI* GetAI(Creature* creature) const override
|
CreatureAI* GetAI(Creature* creature) const override
|
||||||
|
|||||||
Reference in new issue
Block a user