diff options
author | treeston <treeston.mmoc@gmail.com> | 2016-09-22 15:22:54 +0200 |
---|---|---|
committer | joschiwald <joschiwald.trinity@gmail.com> | 2017-03-03 21:51:36 +0100 |
commit | 6a7ef793ca743186e60f0ebb5c794475e4d7f2b0 (patch) | |
tree | 345458200bd81656185d975193e897228378e862 | |
parent | f6c9aff606ca4a9a6f07882d5ae1d432270f0046 (diff) |
Scripts/IcecrownCitadel: Fix an issue where Deathbringer Saurfang's exit door could get stuck in a closed state. Fixes and closes #15018.
(cherry picked from commit 429700e614c27627becc50bcc45cfa5315b9d4ed)
-rw-r--r-- | src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp index 2645d1f68da..462dd4c3525 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_deathbringer_saurfang.cpp @@ -251,25 +251,20 @@ class boss_deathbringer_saurfang : public CreatureScript struct boss_deathbringer_saurfangAI : public BossAI { - boss_deathbringer_saurfangAI(Creature* creature) : BossAI(creature, DATA_DEATHBRINGER_SAURFANG) + boss_deathbringer_saurfangAI(Creature* creature) : BossAI(creature, DATA_DEATHBRINGER_SAURFANG), _introDone(false), _frenzied(false), _dead(false) { - Initialize(); ASSERT(creature->GetVehicleKit()); // we dont actually use it, just check if exists - _introDone = false; _fallenChampionCastCount = 0; } - void Initialize() - { - _frenzied = false; - _dead = false; - } - void Reset() override { + if (_dead) + return; _Reset(); events.SetPhase(PHASE_COMBAT); - Initialize(); + _frenzied = false; + _dead = false; me->SetPower(POWER_ENERGY, 0); DoCast(me, SPELL_ZERO_POWER, true); DoCast(me, SPELL_BLOOD_LINK, true); @@ -341,6 +336,8 @@ class boss_deathbringer_saurfang : public CreatureScript void JustReachedHome() override { + if (_dead) + return; _JustReachedHome(); Reset(); instance->SetBossState(DATA_DEATHBRINGER_SAURFANG, FAIL); @@ -365,7 +362,7 @@ class boss_deathbringer_saurfang : public CreatureScript Talk(SAY_FRENZY); } - if (!_dead && me->GetHealth() < FightWonValue) + if (!_dead && me->GetHealth()-damage < FightWonValue) { _dead = true; _JustDied(); |