aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorspp <none@none>2009-12-14 02:34:06 +0100
committerspp <none@none>2009-12-14 02:34:06 +0100
commit3a46634a2057241ec6bce3d6eacf0c3fcc64000d (patch)
treea14556d504a8c37be01414dfc9c2cea076d9d59e /src
parente8831429f416f7b3e047b519dfbf127a6fab594d (diff)
Display DoT absorption and overkill in combat log. By MetaphysicalDrama, closes #614
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/game/SpellAuras.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index 85126465edb..80f0e82821e 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -5944,9 +5944,6 @@ void AuraEffect::PeriodicTick()
pCaster->DealDamageMods(m_target,pdamage,&absorb);
- SpellPeriodicAuraLogInfo pInfo(this, pdamage, 0, absorb, resist, 0.0f, crit);
- m_target->SendPeriodicAuraLog(&pInfo);
-
Unit* target = m_target; // aura can be deleted in DealDamage
SpellEntry const* spellProto = GetSpellProto();
@@ -5957,6 +5954,14 @@ void AuraEffect::PeriodicTick()
pdamage = (pdamage <= absorb+resist) ? 0 : (pdamage-absorb-resist);
if (pdamage)
procVictim|=PROC_FLAG_TAKEN_ANY_DAMAGE;
+
+ int32 overkill = pdamage - m_target->GetHealth();
+ if (overkill < 0)
+ overkill = 0;
+
+ SpellPeriodicAuraLogInfo pInfo(this, pdamage, overkill, absorb, resist, 0.0f, crit);
+ m_target->SendPeriodicAuraLog(&pInfo);
+
pCaster->ProcDamageAndSpell(target, procAttacker, procVictim, procEx, pdamage, BASE_ATTACK, spellProto);
pCaster->DealDamage(target, pdamage, &cleanDamage, DOT, GetSpellSchoolMask(spellProto), spellProto, true);