424 for (Unit::AuraList::const_iterator itr = auras.begin(); itr != auras.end(); ++itr)
428 std::list<AuraApplication*> applications;
429 (*itr)->GetApplicationList(applications);
430 if (applications.empty())
474 switch (unitTarget->getClass())
492 caster->
CastSpell(caster, spell_id,
true);
641 if (!firstRankSpellInfo)
645 if (!spellInfo->
IsRankOf(firstRankSpellInfo))
760 if (!target->IsFriendlyTo(caster) || target->getAttackers().empty())
@ SPELL_EFFECT_TRIGGER_SPELL
@ SPELL_EFFECT_WEAPON_PERCENT_DAMAGE
@ SPELL_EFFECT_SCHOOL_DAMAGE
@ SPELL_FAILED_BAD_TARGETS
@ SPELL_FAILED_UNIT_NOT_INFRONT
@ SPELL_FAILED_DONT_REPORT
@ SPELL_FAILED_CANT_DO_THAT_RIGHT_NOW
@ SPELL_AURA_ADD_PCT_MODIFIER
@ SPELL_AURA_PROC_TRIGGER_SPELL
@ AURA_EFFECT_HANDLE_REAL
#define SpellCheckCastFn(F)
#define AuraEffectProcFn(F, I, N)
#define SpellEffectFn(F, I, N)
#define AuraEffectApplyFn(F, I, N, M)
#define AuraEffectSplitFn(F, I)
#define AuraCheckProcFn(F)
#define AuraCheckAreaTargetFn(F)
#define AuraEffectRemoveFn(F, I, N, M)
T CalculatePct(T base, U pct)
void PreventDefaultAction()
HookList< EffectApplyHandler > AfterEffectRemove
HookList< EffectApplyHandler > AfterEffectApply
uint64 GetCasterGUID() const
HookList< CheckAreaTargetHandler > DoCheckAreaTarget
HookList< CheckProcHandler > DoCheckProc
HookList< EffectProcHandler > OnEffectProc
HookList< EffectSplitHandler > OnEffectSplit
SpellInfo const * GetSpellInfo() const
void RemoveSpellCooldown(uint32 spell_id, bool update=false)
HealInfo * GetHealInfo() const
Unit * GetActionTarget() const
DamageInfo * GetDamageInfo() const
Unit * GetProcTarget() const
bool IsRankOf(SpellInfo const *spellInfo) const
Unit * GetExplTargetUnit()
HookList< CheckCastHandler > OnCheckCast
SpellInfo const * GetSpellInfo()
void PreventHitDefaultEffect(SpellEffIndex effIndex)
HookList< EffectHandler > OnEffectHitTarget
HookList< EffectHandler > OnEffectLaunchTarget
void SetHitDamage(int32 damage)
SpellScriptLoader(const char *name)
void RemoveOwnedAura(AuraMap::iterator &i, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
bool IsValidAttackTarget(Unit const *target) const
void RemoveAura(AuraApplicationMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, uint64 originalCaster=0)
std::list< Aura * > AuraList
Aura * GetAura(uint32 spellId, uint64 casterGUID=0, uint64 itemCasterGUID=0, uint32 reqEffMask=0) const
bool HasAura(uint32 spellId, uint64 casterGUID=0, uint64 itemCasterGUID=0, uint32 reqEffMask=0) const
bool HealthBelowPct(int32 pct) const
int32 SpellBaseDamageBonusTaken(SpellSchoolMask schoolMask) const
int32 GetPower(Powers power) const
void CastCustomSpell(Unit *victim, uint32 spellId, int32 const *bp0, int32 const *bp1, int32 const *bp2, bool triggered, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, uint64 originalCaster=0)
bool IsFriendlyTo(Unit const *unit) const
AuraList & GetSingleCastAuras()
int32 SpellBaseDamageBonusDone(SpellSchoolMask schoolMask) const
float GetTotalAttackPowerValue(WeaponAttackType attType) const
bool isInFront(WorldObject const *target, float arc=M_PI) const
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_pal_aura_mastery_AuraScript)
void HandleEffectRemove(AuraEffect const *, AuraEffectHandleModes)
void HandleEffectApply(AuraEffect const *, AuraEffectHandleModes)
bool CheckAreaTarget(Unit *target)
PrepareAuraScript(spell_pal_aura_mastery_immune_AuraScript)
bool Validate(SpellInfo const *) override
spell_pal_aura_mastery_immune()
AuraScript * GetAuraScript() const override
AuraScript * GetAuraScript() const override
void HandleProc(AuraEffect const *aurEff, ProcEventInfo &eventInfo)
PrepareAuraScript(spell_pal_beacon_of_light_AuraScript)
bool CheckProc(ProcEventInfo &eventInfo)
bool Validate(SpellInfo const *) override
spell_pal_beacon_of_light()
AuraScript * GetAuraScript() const override
void HandleDummy(SpellEffIndex)
bool Validate(SpellInfo const *) override
PrepareSpellScript(spell_pal_blessing_of_faith_SpellScript)
SpellScript * GetSpellScript() const override
spell_pal_blessing_of_faith()
void HandleRemoveAura(SpellEffIndex)
bool Validate(SpellInfo const *) override
PrepareSpellScript(spell_pal_divine_light_SpellScript)
SpellScript * GetSpellScript() const override
void HandleEffectProc(AuraEffect const *aurEff, ProcEventInfo &eventInfo)
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_pal_eye_for_an_eye_AuraScript)
AuraScript * GetAuraScript() const override
spell_pal_eye_for_an_eye()
void HandleRemoveAura(SpellEffIndex)
bool Validate(SpellInfo const *) override
PrepareSpellScript(spell_pal_flash_of_light_SpellScript)
SpellScript * GetSpellScript() const override
spell_pal_flash_of_light()
void HandleEffectProc(AuraEffect const *, ProcEventInfo &)
bool Validate(SpellInfo const *) override
bool CheckProc(ProcEventInfo &)
PrepareAuraScript(spell_pal_grand_crusader_AuraScript)
spell_pal_grand_crusader()
AuraScript * GetAuraScript() const override
void Split(AuraEffect *, DamageInfo &, uint32 &splitAmount)
PrepareAuraScript(spell_pal_hand_of_sacrifice_AuraScript)
spell_pal_hand_of_sacrifice()
AuraScript * GetAuraScript() const override
bool Validate(SpellInfo const *) override
void HandleRemoveAura(SpellEffIndex)
PrepareSpellScript(spell_pal_holy_radiance_SpellScript)
spell_pal_holy_radiance()
SpellScript * GetSpellScript() const override
bool Validate(SpellInfo const *spellInfo) override
PrepareSpellScript(spell_pal_holy_shock_SpellScript)
SpellCastResult CheckCast()
void HandleDummy(SpellEffIndex)
SpellScript * GetSpellScript() const override
PrepareAuraScript(spell_pal_item_healing_discount_AuraScript)
bool Validate(SpellInfo const *) override
void HandleProc(AuraEffect const *aurEff, ProcEventInfo &)
AuraScript * GetAuraScript() const override
spell_pal_item_healing_discount()
PrepareSpellScript(spell_pal_judgment_SpellScript)
bool Validate(SpellInfo const *) override
void HandleDummy(SpellEffIndex)
SpellScript * GetSpellScript() const override
void HandleTriggerSpellHit(SpellEffIndex effIndex)
void HandleTriggerSpellLaunch(SpellEffIndex effIndex)
SpellCastResult CheckCast()
bool Validate(SpellInfo const *) override
PrepareSpellScript(spell_pal_righteous_defense_SpellScript)
spell_pal_righteous_defense()
SpellScript * GetSpellScript() const override
SpellCastResult CheckCast()
PrepareSpellScript(spell_pal_sacred_shield_SpellScript)
spell_pal_sacred_shield()
SpellScript * GetSpellScript() const override
PrepareAuraScript(spell_pal_seal_of_righteousness_AuraScript)
bool Validate(SpellInfo const *) override
bool CheckProc(ProcEventInfo &eventInfo)
void HandleProc(AuraEffect const *aurEff, ProcEventInfo &eventInfo)
AuraScript * GetAuraScript() const override
spell_pal_seal_of_righteousness()
bool Validate(SpellInfo const *) override
PrepareAuraScript(spell_pal_selfless_healer_AuraScript)
void HandleEffectStackProc(AuraEffect const *aurEff, ProcEventInfo &eventInfo)
spell_pal_selfless_healer()
AuraScript * GetAuraScript() const override
bool Validate(SpellInfo const *) override
void ChangeDamage(SpellEffIndex)
PrepareSpellScript(spell_pal_templar_s_verdict_SpellScript)
spell_pal_templar_s_verdict()
SpellScript * GetSpellScript() const override
@ SPELL_PALADIN_HOLY_SHOCK_R1_DAMAGE
@ SPELL_PALADIN_AURA_MASTERY_IMMUNE
@ SPELL_PALADIN_BEACON_OF_LIGHT_MARKER
@ SPELL_PALADIN_HOLY_SHOCK_R1_HEALING
@ SPELL_PALADIN_LONG_ARM_OF_THE_LAW_SPEEDBUFF
@ SPELL_PALADIN_LONG_ARM_OF_THE_LAW_TALENT
@ SPELL_PALADIN_SELFLESS_HEALER_CHECKER
@ SPELL_PALADIN_EYE_FOR_AN_EYE_DAMAGE
@ SPELL_PALADIN_BEACON_OF_LIGHT_HEAL
@ SPELL_PALADIN_SELFLESS_HEALER_ENERGIZE
@ SPELL_PALADIN_BLESSING_OF_LOWER_CITY_SHAMAN
@ SPELL_PALADIN_SELFLESS_HEALER_BUFF
@ SPELL_PALADIN_SEAL_OF_RIGHTEOUSNESS
@ SPELL_PALADIN_EYE_FOR_AN_EYE_RANK_1
@ SPELL_PALADIN_BLESSING_OF_LOWER_CITY_PALADIN
@ SPELL_PALADIN_BLESSING_OF_LOWER_CITY_DRUID
@ SPELL_PALADIN_RIGHTEOUS_DEFENSE_TAUNT
@ SPELL_PALADIN_CONCENTRACTION_AURA
@ SPELL_PALADIN_SELFLESS_HEALER_TALENT
@ SPELL_PALADIN_HAND_OF_SACRIFICE
@ SPELL_PALADIN_AVENGERS_SHIELD
@ SPELL_PALADIN_ITEM_HEALING_TRANCE
@ SPELL_PALADIN_BLESSING_OF_LOWER_CITY_PRIEST
@ SPELL_PALADIN_DIVINE_PURPOSE_PROC
@ SPELL_PALADIN_HOLY_LIGHT
@ SPELL_PALADIN_HOLY_SHOCK_R1
void AddSC_paladin_spell_scripts()