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

(cherry picked from commit bd49d37258)
This commit is contained in:
ariel-
2016-12-03 19:42:23 -03:00
committed by DoctorKraft
parent bc87d3a2b3
commit 4e08ab8f69
2 changed files with 4 additions and 2 deletions

View File

@@ -3296,8 +3296,8 @@ void Unit::_ApplyAura(AuraApplication * aurApp, uint32 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

@@ -923,11 +923,13 @@ void Aura::SetStackAmount(uint8 stackAmount)
effect->ChangeAmount(effect->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();
}