diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/scripts/Spells/spell_monk.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_monk.cpp b/src/server/scripts/Spells/spell_monk.cpp index 03e468a2f24..8bccb2cdc29 100644 --- a/src/server/scripts/Spells/spell_monk.cpp +++ b/src/server/scripts/Spells/spell_monk.cpp @@ -42,7 +42,9 @@ enum MonkSpells SPELL_MONK_CRACKLING_JADE_LIGHTNING_CHI_PROC = 123333, SPELL_MONK_CRACKLING_JADE_LIGHTNING_KNOCKBACK = 117962, SPELL_MONK_CRACKLING_JADE_LIGHTNING_KNOCKBACK_CD = 117953, + SPELL_MONK_ENVELOPING_MIST = 124682, SPELL_MONK_JADE_WALK = 450552, + SPELL_MONK_MISTS_OF_LIFE = 388548, SPELL_MONK_MORTAL_WOUNDS = 115804, SPELL_MONK_POWER_STRIKE_PROC = 129914, SPELL_MONK_POWER_STRIKE_ENERGIZE = 121283, @@ -51,6 +53,7 @@ enum MonkSpells SPELL_MONK_PROVOKE_AOE = 118635, SPELL_MONK_NO_FEATHER_FALL = 79636, SPELL_MONK_OPEN_PALM_STRIKES_TALENT = 392970, + SPELL_MONK_RENEWING_MIST = 119611, SPELL_MONK_ROLL_BACKWARD = 109131, SPELL_MONK_ROLL_FORWARD = 107427, SPELL_MONK_SAVE_THEM_ALL_HEAL_BONUS = 390105, @@ -239,6 +242,38 @@ class spell_monk_life_cocoon : public SpellScript } }; +// 388548 - Mists of Life (attached to 116849 - Life Cocoon) +class spell_monk_mists_of_life : public SpellScript +{ + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_MONK_MISTS_OF_LIFE, SPELL_MONK_RENEWING_MIST, SPELL_MONK_ENVELOPING_MIST }); + } + + bool Load() override + { + return GetCaster()->HasAuraEffect(SPELL_MONK_MISTS_OF_LIFE, EFFECT_0); + } + + void HandleEffectApply(SpellEffIndex /*effIndex*/) const + { + Unit* caster = GetCaster(); + Unit* target = GetHitUnit(); + + CastSpellExtraArgs args; + args.SetTriggerFlags(TRIGGERED_IGNORE_GCD | TRIGGERED_IGNORE_POWER_COST | TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_IGNORE_CAST_TIME | TRIGGERED_DONT_REPORT_CAST_ERROR); + args.SetTriggeringSpell(GetSpell()); + + caster->CastSpell(target, SPELL_MONK_RENEWING_MIST, args); + caster->CastSpell(target, SPELL_MONK_ENVELOPING_MIST, args); + } + + void Register() override + { + OnEffectHitTarget += SpellEffectFn(spell_monk_mists_of_life::HandleEffectApply, EFFECT_0, SPELL_EFFECT_APPLY_AURA); + } +}; + // 392972 - Open Palm Strikes class spell_monk_open_palm_strikes : public AuraScript { @@ -763,6 +798,7 @@ void AddSC_monk_spell_scripts() RegisterSpellScript(spell_monk_crackling_jade_lightning_knockback_proc_aura); RegisterSpellScript(spell_monk_jade_walk); RegisterSpellScript(spell_monk_life_cocoon); + RegisterSpellScript(spell_monk_mists_of_life); RegisterSpellScript(spell_monk_open_palm_strikes); RegisterSpellScript(spell_monk_power_strike_periodic); RegisterSpellScript(spell_monk_power_strike_proc); |
