aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index cde6892fd1b..5b193947b3d 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -7887,7 +7887,11 @@ int64 Unit::GetHealthGain(int64 dVal)
void Unit::TriggerOnHealthChangeAuras(uint64 oldVal, uint64 newVal)
{
- for (AuraEffect const* effect : GetAuraEffectsByType(SPELL_AURA_TRIGGER_SPELL_ON_HEALTH_PCT))
+ if (!HasAuraType(SPELL_AURA_TRIGGER_SPELL_ON_HEALTH_PCT))
+ return;
+
+ AuraEffectList effects = GetAuraEffectsByType(SPELL_AURA_TRIGGER_SPELL_ON_HEALTH_PCT);
+ for (AuraEffect const* effect : effects)
{
uint32 triggerHealthPct = effect->GetAmount();
uint32 triggerSpell = effect->GetSpellEffectInfo().TriggerSpell;