diff options
author | Roc13x <roc13x@gmail.com> | 2018-03-21 08:59:58 +0000 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2018-03-21 09:59:58 +0100 |
commit | 1e62b53c66829dc9820117e17bfb44cb2652f814 (patch) | |
tree | a786f70968a26d5436a6acbca71dc70638f98670 | |
parent | 4471bac3a0d639a6aea641918b7403353aea7f75 (diff) |
Core/Instances: Fix combat resurrection charge gain (#21647)
Old logic stopped the recharge timer after the first recharge
-rw-r--r-- | src/server/game/Instances/InstanceScript.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/server/game/Instances/InstanceScript.cpp b/src/server/game/Instances/InstanceScript.cpp index 860dd733561..563388f64c1 100644 --- a/src/server/game/Instances/InstanceScript.cpp +++ b/src/server/game/Instances/InstanceScript.cpp @@ -792,12 +792,10 @@ void InstanceScript::UpdateCombatResurrection(uint32 diff) if (!_combatResurrectionTimerStarted) return; - _combatResurrectionTimer -= diff; - if (_combatResurrectionTimer <= 0) - { + if (_combatResurrectionTimer <= diff) AddCombatResurrectionCharge(); - _combatResurrectionTimerStarted = false; - } + else + _combatResurrectionTimer -= diff; } void InstanceScript::InitializeCombatResurrections(uint8 charges /*= 1*/, uint32 interval /*= 0*/) @@ -814,7 +812,6 @@ void InstanceScript::AddCombatResurrectionCharge() { ++_combatResurrectionCharges; _combatResurrectionTimer = GetCombatResurrectionChargeInterval(); - _combatResurrectionTimerStarted = true; WorldPackets::Instance::InstanceEncounterGainCombatResurrectionCharge gainCombatResurrectionCharge; gainCombatResurrectionCharge.InCombatResCount = _combatResurrectionCharges; @@ -833,7 +830,7 @@ void InstanceScript::ResetCombatResurrections() { _combatResurrectionCharges = 0; _combatResurrectionTimer = 0; - _combatResurrectionTimerStarted = 0; + _combatResurrectionTimerStarted = false; } uint32 InstanceScript::GetCombatResurrectionChargeInterval() const |