aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorxinef1 <w.szyszko2@gmail.com>2017-03-02 00:12:57 +0100
committerariel- <ariel-@users.noreply.github.com>2017-03-01 20:12:57 -0300
commitce1108b8a28c1f69840bc161a06f08ee0a147753 (patch)
tree4f0ff472f1a38cca0384a83fe738c27ceddc1ee2 /src
parentfb2aebe46be7439a8f9b99067edb27fd844c1a28 (diff)
Corrected calculation for SPELL_AURA_PERIODIC_DAMAGE_PERCENT (#19060)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index cbd2580e770..aa621bf02fd 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -5568,8 +5568,8 @@ void AuraEffect::HandlePeriodicDamageAurasTick(Unit* target, Unit* caster) const
}
}
}
- else
- damage = uint32(target->CountPctFromMaxHealth(damage));
+ else // ceil obtained value, it may happen that 10 ticks for 10% damage may not kill owner
+ damage = uint32(ceil(CalculatePct<float, float>(target->GetMaxHealth(), damage)));
if (!m_spellInfo->HasAttribute(SPELL_ATTR4_FIXED_DAMAGE))
{