diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/scripts/Spells/spell_priest.cpp | 28 | 
1 files changed, 28 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_priest.cpp b/src/server/scripts/Spells/spell_priest.cpp index a5ebb647694..192692af216 100644 --- a/src/server/scripts/Spells/spell_priest.cpp +++ b/src/server/scripts/Spells/spell_priest.cpp @@ -71,6 +71,7 @@ enum PriestSpells      SPELL_PRIEST_HALO_SHADOW_DAMAGE                 = 390964,      SPELL_PRIEST_HALO_SHADOW_HEAL                   = 390971,      SPELL_PRIEST_HEAL                               = 2060, +    SPELL_PRIEST_HOLY_MENDING_HEAL                  = 391156,      SPELL_PRIEST_HOLY_WORD_CHASTISE                 = 88625,      SPELL_PRIEST_HOLY_WORD_SANCTIFY                 = 34861,      SPELL_PRIEST_HOLY_WORD_SERENITY                 = 2050, @@ -594,6 +595,33 @@ struct areatrigger_pri_halo : AreaTriggerAI      }  }; +// 391154 - Holy Mending +class spell_pri_holy_mending : public AuraScript +{ +    PrepareAuraScript(spell_pri_holy_mending); + +    bool Validate(SpellInfo const* /*spellInfo*/) override +    { +        return ValidateSpellInfo({ SPELL_PRIEST_RENEW, SPELL_PRIEST_HOLY_MENDING_HEAL }); +    } + +    bool CheckProc(AuraEffect const* /*aurEff*/, ProcEventInfo& procInfo) +    { +        return procInfo.GetProcTarget()->HasAura(SPELL_PRIEST_RENEW, procInfo.GetActor()->GetGUID()); +    } + +    void HandleProc(AuraEffect* aurEff, ProcEventInfo& eventInfo) +    { +        eventInfo.GetActor()->CastSpell(eventInfo.GetProcTarget(), SPELL_PRIEST_HOLY_MENDING_HEAL, CastSpellExtraArgs(aurEff)); +    } + +    void Register() override +    { +        DoCheckEffectProc += AuraCheckEffectProcFn(spell_pri_holy_mending::CheckProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL); +        OnEffectProc += AuraEffectProcFn(spell_pri_holy_mending::HandleProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL); +    } +}; +  // 63733 - Holy Words  class spell_pri_holy_words : public AuraScript  {  | 
