diff options
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); |