From 07551d62b0768d7b56c1c8f345d019f16ead61e9 Mon Sep 17 00:00:00 2001 From: Girip Dragos Date: Sat, 9 Apr 2016 19:05:00 +0000 Subject: [PATCH 1/4] Raid/Baradin Hold: Pit Lord Argaloth --- .../BaradinHold/boss_pit_lord_argaloth.cpp | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp index 5b2d8b895e..a3fe2a52fa 100644 --- a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp +++ b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp @@ -49,6 +49,13 @@ class boss_pit_lord_argaloth : public CreatureScript { boss_pit_lord_argalothAI(Creature* creature) : BossAI(creature, DATA_ARGALOTH) { } + void Reset() override + { + _Reset(); + first_fel_firestorm = false; + second_fel_firestorm = false; + } + void EnterCombat(Unit* /*who*/) override { _EnterCombat(); @@ -58,18 +65,17 @@ class boss_pit_lord_argaloth : public CreatureScript events.ScheduleEvent(EVENT_BERSERK, 5 * MINUTE * IN_MILLISECONDS); } - void EnterEvadeMode(EvadeReason /*why*/) override - { - me->GetMotionMaster()->MoveTargetedHome(); - instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me); - _DespawnAtEvade(); - } - 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(3) && !second_fel_firestorm) + { + second_fel_firestorm = true; DoCastAOE(SPELL_FEL_FIRESTORM); } } @@ -112,6 +118,9 @@ class boss_pit_lord_argaloth : public CreatureScript DoMeleeAttackIfReady(); } + private: + bool first_fel_firestorm; + bool second_fel_firestorm; }; CreatureAI* GetAI(Creature* creature) const override From b6e22852892addbc99b3e55b7160a988d173324a Mon Sep 17 00:00:00 2001 From: Girip Dragos Date: Sat, 9 Apr 2016 19:15:31 +0000 Subject: [PATCH 2/4] My bad. --- .../BaradinHold/boss_pit_lord_argaloth.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp index a3fe2a52fa..6194f693c9 100644 --- a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp +++ b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp @@ -51,7 +51,6 @@ class boss_pit_lord_argaloth : public CreatureScript void Reset() override { - _Reset(); first_fel_firestorm = false; second_fel_firestorm = false; } @@ -64,6 +63,13 @@ 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 + { + me->GetMotionMaster()->MoveTargetedHome(); + instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me); + _DespawnAtEvade(); + } void DamageTaken(Unit* /*attacker*/, uint32& damage) override { From e909652eba0667d42b449432f4ec3569bbc0b89e Mon Sep 17 00:00:00 2001 From: Girip Dragos Date: Sat, 9 Apr 2016 19:21:22 +0000 Subject: [PATCH 3/4] Everything should be fine now. --- .../BaradinHold/boss_pit_lord_argaloth.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp index 6194f693c9..82c3144b0a 100644 --- a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp +++ b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp @@ -48,12 +48,6 @@ 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 Reset() override - { - first_fel_firestorm = false; - second_fel_firestorm = false; - } void EnterCombat(Unit* /*who*/) override { @@ -66,6 +60,8 @@ class boss_pit_lord_argaloth : public CreatureScript void EnterEvadeMode(EvadeReason /*why*/) override { + first_fel_firestorm = false; + second_fel_firestorm = false; me->GetMotionMaster()->MoveTargetedHome(); instance->SendEncounterUnit(ENCOUNTER_FRAME_DISENGAGE, me); _DespawnAtEvade(); From 88ba2d4ebd40498ef3af8db4cddff78e9c1dd533 Mon Sep 17 00:00:00 2001 From: Girip Dragos Date: Tue, 19 Apr 2016 22:23:03 +0000 Subject: [PATCH 4/4] Typo --- .../EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp index 82c3144b0a..e93700bb74 100644 --- a/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp +++ b/src/server/scripts/EasternKingdoms/BaradinHold/boss_pit_lord_argaloth.cpp @@ -75,7 +75,7 @@ class boss_pit_lord_argaloth : public CreatureScript DoCastAOE(SPELL_FEL_FIRESTORM); } else - if(me->HealthBelowPctDamaged(3) && !second_fel_firestorm) + if(me->HealthBelowPctDamaged(33) && !second_fel_firestorm) { second_fel_firestorm = true; DoCastAOE(SPELL_FEL_FIRESTORM);