Core/Auras: calculate periodic bonuses before specific mods, fixes Imp. Devouring Plague damage

This commit is contained in:
ariel-
2016-12-03 19:42:23 -03:00
committed by Aokromes
parent 15a1e26d99
commit 1066fe59c9
2 changed files with 4 additions and 2 deletions

View File

@@ -3268,8 +3268,8 @@ void Unit::_ApplyAura(AuraApplication * aurApp, uint8 effMask)
if (aurApp->GetRemoveMode())
return;
aura->HandleAuraSpecificMods(aurApp, caster, true, false);
aura->HandleAuraSpecificPeriodics(aurApp, caster);
aura->HandleAuraSpecificMods(aurApp, caster, true, false);
// apply effects of the aura
for (uint8 i = 0; i < MAX_SPELL_EFFECTS; ++i)

View File

@@ -883,11 +883,13 @@ void Aura::SetStackAmount(uint8 stackAmount)
m_effects[i]->ChangeAmount(m_effects[i]->CalculateAmount(caster), false, true);
for (std::list<AuraApplication*>::const_iterator apptItr = applications.begin(); apptItr != applications.end(); ++apptItr)
{
if (!(*apptItr)->GetRemoveMode())
{
HandleAuraSpecificMods(*apptItr, caster, true, true);
HandleAuraSpecificPeriodics(*apptItr, caster);
HandleAuraSpecificMods(*apptItr, caster, true, true);
}
}
SetNeedClientUpdateForTargets();
}