aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoc13x <roc13x@gmail.com>2018-03-21 08:59:58 +0000
committerShauren <shauren.trinity@gmail.com>2018-03-21 09:59:58 +0100
commit1e62b53c66829dc9820117e17bfb44cb2652f814 (patch)
treea786f70968a26d5436a6acbca71dc70638f98670
parent4471bac3a0d639a6aea641918b7403353aea7f75 (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.cpp11
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