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:
hondacrx
2021-07-21 15:51:43 -04:00
parent 50fcbd3aaf
commit 4b142a08bd
+3 -3
View File
@@ -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;