aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMuru <timurdelimin@gmail.com>2025-01-03 13:02:58 +0700
committerGitHub <noreply@github.com>2025-01-03 07:02:58 +0100
commit000e4e99702d703ada9b2798f579534b547e35a6 (patch)
tree7b961aaed4b69f3154c5feb410ad8efca0b8481b /src
parenta3d29b45975bf9ef71e03866a94ff03bf3ad0cfb (diff)
Scripts/Spells: Implement warlock talent "Shadow Invocation" (#30561)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Spells/spell_warlock.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_warlock.cpp b/src/server/scripts/Spells/spell_warlock.cpp
index b15a3d4db3c..1144d32af20 100644
--- a/src/server/scripts/Spells/spell_warlock.cpp
+++ b/src/server/scripts/Spells/spell_warlock.cpp
@@ -1175,6 +1175,22 @@ class spell_warl_shadow_bolt : public SpellScript
}
};
+// 422054 - Shadow Invocation
+class spell_warl_shadow_invocation : public AuraScript
+{
+ void HandleProc(ProcEventInfo& eventInfo)
+ {
+ Unit* caster = eventInfo.GetActor();
+ Unit* target = eventInfo.GetActionTarget();
+ caster->m_Events.AddEventAtOffset(new BilescourgeBombersEvent(caster, caster->GetPosition(), target->GetPosition()), 500ms);
+ }
+
+ void Register() override
+ {
+ OnProc += AuraProcFn(spell_warl_shadow_invocation::HandleProc);
+ }
+};
+
// 452999 - Siphon Life
class spell_warl_siphon_life : public AuraScript
{
@@ -1601,6 +1617,7 @@ void AddSC_warlock_spell_scripts()
RegisterSpellAndAuraScriptPair(spell_warl_seed_of_corruption_dummy, spell_warl_seed_of_corruption_dummy_aura);
RegisterSpellScript(spell_warl_seed_of_corruption_generic);
RegisterSpellScript(spell_warl_shadow_bolt);
+ RegisterSpellScript(spell_warl_shadow_invocation);
RegisterSpellScript(spell_warl_siphon_life);
RegisterSpellScript(spell_warl_soul_swap);
RegisterSpellScript(spell_warl_soul_swap_dot_marker);