From 479c965c4ee8b727bf8056786fa766f115cc53ea Mon Sep 17 00:00:00 2001 From: UltraNix <80540499+UltraNix@users.noreply.github.com> Date: Sat, 11 Mar 2023 20:58:44 +0100 Subject: [PATCH] fix(Scripts/Spells): Fixed Rogue T10 4P bonus. (#15336) --- src/server/scripts/Spells/spell_generic.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index ed54071bd..b3ecbd981 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -764,9 +764,27 @@ class spell_gen_proc_not_self : public AuraScript return eventInfo.GetActor() != eventInfo.GetActionTarget(); } + void HandleProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + if (Unit* caster = GetCaster()) + if (Unit* target = eventInfo.GetActionTarget()) + { + uint32 spellID = aurEff->GetSpellInfo()->Effects[aurEff->GetEffIndex()].TriggerSpell; + caster->m_Events.AddEventAtOffset([caster, target, spellID]() + { + if (target) + { + caster->CastSpell(target, spellID, true); + } + }, 100ms); + } + } + void Register() override { DoCheckProc += AuraCheckProcFn(spell_gen_proc_not_self::CheckProc); + OnEffectProc += AuraEffectProcFn(spell_gen_proc_not_self::HandleProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL); } };