diff options
| author | Aqua Deus <95978183+aquadeus@users.noreply.github.com> | 2024-11-08 12:23:05 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-08 12:23:05 +0100 |
| commit | c2c54250cdf8e3fb9f93705b19f247bd0c4b2496 (patch) | |
| tree | b903cedfb510967d3155fb775043ef53bb55e900 /src | |
| parent | 11f6576f04688fb89d97e2bbe7ae97a8b6585415 (diff) | |
Scripts/Spells: Implement rogue talent Soothing Darkness (#30405)
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/scripts/Spells/spell_rogue.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_rogue.cpp b/src/server/scripts/Spells/spell_rogue.cpp index a01b0d5fb31..2bc0fb7323a 100644 --- a/src/server/scripts/Spells/spell_rogue.cpp +++ b/src/server/scripts/Spells/spell_rogue.cpp @@ -83,6 +83,8 @@ enum RogueSpells SPELL_ROGUE_SHIV_NATURE_DAMAGE = 319504, SPELL_ROGUE_SLICE_AND_DICE = 315496, SPELL_ROGUE_SPRINT = 2983, + SPELL_ROGUE_SOOTHING_DARKNESS_TALENT = 393970, + SPELL_ROGUE_SOOTHING_DARKNESS_HEAL = 393971, SPELL_ROGUE_STEALTH = 1784, SPELL_ROGUE_STEALTH_STEALTH_AURA = 158185, SPELL_ROGUE_STEALTH_SHAPESHIFT_AURA = 158188, @@ -868,6 +870,33 @@ class spell_rog_sinister_strike : public SpellScript } }; +// Called by 1856 - Vanish +class spell_rog_soothing_darkness : public SpellScript +{ + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_ROGUE_SOOTHING_DARKNESS_TALENT, SPELL_ROGUE_SOOTHING_DARKNESS_HEAL }); + } + + bool Load() override + { + return GetCaster()->HasAura(SPELL_ROGUE_SOOTHING_DARKNESS_TALENT); + } + + void Heal() const + { + GetCaster()->CastSpell(GetCaster(), SPELL_ROGUE_SOOTHING_DARKNESS_HEAL, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR, + .TriggeringSpell = GetSpell() + }); + } + + void Register() override + { + AfterCast += SpellCastFn(spell_rog_soothing_darkness::Heal); + } +}; + // 1784 - Stealth class spell_rog_stealth : public AuraScript { @@ -1153,6 +1182,7 @@ void AddSC_rogue_spell_scripts() RegisterSpellScript(spell_rog_ruthlessness); RegisterSpellScript(spell_rog_shadowstrike); RegisterSpellScript(spell_rog_sinister_strike); + RegisterSpellScript(spell_rog_soothing_darkness); RegisterSpellScript(spell_rog_stealth); RegisterSpellScript(spell_rog_symbols_of_death); RegisterSpellAndAuraScriptPair(spell_rog_tricks_of_the_trade, spell_rog_tricks_of_the_trade_aura); |
