From 54a83b4b689b7d2bbddb91fc79319dd806da8cc0 Mon Sep 17 00:00:00 2001 From: Shauren Date: Wed, 1 Jan 2025 19:37:48 +0100 Subject: Core/Spells: Don't ignore power costs and reagents for spells triggered by SPELL_EFFECT_TRIGGER_SPELL, SPELL_EFFECT_TRIGGER_MISSILE, SPELL_EFFECT_FORCE_CAST, SPELL_AURA_PERIODIC_TRIGGER_SPELL, SPELL_AURA_PROC_TRIGGER_SPELL and fixed implementation of SPELL_ATTR6_DO_NOT_CONSUME_RESOURCES --- src/server/game/Spells/SpellEffects.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/server/game/Spells/SpellEffects.cpp') diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index bf21eaecc1f..b3bea4b8882 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -708,7 +708,7 @@ void Spell::EffectTriggerSpell() targets.Update(caster); // refresh pointers stored in targets // original caster guid only for GO cast - CastSpellExtraArgs args(TRIGGERED_FULL_MASK); + CastSpellExtraArgs args(TRIGGERED_FULL_MASK & ~(TRIGGERED_IGNORE_POWER_COST | TRIGGERED_IGNORE_REAGENT_COST)); args.SetOriginalCaster(originalCaster); args.OriginalCastId = originalCastId; args.OriginalCastItemLevel = itemLevel; @@ -777,7 +777,7 @@ void Spell::EffectTriggerMissileSpell() targets.SetGOTarget(go); } - CastSpellExtraArgs args(TRIGGERED_FULL_MASK); + CastSpellExtraArgs args(TRIGGERED_FULL_MASK & ~(TRIGGERED_IGNORE_POWER_COST | TRIGGERED_IGNORE_REAGENT_COST)); args.SetOriginalCaster(m_originalCasterGUID); args.SetTriggeringSpell(this); args.SetCustomArg(m_customArg); @@ -851,7 +851,7 @@ void Spell::EffectForceCast() return; } - CastSpellExtraArgs args(TRIGGERED_FULL_MASK); + CastSpellExtraArgs args(TRIGGERED_FULL_MASK & ~(TRIGGERED_IGNORE_POWER_COST | TRIGGERED_IGNORE_REAGENT_COST)); args.SetTriggeringSpell(this); if (effectInfo->Effect == SPELL_EFFECT_FORCE_CAST_WITH_VALUE) for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i) -- cgit v1.2.3