diff options
| author | azazel <none@none> | 2010-08-06 23:03:43 +0600 | 
|---|---|---|
| committer | azazel <none@none> | 2010-08-06 23:03:43 +0600 | 
| commit | 2562a4651f94e2dc40ccce108a2497c2c26bfff6 (patch) | |
| tree | 65baee9a439e324c2761731817cac93fd1c4e698 /src/server/scripts | |
| parent | b63a31f513db5274e85afc323d143292d8f3e88f (diff) | |
Moved Pain and Suffering (47948) script effect to spell script.
--HG--
branch : trunk
Diffstat (limited to 'src/server/scripts')
| -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 c78efc15a22..8c2fffa9c5b 100644 --- a/src/server/scripts/Spells/spell_priest.cpp +++ b/src/server/scripts/Spells/spell_priest.cpp @@ -22,6 +22,7 @@   */  #include "ScriptPCH.h" +#include "SpellAuraEffects.h"  enum PriestSpells  { @@ -30,6 +31,28 @@ enum PriestSpells      PRIEST_SPELL_PENANCE_R1_HEAL                 = 47757,  }; +// 47948 Pain and Suffering (proc) +class spell_pri_pain_and_suffering_proc_SpellScript : public SpellScript +{ +    void HandleEffectScriptEffect(SpellEffIndex effIndex) +    { +        // Refresh Shadow Word: Pain on target +        if (Unit *unitTarget = GetHitUnit()) +            if (AuraEffect* aur = unitTarget->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_PRIEST, 0x8000, 0, 0, GetCaster()->GetGUID())) +                aur->GetBase()->RefreshDuration(); +    } + +    void Register() +    { +        EffectHandlers += EffectHandlerFn(spell_pri_pain_and_suffering_proc_SpellScript::HandleEffectScriptEffect, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); +    } +}; + +SpellScript *GetSpellScript_spell_pri_pain_and_suffering_proc() +{ +    return new spell_pri_pain_and_suffering_proc_SpellScript(); +} +  class spell_pri_penance_SpellScript : public SpellScript  {      bool Validate(SpellEntry const * spellEntry) @@ -82,6 +105,11 @@ void AddSC_priest_spell_scripts()      Script *newscript;      newscript = new Script; +    newscript->Name = "spell_pri_pain_and_suffering_proc"; +    newscript->GetSpellScript = &GetSpellScript_spell_pri_pain_and_suffering_proc; +    newscript->RegisterSelf(); + +    newscript = new Script;      newscript->Name = "spell_pri_penance";      newscript->GetSpellScript = &GetSpellScript_spell_pri_penance;      newscript->RegisterSelf(); | 
