diff options
| author | ariel- <ariel-@users.noreply.github.com> | 2016-10-26 22:55:56 -0300 | 
|---|---|---|
| committer | ariel- <ariel-@users.noreply.github.com> | 2016-10-26 22:55:56 -0300 | 
| commit | 5278577587159be85f993399baadb2809d4c94e7 (patch) | |
| tree | f8268eaeb2a6a455286e6f04687c5304f3c3a0af /src | |
| parent | 95f2aedb5a24a7c198c24747a04a5d60ff800fd2 (diff) | |
Core/Auras: allow damage from periodics to trigger auras if they're not fully resisted/absorbed
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 12 | 
1 files changed, 6 insertions, 6 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 08061ac0b34..35a8f97b445 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -5959,11 +5959,11 @@ void AuraEffect::HandlePeriodicDamageAurasTick(Unit* target, Unit* caster) const      uint32 procAttacker = PROC_FLAG_DONE_PERIODIC;      uint32 procVictim   = PROC_FLAG_TAKEN_PERIODIC;      uint32 hitMask = damageInfo.GetHitMask(); -    if (!hitMask) -        hitMask = crit ? PROC_HIT_CRITICAL : PROC_HIT_NORMAL; -      if (damage) +    { +        hitMask |= crit ? PROC_HIT_CRITICAL : PROC_HIT_NORMAL;          procVictim |= PROC_FLAG_TAKEN_DAMAGE; +    }      int32 overkill = damage - target->GetHealth();      if (overkill < 0) @@ -6053,11 +6053,11 @@ void AuraEffect::HandlePeriodicHealthLeechAuraTick(Unit* target, Unit* caster) c      uint32 procAttacker = PROC_FLAG_DONE_PERIODIC;      uint32 procVictim   = PROC_FLAG_TAKEN_PERIODIC;      uint32 hitMask = damageInfo.GetHitMask(); -    if (!hitMask) -        hitMask = crit ? PROC_HIT_CRITICAL : PROC_HIT_NORMAL; -      if (damage) +    { +        hitMask |= crit ? PROC_HIT_CRITICAL : PROC_HIT_NORMAL;          procVictim |= PROC_FLAG_TAKEN_DAMAGE; +    }      if (caster->IsAlive())          caster->ProcSkillsAndAuras(target, procAttacker, procVictim, PROC_SPELL_TYPE_DAMAGE, PROC_SPELL_PHASE_NONE, hitMask, nullptr, &damageInfo, nullptr);  | 
