Core/Auras: Skip estimated points calculation for SPELL_EFFECT_PERSISTENT_AREA_AURA
Port From (https://github.com/TrinityCore/TrinityCore/commit/515d3da181e105aceeba02d8dab46454be00f433)
This commit is contained in:
@@ -124,7 +124,7 @@ namespace Game.Spells
|
||||
if (!GetSpellEffectInfo().EffectAttributes.HasFlag(SpellEffectAttributes.NoScaleWithStack))
|
||||
amount *= GetBase().GetStackAmount();
|
||||
|
||||
if (caster)
|
||||
if (caster && GetBase().GetAuraType() == AuraObjectType.Unit)
|
||||
{
|
||||
uint stackAmountForBonuses = !GetSpellEffectInfo().EffectAttributes.HasFlag(SpellEffectAttributes.NoScaleWithStack) ? GetBase().GetStackAmount() : 1u;
|
||||
|
||||
@@ -132,10 +132,10 @@ namespace Game.Spells
|
||||
{
|
||||
case AuraType.PeriodicDamage:
|
||||
case AuraType.PeriodicLeech:
|
||||
_estimatedAmount = caster.SpellDamageBonusDone(GetBase().GetOwner().ToUnit(), GetSpellInfo(), (uint)amount, DamageEffectType.DOT, GetSpellEffectInfo(), stackAmountForBonuses);
|
||||
_estimatedAmount = caster.SpellDamageBonusDone(GetBase().GetUnitOwner(), GetSpellInfo(), (uint)amount, DamageEffectType.DOT, GetSpellEffectInfo(), stackAmountForBonuses);
|
||||
break;
|
||||
case AuraType.PeriodicHeal:
|
||||
_estimatedAmount = caster.SpellHealingBonusDone(GetBase().GetOwner().ToUnit(), GetSpellInfo(), (uint)amount, DamageEffectType.DOT, GetSpellEffectInfo(), stackAmountForBonuses);
|
||||
_estimatedAmount = caster.SpellHealingBonusDone(GetBase().GetUnitOwner(), GetSpellInfo(), (uint)amount, DamageEffectType.DOT, GetSpellEffectInfo(), stackAmountForBonuses);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user