mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Core/Auras: calculate periodic bonuses before specific mods, fixes Imp. Devouring Plague damage
This commit is contained in:
@@ -3564,8 +3564,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)
|
||||
|
||||
@@ -864,11 +864,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();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user