#define RegisterSpellScript(spell_script)
@ SPELL_FAILED_AFFECTING_COMBAT
@ SPELL_FAILED_DONT_REPORT
@ SPELL_AURA_PERIODIC_DUMMY
#define SpellCheckCastFn(F)
#define AuraEffectPeriodicFn(F, I, N)
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< CheckCastHandler > OnCheckCast
Unit * GetExplTargetUnit() const
SpellInfo const * GetSpellInfo() const
static void SendCastResult(Player *caster, SpellInfo const *spellInfo, SpellCastVisual spellVisual, ObjectGuid cast_count, SpellCastResult result, SpellCustomErrors customError=SPELL_CUSTOM_ERROR_NONE, int32 *param1=nullptr, int32 *param2=nullptr)
void AddThreat(Unit *target, float amount, SpellInfo const *spell=nullptr, bool ignoreModifiers=false, bool ignoreRedirects=false)
== AFFECT MY THREAT LIST ==
virtual void AttackStart(Unit *victim)
Unit * SelectTarget(SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
ThreatManager & GetThreatManager()
void HandleEffectPeriodic(AuraEffect const *)
SpellCastResult CheckRequirement()