aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/master/2021_03_04_00_world_paladin_spells.sql49
-rw-r--r--src/server/game/Spells/SpellScript.h2
-rw-r--r--src/server/scripts/Spells/spell_paladin.cpp320
3 files changed, 268 insertions, 103 deletions
diff --git a/sql/updates/world/master/2021_03_04_00_world_paladin_spells.sql b/sql/updates/world/master/2021_03_04_00_world_paladin_spells.sql
new file mode 100644
index 00000000000..1a423ce6c88
--- /dev/null
+++ b/sql/updates/world/master/2021_03_04_00_world_paladin_spells.sql
@@ -0,0 +1,49 @@
+-- Spell Scripts
+DELETE FROM `spell_script_names` WHERE `ScriptName` IN
+('spell_pal_judgement',
+ 'spell_pal_zeal',
+ 'spell_pal_selfless_healer',
+ 'spell_pal_crusader_might',
+ 'spell_pal_righteous_protector',
+ 'spell_pal_moment_of_glory');
+INSERT INTO `spell_script_names` (`spell_id`,`ScriptName`) VALUES
+(20271, 'spell_pal_judgement'), -- Judgement Ret (20271)
+(275779, 'spell_pal_judgement'), -- Judgement Prot (275779)
+(269569, 'spell_pal_zeal'), -- Zeal (269569)
+(85804, 'spell_pal_selfless_healer'), -- Selfless Healer (85804)
+(196926, 'spell_pal_crusader_might'), -- Cruader's Might (196926)
+(204074, 'spell_pal_righteous_protector'), -- Righteous Protector (204074)
+(327193, 'spell_pal_moment_of_glory'), -- Moment of Glory (327193)
+(267610, 'spell_pal_righteous_verdict'); -- Righteous Verdict (267610)
+
+-- Spell Procs --
+DELETE FROM `spell_proc` WHERE `SpellId` IN
+(269569, -- Zeal (269569)
+ 269571, -- Zeal (269571)
+ 326732, -- Empyrean Power (326732)
+ 326733, -- Empyrean Power (326733)
+ 85804, -- Selfless Healer (85804)
+ 114250, -- Selfless Healer (114250)
+ 280373, -- Redoubt (280373)
+ 327193, -- Moment of Glory (327193)
+ 183778, -- Judgment of Light (183778)
+ 196926, -- Cruader's Might (196926)
+ 267610 -- Righteous Verdict (267610)
+);
+INSERT INTO `spell_proc` (`SpellId`,`SchoolMask`,`SpellFamilyName`,`SpellFamilyMask0`,`SpellFamilyMask1`,`SpellFamilyMask2`,`SpellFamilyMask3`,`ProcFlags`,`SpellTypeMask`,`SpellPhaseMask`,`HitMask`,`AttributesMask`,`DisableEffectsMask`,`ProcsPerMinute`,`Chance`,`Cooldown`,`Charges`) VALUES
+(269569,0,10,0x00800000,0x0,0x0,0x0,0x10,1,2,0x403,0,0,0,0,0,0), -- Zeal (269569), Proc on judgement trigger zeal effect
+(269571,1,0,0x0,0x0,0x0,0x0,0x4,1,1,0x403,0x10,14,0,0,0,0), -- Zeal (269571), Proc on auto attack to consume zeal effect
+(326732,0,10,0x0,0x00008000,0x0,0x0,0x10,1,2,0x403,0,0,0,15,0,0), -- Empyrean Power (326732), Proc to trigger only on crusader strike
+(326733,0,10,0x0,0x00020000,0x0,0x0,0x10,1,2,0x403,0x8,0,0,0,0,0), -- Empyrean Power (326733), Proc to consume Empryean Power (Divine Storm 53385)
+(85804,0,10,0x0,0x0,0x0,0x0,0x15510,7,1,0x403,0x4,0,0,0,0,0), -- Selfless Healer (85804), Proc on power spending abilitis
+(114250,0,10,0x40000000,0x0,0x0,0x0,0x4000,2,2,0x403,0,0,0,0,0,1), -- Selfless Healer (114250), Proc to consume on Flash of Light (19750)
+(280373,0,10,0x0,0x00100000,0x0,0x0,0x10,1,1,0,0,0,0,0,0,0), -- Redoubt (280373), proc to trigge from Shield of the Righteous (53600)
+(327193,0,10,0x00004000,0x0,0x0,0x0,0x10000,1,1,0x403,0,0,0,0,0,0), -- Moment of Glory (327193), proc to consume on Avenger's Shield (31935)
+(183778,0,10,0x00800000,0x0,0x0,0x0,0x10,1,2,0x403,0,0,0,0,0,0), -- Judgment of Light (183778), proc to trigger from Judgement
+(196926,0,10,0x0,0x00008000,0x0,0x0,0x10,1,2,0x403,0,0,0,0,0,0), -- Cruader's Might (196926), proc to trigger from Crusader Strike
+(267610,0,10,0x0,0x00001000,0x0,0x0,0x10,1,2,0x403,0,0,0,0,0,0); -- Righteous Verdict (267610), proc to trigger from Templar's Verdict (224266)
+
+-- Spell Areatriggers --
+DELETE FROM `spell_areatrigger` WHERE (`AreaTriggerId`=9228);
+INSERT INTO `spell_areatrigger` (`SpellMiscId`, `AreaTriggerId`, `MoveCurveId`, `ScaleCurveId`, `MorphCurveId`, `FacingCurveId`, `AnimId`, `AnimKitId`, `DecalPropertiesId`, `TimeToTarget`, `TimeToTargetScale`, `VerifiedBuild`) VALUES
+(4488, 9228, 0, 0, 0, 0, 0, 0, 0, 0, 12000, 37474); -- for Consecration (26573)
diff --git a/src/server/game/Spells/SpellScript.h b/src/server/game/Spells/SpellScript.h
index 1c0e5d3aba7..f7afc2b8ec8 100644
--- a/src/server/game/Spells/SpellScript.h
+++ b/src/server/game/Spells/SpellScript.h
@@ -852,7 +852,7 @@ class TC_GAME_API AuraScript : public _SpellScript
// executed when aura effect procs
// example: OnEffectProc += AuraEffectProcFn(class::function, EffectIndexSpecifier, EffectAuraNameSpecifier);
- // where function is: void function (AuraEffect const* aurEff, ProcEventInfo& procInfo);
+ // where function is: void function (AuraEffect* aurEff, ProcEventInfo& procInfo);
HookList<EffectProcHandler> OnEffectProc;
// executed after aura effect proced
// example: AfterEffectProc += AuraEffectProcFn(class::function, EffectIndexSpecifier, EffectAuraNameSpecifier);
diff --git a/src/server/scripts/Spells/spell_paladin.cpp b/src/server/scripts/Spells/spell_paladin.cpp
index c5c0e01a84a..4cf7d5e5a2c 100644
--- a/src/server/scripts/Spells/spell_paladin.cpp
+++ b/src/server/scripts/Spells/spell_paladin.cpp
@@ -22,9 +22,11 @@
*/
#include "ScriptMgr.h"
+#include "DB2Stores.h"
#include "Group.h"
#include "Player.h"
#include "Random.h"
+#include "Spell.h"
#include "SpellAuraEffects.h"
#include "SpellHistory.h"
#include "SpellMgr.h"
@@ -33,7 +35,7 @@
enum PaladinSpells
{
SPELL_PALADIN_AVENGERS_SHIELD = 31935,
- SPELL_PALADIN_AURA_MASTERY_IMMUNE = 64364,
+ SPELL_PALADIN_AVENGING_WRATH = 31884,
SPELL_PALADIN_BEACON_OF_LIGHT = 53563,
SPELL_PALADIN_BEACON_OF_LIGHT_HEAL = 53652,
SPELL_PALADIN_BLESSING_OF_LOWER_CITY_DRUID = 37878,
@@ -55,6 +57,8 @@ enum PaladinSpells
SPELL_PALADIN_FINAL_STAND = 204077,
SPELL_PALADIN_FINAL_STAND_EFFECT = 204079,
SPELL_PALADIN_FORBEARANCE = 25771,
+ SPELL_PALADIN_GUARDIAN_OF_ANCIENT_KINGS = 86659,
+ SPELL_PALADIN_HAMMER_OF_JUSTICE = 853,
SPELL_PALADIN_HAND_OF_SACRIFICE = 6940,
SPELL_PALADIN_HOLY_MENDING = 64891,
SPELL_PALADIN_HOLY_POWER_ARMOR = 28790,
@@ -66,11 +70,13 @@ enum PaladinSpells
SPELL_PALADIN_HOLY_SHOCK_R1_HEALING = 25914,
SPELL_PALADIN_IMMUNE_SHIELD_MARKER = 61988,
SPELL_PALADIN_ITEM_HEALING_TRANCE = 37706,
- SPELL_PALADIN_JUDGEMENT_DAMAGE = 54158,
+ SPELL_PALADIN_JUDGEMENT_GAIN_HOLY_POWER = 220637,
+ SPELL_PALADIN_JUDGEMENT_PROT_RET_R3 = 315867,
SPELL_PALADIN_RIGHTEOUS_DEFENSE_TAUNT = 31790,
- SPELL_PALADIN_SANCTIFIED_WRATH = 57318,
- SPELL_PALADIN_SANCTIFIED_WRATH_TALENT_R1 = 53375,
- SPELL_PALADIN_SEAL_OF_RIGHTEOUSNESS = 25742
+ SPELL_PALADIN_RIGHTEOUS_VERDICT_AURA = 267611,
+ SPELL_PALADIN_SEAL_OF_RIGHTEOUSNESS = 25742,
+ SPELL_PALADIN_TEMPLAR_VERDICT_DAMAGE = 224266,
+ SPELL_PALADIN_ZEAL_AURA = 269571,
};
enum PaladinSpellVisualKit
@@ -272,6 +278,27 @@ class spell_pal_blinding_light : public SpellScript
}
};
+// 196926 - Crusader Might
+class spell_pal_crusader_might : public AuraScript
+{
+ PrepareAuraScript(spell_pal_crusader_might);
+
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({ SPELL_PALADIN_HOLY_SHOCK_R1 });
+ }
+
+ void HandleEffectProc(AuraEffect* aurEff, ProcEventInfo& /*eventInfo*/)
+ {
+ GetTarget()->GetSpellHistory()->ModifyCooldown(SPELL_PALADIN_HOLY_SHOCK_R1, aurEff->GetAmount());
+ }
+
+ void Register() override
+ {
+ OnEffectProc += AuraEffectProcFn(spell_pal_crusader_might::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
+ }
+};
+
// 642 - Divine Shield
class spell_pal_divine_shield : public SpellScript
{
@@ -374,33 +401,53 @@ class spell_pal_divine_storm : public SpellScript
bool Validate(SpellInfo const* /*spellInfo*/) override
{
- return ValidateSpellInfo({ SPELL_PALADIN_DIVINE_STORM_DAMAGE });
+ return sSpellVisualKitStore.HasRecord(PALADIN_VISUAL_KIT_DIVINE_STORM);
}
void HandleOnCast()
{
- Unit* caster = GetCaster();
- caster->SendPlaySpellVisualKit(PALADIN_VISUAL_KIT_DIVINE_STORM, 0, 0);
+ GetCaster()->SendPlaySpellVisualKit(PALADIN_VISUAL_KIT_DIVINE_STORM, 0, 0);
}
- void HandleDummy(SpellEffIndex /* effIndex */)
+ void Register() override
{
- Unit* caster = GetCaster();
- Unit* target = GetHitUnit();
- if (!target)
- return;
+ OnCast += SpellCastFn(spell_pal_divine_storm::HandleOnCast);
+ }
+};
- caster->CastSpell(target, SPELL_PALADIN_DIVINE_STORM_DAMAGE, true);
+// 234299 - Fist of Justice
+class spell_pal_fist_of_justice : public AuraScript
+{
+ PrepareAuraScript(spell_pal_fist_of_justice);
+
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({ SPELL_PALADIN_HAMMER_OF_JUSTICE });
+ }
+
+ bool CheckEffectProc(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
+ {
+ if (Spell const* procSpell = eventInfo.GetProcSpell())
+ return procSpell->HasPowerTypeCost(POWER_HOLY_POWER);
+
+ return false;
+ }
+
+ void HandleEffectProc(AuraEffect* aurEff, ProcEventInfo& /*procInfo*/)
+ {
+ int32 value = aurEff->GetAmount() / 10;
+
+ GetTarget()->GetSpellHistory()->ModifyCooldown(SPELL_PALADIN_HAMMER_OF_JUSTICE, -value);
}
void Register() override
{
- OnCast += SpellCastFn(spell_pal_divine_storm::HandleOnCast);
- OnEffectHitTarget += SpellEffectFn(spell_pal_divine_storm::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
+ DoCheckEffectProc += AuraCheckEffectProcFn(spell_pal_fist_of_justice::CheckEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
+ OnEffectProc += AuraEffectProcFn(spell_pal_fist_of_justice::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
}
};
-// -75806 - Grand Crusader
+// -85043 - Grand Crusader
class spell_pal_grand_crusader : public SpellScriptLoader
{
public:
@@ -511,6 +558,50 @@ class spell_pal_hand_of_sacrifice : public SpellScriptLoader
}
};
+// 327193 - Moment of Glory
+class spell_pal_moment_of_glory : public SpellScript
+{
+ PrepareSpellScript(spell_pal_moment_of_glory);
+
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({ SPELL_PALADIN_AVENGERS_SHIELD });
+ }
+
+ void HandleOnHit()
+ {
+ GetCaster()->GetSpellHistory()->ResetCooldown(SPELL_PALADIN_AVENGERS_SHIELD);
+ }
+
+ void Register() override
+ {
+ OnHit += SpellHitFn(spell_pal_moment_of_glory::HandleOnHit);
+ }
+};
+
+// 20271/275779 - Judgement Ret/Prot
+class spell_pal_judgement : public SpellScript
+{
+ PrepareSpellScript(spell_pal_judgement);
+
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({ SPELL_PALADIN_JUDGEMENT_PROT_RET_R3, SPELL_PALADIN_JUDGEMENT_GAIN_HOLY_POWER });
+ }
+
+ void HandleOnHit()
+ {
+ Unit* caster = GetCaster();
+ if (caster->HasSpell(SPELL_PALADIN_JUDGEMENT_PROT_RET_R3))
+ caster->CastSpell(caster, SPELL_PALADIN_JUDGEMENT_GAIN_HOLY_POWER, TRIGGERED_FULL_MASK);
+ }
+
+ void Register() override
+ {
+ OnHit += SpellHitFn(spell_pal_judgement::HandleOnHit);
+ }
+};
+
// 20473 - Holy Shock
class spell_pal_holy_shock : public SpellScript
{
@@ -643,56 +734,6 @@ class spell_pal_item_t6_trinket : public AuraScript
}
};
-// 20271 - Judgement
-/// Updated 4.3.4
-class spell_pal_judgement : public SpellScriptLoader
-{
- public:
- spell_pal_judgement() : SpellScriptLoader("spell_pal_judgement") { }
-
- class spell_pal_judgement_SpellScript : public SpellScript
- {
- PrepareSpellScript(spell_pal_judgement_SpellScript);
-
- private:
- bool Validate(SpellInfo const* /*spellInfo*/) override
- {
- return ValidateSpellInfo({ SPELL_PALADIN_JUDGEMENT_DAMAGE });
- }
-
- void HandleScriptEffect(SpellEffIndex /*effIndex*/)
- {
- uint32 spellId = SPELL_PALADIN_JUDGEMENT_DAMAGE;
-
- // some seals have SPELL_AURA_DUMMY in EFFECT_2
- Unit::AuraEffectList const& auras = GetCaster()->GetAuraEffectsByType(SPELL_AURA_DUMMY);
- for (Unit::AuraEffectList::const_iterator i = auras.begin(); i != auras.end(); ++i)
- {
- if ((*i)->GetSpellInfo()->GetSpellSpecific() == SPELL_SPECIFIC_SEAL && (*i)->GetEffIndex() == EFFECT_2)
- {
- if (sSpellMgr->GetSpellInfo((*i)->GetAmount(), GetCastDifficulty()))
- {
- spellId = (*i)->GetAmount();
- break;
- }
- }
- }
-
- GetCaster()->CastSpell(GetHitUnit(), spellId, true);
- }
-
- void Register() override
- {
- OnEffectHitTarget += SpellEffectFn(spell_pal_judgement_SpellScript::HandleScriptEffect, EFFECT_0, SPELL_EFFECT_DUMMY);
- }
- };
-
- SpellScript* GetSpellScript() const override
- {
- return new spell_pal_judgement_SpellScript();
- }
-};
-
// 633 - Lay on Hands
class spell_pal_lay_on_hands : public SpellScript
{
@@ -794,57 +835,101 @@ class spell_pal_light_s_beacon : public SpellScriptLoader
}
};
-// 85256 - Templar's Verdict
-/// Updated 4.3.4
-class spell_pal_templar_s_verdict : public SpellScript
+// 204074 - Righteous Protector
+class spell_pal_righteous_protector : public AuraScript
{
- PrepareSpellScript(spell_pal_templar_s_verdict);
+ PrepareAuraScript(spell_pal_righteous_protector);
- bool Validate (SpellInfo const* /*spellEntry*/) override
+ bool Validate(SpellInfo const* /*spellInfo*/) override
{
- return ValidateSpellInfo({ SPELL_PALADIN_DIVINE_PURPOSE_PROC });
+ return ValidateSpellInfo({ SPELL_PALADIN_AVENGING_WRATH, SPELL_PALADIN_GUARDIAN_OF_ANCIENT_KINGS });
}
- bool Load() override
+ bool CheckEffectProc(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
{
- if (GetCaster()->GetTypeId() != TYPEID_PLAYER)
- return false;
+ if (SpellInfo const* procSpell = eventInfo.GetSpellInfo())
+ _baseHolyPowerCost = procSpell->CalcPowerCost(POWER_HOLY_POWER, false, eventInfo.GetActor(), eventInfo.GetSchoolMask());
+ else
+ _baseHolyPowerCost.reset();
- if (GetCaster()->ToPlayer()->getClass() != CLASS_PALADIN)
- return false;
+ return _baseHolyPowerCost.is_initialized();
+ }
- return true;
+ void HandleEffectProc(AuraEffect* aurEff, ProcEventInfo& /*eventInfo*/)
+ {
+ int32 value = aurEff->GetAmount() * 100 * _baseHolyPowerCost->Amount;
+
+ GetTarget()->GetSpellHistory()->ModifyCooldown(SPELL_PALADIN_AVENGING_WRATH, -value);
+ GetTarget()->GetSpellHistory()->ModifyCooldown(SPELL_PALADIN_GUARDIAN_OF_ANCIENT_KINGS, -value);
}
- void ChangeDamage(SpellEffIndex /*effIndex*/)
+ void Register() override
{
- Unit* caster = GetCaster();
- int32 damage = GetHitDamage();
+ DoCheckEffectProc += AuraCheckEffectProcFn(spell_pal_righteous_protector::CheckEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
+ OnEffectProc += AuraEffectProcFn(spell_pal_righteous_protector::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
+ }
- if (caster->HasAura(SPELL_PALADIN_DIVINE_PURPOSE_PROC))
- damage *= 7.5; // 7.5*30% = 225%
- else
- {
- switch (caster->GetPower(POWER_HOLY_POWER))
- {
- case 0: // 1 Holy Power
- // same damage
- break;
- case 1: // 2 Holy Power
- damage *= 3; // 3*30 = 90%
- break;
- case 2: // 3 Holy Power
- damage *= 7.5; // 7.5*30% = 225%
- break;
- }
- }
+ Optional<SpellPowerCost> _baseHolyPowerCost;
+};
+
+// 267610 - Righteous Verdict
+class spell_pal_righteous_verdict : public AuraScript
+{
+ PrepareAuraScript(spell_pal_righteous_verdict);
+
+ bool Validate(SpellInfo const* /*spellEntry*/) override
+ {
+ return ValidateSpellInfo({ SPELL_PALADIN_RIGHTEOUS_VERDICT_AURA });
+ }
- SetHitDamage(damage);
+ void HandleEffectProc(AuraEffect* /*aurEff*/, ProcEventInfo& procInfo)
+ {
+ procInfo.GetActor()->CastSpell(procInfo.GetActor(), SPELL_PALADIN_RIGHTEOUS_VERDICT_AURA, true);
}
void Register() override
{
- OnEffectHitTarget += SpellEffectFn(spell_pal_templar_s_verdict::ChangeDamage, EFFECT_0, SPELL_EFFECT_WEAPON_PERCENT_DAMAGE);
+ OnEffectProc += AuraEffectProcFn(spell_pal_righteous_verdict::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
+ }
+};
+
+// 85804 - Selfless Healer
+class spell_pal_selfless_healer : public AuraScript
+{
+ PrepareAuraScript(spell_pal_selfless_healer);
+
+ bool CheckEffectProc(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
+ {
+ if (Spell const* procSpell = eventInfo.GetProcSpell())
+ return procSpell->HasPowerTypeCost(POWER_HOLY_POWER);
+
+ return false;
+ }
+
+ void Register() override
+ {
+ DoCheckEffectProc += AuraCheckEffectProcFn(spell_pal_selfless_healer::CheckEffectProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
+ }
+};
+
+// 85256 - Templar's Verdict
+class spell_pal_templar_s_verdict : public SpellScript
+{
+ PrepareSpellScript(spell_pal_templar_s_verdict);
+
+ bool Validate(SpellInfo const* /*spellEntry*/) override
+ {
+ return ValidateSpellInfo({ SPELL_PALADIN_TEMPLAR_VERDICT_DAMAGE });
+ }
+
+ void HandleHitTarget(SpellEffIndex /*effIndex*/)
+ {
+ GetCaster()->CastSpell(GetHitUnit(), SPELL_PALADIN_TEMPLAR_VERDICT_DAMAGE, true);
+ }
+
+ void Register() override
+ {
+ OnEffectHitTarget += SpellEffectFn(spell_pal_templar_s_verdict::HandleHitTarget, EFFECT_0, SPELL_EFFECT_DUMMY);
}
};
@@ -962,25 +1047,56 @@ class spell_pal_t8_2p_bonus : public SpellScriptLoader
}
};
+// 269569 - Zeal
+class spell_pal_zeal : public AuraScript
+{
+ PrepareAuraScript(spell_pal_zeal);
+
+ bool Validate(SpellInfo const* /*spellInfo*/) override
+ {
+ return ValidateSpellInfo({ SPELL_PALADIN_ZEAL_AURA });
+ }
+
+ void HandleEffectProc(AuraEffect* aurEff, ProcEventInfo& /*procInfo*/)
+ {
+ Unit* target = GetTarget();
+ target->CastCustomSpell(SPELL_PALADIN_ZEAL_AURA, SPELLVALUE_AURA_STACK, aurEff->GetAmount(), target, true);
+
+ PreventDefaultAction();
+ }
+
+ void Register() override
+ {
+ OnEffectProc += AuraEffectProcFn(spell_pal_zeal::HandleEffectProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
+ }
+};
+
void AddSC_paladin_spell_scripts()
{
//new spell_pal_ardent_defender();
RegisterSpellScript(spell_pal_blessing_of_faith);
RegisterSpellScript(spell_pal_blessing_of_protection);
RegisterSpellScript(spell_pal_blinding_light);
+ RegisterAuraScript(spell_pal_crusader_might);
RegisterSpellScript(spell_pal_divine_shield);
RegisterSpellScript(spell_pal_divine_steed);
RegisterSpellScript(spell_pal_divine_storm);
+ RegisterAuraScript(spell_pal_fist_of_justice);
RegisterSpellScript(spell_pal_glyph_of_holy_light);
new spell_pal_grand_crusader();
new spell_pal_hand_of_sacrifice();
+ RegisterSpellScript(spell_pal_moment_of_glory);
+ RegisterSpellScript(spell_pal_judgement);
RegisterSpellScript(spell_pal_holy_shock);
RegisterAuraScript(spell_pal_item_healing_discount);
RegisterAuraScript(spell_pal_item_t6_trinket);
- new spell_pal_judgement();
RegisterSpellScript(spell_pal_lay_on_hands);
new spell_pal_light_s_beacon();
+ RegisterAuraScript(spell_pal_righteous_protector);
+ RegisterAuraScript(spell_pal_righteous_verdict);
+ RegisterAuraScript(spell_pal_selfless_healer);
RegisterSpellScript(spell_pal_templar_s_verdict);
new spell_pal_t3_6p_bonus();
new spell_pal_t8_2p_bonus();
+ RegisterAuraScript(spell_pal_zeal);
}