From 2f8a453d5b24b26e062517ac8aec36e87fe6299b Mon Sep 17 00:00:00 2001 From: hondacrx Date: Tue, 13 Jun 2023 05:05:24 -0400 Subject: [PATCH] Scripts/Spells: Added proc requirements to a few auras that have SPELL_ATTR3_CAN_PROC_FROM_PROCS attribute Port From (https://github.com/TrinityCore/TrinityCore/commit/43134cadf192a468508605a62b2b56242a8311c8) --- Source/Scripts/Shadowlands/SpellCovenant.cs | 28 +++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/Source/Scripts/Shadowlands/SpellCovenant.cs b/Source/Scripts/Shadowlands/SpellCovenant.cs index 269cb03b2..377bba03b 100644 --- a/Source/Scripts/Shadowlands/SpellCovenant.cs +++ b/Source/Scripts/Shadowlands/SpellCovenant.cs @@ -34,4 +34,32 @@ namespace Scripts.Shadowlands DoCheckEffectProc.Add(new CheckEffectProcHandler(CheckProc, 0, AuraType.ProcTriggerSpell)); } } + + [Script] // 332753 - Superior Tactics + class spell_soulbind_superior_tactics : AuraScript + { + static uint SPELL_SUPERIOR_TACTICS_COOLDOWN_AURA = 332926; + + public override bool Validate(SpellInfo spellInfo) + { + return ValidateSpellInfo(SPELL_SUPERIOR_TACTICS_COOLDOWN_AURA); + } + + bool CheckProc(AuraEffect aurEff, ProcEventInfo procInfo) + { + if (GetTarget().HasAura(SPELL_SUPERIOR_TACTICS_COOLDOWN_AURA)) + return false; + + // only dispels from friendly targets count + if (procInfo.GetHitMask().HasFlag(ProcFlagsHit.Dispel) && !procInfo.GetTypeMask().HasFlag(ProcFlags.DealHelpfulAbility | ProcFlags.DealHelpfulSpell | ProcFlags.DealHelpfulPeriodic)) + return false; + + return true; + } + + public override void Register() + { + DoCheckEffectProc.Add(new CheckEffectProcHandler(CheckProc, 0, AuraType.ProcTriggerSpell)); + } + } }