Core/Auras: Ensure aura target of SPELL_AURA_TRIGGER_SPELL_ON_POWER_PCT has required power type

Port From (https://github.com/TrinityCore/TrinityCore/commit/fc54ae79a95bc162bd0ceec199561af873576a23)
This commit is contained in:
Hondacrx
2025-06-08 18:33:57 -04:00
parent e88513b855
commit 518969ad2f
2 changed files with 8 additions and 1 deletions
+3
View File
@@ -764,6 +764,9 @@ namespace Game.Entities
if (effect.GetAuraType() == AuraType.TriggerSpellOnPowerPct)
{
int maxPower = GetMaxPower(power);
if (maxPower == 0)
continue;
oldValueCheck = MathFunctions.GetPctOf(oldVal, maxPower);
newValueCheck = MathFunctions.GetPctOf(newVal, maxPower);
}
+5 -1
View File
@@ -4886,7 +4886,11 @@ namespace Game.Spells
int effectAmount = GetAmount();
uint triggerSpell = GetSpellEffectInfo().TriggerSpell;
float powerAmountPct = MathFunctions.GetPctOf(target.GetPower((PowerType)GetMiscValue()), target.GetMaxPower((PowerType)GetMiscValue()));
int maxPower = target.GetMaxPower((PowerType)GetMiscValue());
if (maxPower == 0)
return;
float powerAmountPct = MathFunctions.GetPctOf(target.GetPower((PowerType)GetMiscValue()), maxPower);
switch ((AuraTriggerOnPowerChangeDirection)GetMiscValueB())
{