diff options
author | Aqua Deus <95978183+aquadeus@users.noreply.github.com> | 2024-11-09 18:36:33 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-09 18:36:33 +0100 |
commit | 783693a0a07a8d31806609b4539a05ad7ab2f2ca (patch) | |
tree | a9af44b3e42a700384adc56b69ae9e079aa0c0dd /src | |
parent | bb9e2fcb3338f56683b0ee9238cb6286c60cfd28 (diff) |
Scripts/Spells: Implement Rogue Acrobatic Strikes talent (#30376)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Spells/spell_rogue.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_rogue.cpp b/src/server/scripts/Spells/spell_rogue.cpp index 8fb1e04cc2c..4773b7a584b 100644 --- a/src/server/scripts/Spells/spell_rogue.cpp +++ b/src/server/scripts/Spells/spell_rogue.cpp @@ -36,6 +36,7 @@ enum RogueSpells { + SPELL_ROGUE_ACROBATIC_STRIKES_PROC = 455144, SPELL_ROGUE_ADRENALINE_RUSH = 13750, SPELL_ROGUE_AIRBORNE_IRRITANT = 200733, SPELL_ROGUE_AMPLIFYING_POISON = 381664, @@ -136,6 +137,28 @@ bool IsFinishingMove(Spell const* spell) return GetFinishingMoveCPCost(spell).has_value(); } +// 455143 - Acrobatic Strikes +class spell_rog_acrobatic_strikes : public AuraScript +{ + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_ROGUE_ACROBATIC_STRIKES_PROC }); + } + + void HandleProc(AuraEffect const* aurEff, ProcEventInfo& /*eventInfo*/) const + { + GetTarget()->CastSpell(GetTarget(), SPELL_ROGUE_ACROBATIC_STRIKES_PROC, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR, + .TriggeringAura = aurEff + }); + } + + void Register() override + { + OnEffectProc += AuraEffectProcFn(spell_rog_acrobatic_strikes::HandleProc, EFFECT_0, SPELL_AURA_DUMMY); + } +}; + // Called by 2094 - Blind class spell_rog_airborne_irritant : public SpellScript { @@ -1293,6 +1316,7 @@ class spell_rog_venomous_wounds : public AuraScript void AddSC_rogue_spell_scripts() { + RegisterSpellScript(spell_rog_acrobatic_strikes); RegisterSpellScript(spell_rog_airborne_irritant); RegisterSpellScript(spell_rog_airborne_irritant_target_selection); RegisterSpellScript(spell_rog_backstab); |