TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
SpellScript.h File Reference
#include "Util.h"
#include "SharedDefines.h"
#include "SpellAuraDefines.h"
#include "Spell.h"
#include <stack>
+ Include dependency graph for SpellScript.h:

Go to the source code of this file.

Classes

class  _SpellScript
 
class  _SpellScript::EffectHook
 
class  _SpellScript::EffectNameCheck
 
class  _SpellScript::EffectAuraNameCheck
 
class  SpellScript
 
class  SpellScript::CastHandler
 
class  SpellScript::CheckCastHandler
 
class  SpellScript::EffectHandler
 
class  SpellScript::HitHandler
 
class  SpellScript::TargetHook
 
class  SpellScript::ObjectAreaTargetSelectHandler
 
class  SpellScript::ObjectTargetSelectHandler
 
class  SpellScript::DestinationTargetSelectHandler
 
class  AuraScript
 
class  AuraScript::CheckAreaTargetHandler
 
class  AuraScript::AuraDispelHandler
 
class  AuraScript::EffectBase
 
class  AuraScript::EffectPeriodicHandler
 
class  AuraScript::EffectUpdatePeriodicHandler
 
class  AuraScript::EffectCalcAmountHandler
 
class  AuraScript::EffectCalcPeriodicHandler
 
class  AuraScript::EffectCalcSpellModHandler
 
class  AuraScript::EffectApplyHandler
 
class  AuraScript::EffectAbsorbHandler
 
class  AuraScript::EffectManaShieldHandler
 
class  AuraScript::EffectSplitHandler
 
class  AuraScript::CheckProcHandler
 
class  AuraScript::AuraProcHandler
 
class  AuraScript::EffectProcHandler
 
class  AuraScript::ScriptStateStore
 

Macros

#define SPELL_EFFECT_ANY   (uint16)-1
 
#define SPELL_AURA_ANY   (uint16)-1
 
#define SPELL_SCRIPT_STATE_END   SPELL_SCRIPT_STATE_UNLOADING + 1
 
#define HOOK_SPELL_HIT_START   SPELL_SCRIPT_HOOK_EFFECT_HIT
 
#define HOOK_SPELL_HIT_END   SPELL_SCRIPT_HOOK_AFTER_HIT + 1
 
#define HOOK_SPELL_START   SPELL_SCRIPT_HOOK_EFFECT
 
#define HOOK_SPELL_END   SPELL_SCRIPT_HOOK_CHECK_CAST + 1
 
#define HOOK_SPELL_COUNT   HOOK_SPELL_END - HOOK_SPELL_START
 
#define SPELLSCRIPT_FUNCTION_TYPE_DEFINES(CLASSNAME)
 
#define SPELLSCRIPT_FUNCTION_CAST_DEFINES(CLASSNAME)
 
#define PrepareSpellScript(CLASSNAME)   SPELLSCRIPT_FUNCTION_TYPE_DEFINES(CLASSNAME) SPELLSCRIPT_FUNCTION_CAST_DEFINES(CLASSNAME)
 
#define SpellCastFn(F)   CastHandlerFunction(&F)
 
#define SpellCheckCastFn(F)   CheckCastHandlerFunction(&F)
 
#define SpellEffectFn(F, I, N)   EffectHandlerFunction(&F, I, N)
 
#define SpellHitFn(F)   HitHandlerFunction(&F)
 
#define SpellObjectAreaTargetSelectFn(F, I, N)   ObjectAreaTargetSelectHandlerFunction(&F, I, N)
 
#define SpellObjectTargetSelectFn(F, I, N)   ObjectTargetSelectHandlerFunction(&F, I, N)
 
#define SpellDestinationTargetSelectFn(F, I, N)   DestinationTargetSelectHandlerFunction(&F, I, N)
 
#define AURASCRIPT_FUNCTION_TYPE_DEFINES(CLASSNAME)
 
#define AURASCRIPT_FUNCTION_CAST_DEFINES(CLASSNAME)
 
#define PrepareAuraScript(CLASSNAME)   AURASCRIPT_FUNCTION_TYPE_DEFINES(CLASSNAME) AURASCRIPT_FUNCTION_CAST_DEFINES(CLASSNAME)
 
#define AuraCheckAreaTargetFn(F)   CheckAreaTargetFunction(&F)
 
#define AuraDispelFn(F)   AuraDispelFunction(&F)
 
#define AuraEffectApplyFn(F, I, N, M)   EffectApplyHandlerFunction(&F, I, N, M)
 
#define AuraEffectRemoveFn(F, I, N, M)   EffectApplyHandlerFunction(&F, I, N, M)
 
#define AuraEffectPeriodicFn(F, I, N)   EffectPeriodicHandlerFunction(&F, I, N)
 
#define AuraEffectUpdatePeriodicFn(F, I, N)   EffectUpdatePeriodicHandlerFunction(&F, I, N)
 
#define AuraEffectCalcAmountFn(F, I, N)   EffectCalcAmountHandlerFunction(&F, I, N)
 
#define AuraEffectCalcPeriodicFn(F, I, N)   EffectCalcPeriodicHandlerFunction(&F, I, N)
 
#define AuraEffectCalcSpellModFn(F, I, N)   EffectCalcSpellModHandlerFunction(&F, I, N)
 
#define AuraEffectAbsorbFn(F, I)   EffectAbsorbFunction(&F, I)
 
#define AuraEffectManaShieldFn(F, I)   EffectManaShieldFunction(&F, I)
 
#define AuraEffectSplitFn(F, I)   EffectSplitFunction(&F, I)
 
#define AuraCheckProcFn(F)   CheckProcHandlerFunction(&F)
 
#define AuraProcFn(F)   AuraProcHandlerFunction(&F)
 
#define AuraEffectProcFn(F, I, N)   EffectProcHandlerFunction(&F, I, N)
 

Enumerations

enum  SpellScriptState { SPELL_SCRIPT_STATE_NONE = 0, SPELL_SCRIPT_STATE_REGISTRATION, SPELL_SCRIPT_STATE_LOADING, SPELL_SCRIPT_STATE_UNLOADING }
 
enum  SpellScriptHookType {
  SPELL_SCRIPT_HOOK_EFFECT_LAUNCH = SPELL_SCRIPT_STATE_END, SPELL_SCRIPT_HOOK_EFFECT_LAUNCH_TARGET, SPELL_SCRIPT_HOOK_EFFECT_HIT, SPELL_SCRIPT_HOOK_EFFECT_HIT_TARGET,
  SPELL_SCRIPT_HOOK_EFFECT_SUCCESSFUL_DISPEL, SPELL_SCRIPT_HOOK_BEFORE_HIT, SPELL_SCRIPT_HOOK_HIT, SPELL_SCRIPT_HOOK_AFTER_HIT,
  SPELL_SCRIPT_HOOK_OBJECT_AREA_TARGET_SELECT, SPELL_SCRIPT_HOOK_OBJECT_TARGET_SELECT, SPELL_SCRIPT_HOOK_DESTINATION_TARGET_SELECT, SPELL_SCRIPT_HOOK_CHECK_CAST,
  SPELL_SCRIPT_HOOK_BEFORE_CAST, SPELL_SCRIPT_HOOK_ON_CAST, SPELL_SCRIPT_HOOK_AFTER_CAST
}
 
enum  AuraScriptHookType {
  AURA_SCRIPT_HOOK_EFFECT_APPLY = SPELL_SCRIPT_STATE_END, AURA_SCRIPT_HOOK_EFFECT_AFTER_APPLY, AURA_SCRIPT_HOOK_EFFECT_REMOVE, AURA_SCRIPT_HOOK_EFFECT_AFTER_REMOVE,
  AURA_SCRIPT_HOOK_EFFECT_PERIODIC, AURA_SCRIPT_HOOK_EFFECT_UPDATE_PERIODIC, AURA_SCRIPT_HOOK_EFFECT_CALC_AMOUNT, AURA_SCRIPT_HOOK_EFFECT_CALC_PERIODIC,
  AURA_SCRIPT_HOOK_EFFECT_CALC_SPELLMOD, AURA_SCRIPT_HOOK_EFFECT_ABSORB, AURA_SCRIPT_HOOK_EFFECT_AFTER_ABSORB, AURA_SCRIPT_HOOK_EFFECT_MANASHIELD,
  AURA_SCRIPT_HOOK_EFFECT_AFTER_MANASHIELD, AURA_SCRIPT_HOOK_EFFECT_SPLIT, AURA_SCRIPT_HOOK_CHECK_AREA_TARGET, AURA_SCRIPT_HOOK_DISPEL,
  AURA_SCRIPT_HOOK_AFTER_DISPEL, AURA_SCRIPT_HOOK_CHECK_PROC, AURA_SCRIPT_HOOK_PREPARE_PROC, AURA_SCRIPT_HOOK_PROC,
  AURA_SCRIPT_HOOK_EFFECT_PROC, AURA_SCRIPT_HOOK_EFFECT_AFTER_PROC, AURA_SCRIPT_HOOK_AFTER_PROC
}
 

Macro Definition Documentation

#define AuraCheckAreaTargetFn (   F)    CheckAreaTargetFunction(&F)
#define AuraCheckProcFn (   F)    CheckProcHandlerFunction(&F)
#define AuraDispelFn (   F)    AuraDispelFunction(&F)
#define AuraEffectAbsorbFn (   F,
  I 
)    EffectAbsorbFunction(&F, I)
#define AuraEffectApplyFn (   F,
  I,
  N,
 
)    EffectApplyHandlerFunction(&F, I, N, M)
#define AuraEffectCalcAmountFn (   F,
  I,
 
)    EffectCalcAmountHandlerFunction(&F, I, N)
#define AuraEffectCalcPeriodicFn (   F,
  I,
 
)    EffectCalcPeriodicHandlerFunction(&F, I, N)
#define AuraEffectCalcSpellModFn (   F,
  I,
 
)    EffectCalcSpellModHandlerFunction(&F, I, N)
#define AuraEffectManaShieldFn (   F,
  I 
)    EffectManaShieldFunction(&F, I)
#define AuraEffectPeriodicFn (   F,
  I,
 
)    EffectPeriodicHandlerFunction(&F, I, N)
#define AuraEffectProcFn (   F,
  I,
 
)    EffectProcHandlerFunction(&F, I, N)
#define AuraEffectRemoveFn (   F,
  I,
  N,
 
)    EffectApplyHandlerFunction(&F, I, N, M)
#define AuraEffectSplitFn (   F,
  I 
)    EffectSplitFunction(&F, I)
#define AuraEffectUpdatePeriodicFn (   F,
  I,
 
)    EffectUpdatePeriodicHandlerFunction(&F, I, N)
#define AuraProcFn (   F)    AuraProcHandlerFunction(&F)
#define AURASCRIPT_FUNCTION_CAST_DEFINES (   CLASSNAME)
Value:
class CheckAreaTargetFunction : public AuraScript::CheckAreaTargetHandler { public: CheckAreaTargetFunction(AuraCheckAreaTargetFnType _pHandlerScript) : AuraScript::CheckAreaTargetHandler((AuraScript::AuraCheckAreaTargetFnType)_pHandlerScript) { } }; \
class AuraDispelFunction : public AuraScript::AuraDispelHandler { public: AuraDispelFunction(AuraDispelFnType _pHandlerScript) : AuraScript::AuraDispelHandler((AuraScript::AuraDispelFnType)_pHandlerScript) { } }; \
class EffectPeriodicHandlerFunction : public AuraScript::EffectPeriodicHandler { public: EffectPeriodicHandlerFunction(AuraEffectPeriodicFnType _pEffectHandlerScript, uint8 _effIndex, uint16 _effName) : AuraScript::EffectPeriodicHandler((AuraScript::AuraEffectPeriodicFnType)_pEffectHandlerScript, _effIndex, _effName) { } }; \
class EffectUpdatePeriodicHandlerFunction : public AuraScript::EffectUpdatePeriodicHandler { public: EffectUpdatePeriodicHandlerFunction(AuraEffectUpdatePeriodicFnType _pEffectHandlerScript, uint8 _effIndex, uint16 _effName) : AuraScript::EffectUpdatePeriodicHandler((AuraScript::AuraEffectUpdatePeriodicFnType)_pEffectHandlerScript, _effIndex, _effName) { } }; \
class EffectCalcAmountHandlerFunction : public AuraScript::EffectCalcAmountHandler { public: EffectCalcAmountHandlerFunction(AuraEffectCalcAmountFnType _pEffectHandlerScript, uint8 _effIndex, uint16 _effName) : AuraScript::EffectCalcAmountHandler((AuraScript::AuraEffectCalcAmountFnType)_pEffectHandlerScript, _effIndex, _effName) { } }; \
class EffectCalcPeriodicHandlerFunction : public AuraScript::EffectCalcPeriodicHandler { public: EffectCalcPeriodicHandlerFunction(AuraEffectCalcPeriodicFnType _pEffectHandlerScript, uint8 _effIndex, uint16 _effName) : AuraScript::EffectCalcPeriodicHandler((AuraScript::AuraEffectCalcPeriodicFnType)_pEffectHandlerScript, _effIndex, _effName) { } }; \
class EffectCalcSpellModHandlerFunction : public AuraScript::EffectCalcSpellModHandler { public: EffectCalcSpellModHandlerFunction(AuraEffectCalcSpellModFnType _pEffectHandlerScript, uint8 _effIndex, uint16 _effName) : AuraScript::EffectCalcSpellModHandler((AuraScript::AuraEffectCalcSpellModFnType)_pEffectHandlerScript, _effIndex, _effName) { } }; \
class EffectApplyHandlerFunction : public AuraScript::EffectApplyHandler { public: EffectApplyHandlerFunction(AuraEffectApplicationModeFnType _pEffectHandlerScript, uint8 _effIndex, uint16 _effName, AuraEffectHandleModes _mode) : AuraScript::EffectApplyHandler((AuraScript::AuraEffectApplicationModeFnType)_pEffectHandlerScript, _effIndex, _effName, _mode) { } }; \
class EffectAbsorbFunction : public AuraScript::EffectAbsorbHandler { public: EffectAbsorbFunction(AuraEffectAbsorbFnType _pEffectHandlerScript, uint8 _effIndex) : AuraScript::EffectAbsorbHandler((AuraScript::AuraEffectAbsorbFnType)_pEffectHandlerScript, _effIndex) { } }; \
class EffectManaShieldFunction : public AuraScript::EffectManaShieldHandler { public: EffectManaShieldFunction(AuraEffectAbsorbFnType _pEffectHandlerScript, uint8 _effIndex) : AuraScript::EffectManaShieldHandler((AuraScript::AuraEffectAbsorbFnType)_pEffectHandlerScript, _effIndex) { } }; \
class EffectSplitFunction : public AuraScript::EffectSplitHandler { public: EffectSplitFunction(AuraEffectSplitFnType _pEffectHandlerScript, uint8 _effIndex) : AuraScript::EffectSplitHandler((AuraScript::AuraEffectSplitFnType)_pEffectHandlerScript, _effIndex) { } }; \
class CheckProcHandlerFunction : public AuraScript::CheckProcHandler { public: CheckProcHandlerFunction(AuraCheckProcFnType handlerScript) : AuraScript::CheckProcHandler((AuraScript::AuraCheckProcFnType)handlerScript) { } }; \
class AuraProcHandlerFunction : public AuraScript::AuraProcHandler { public: AuraProcHandlerFunction(AuraProcFnType handlerScript) : AuraScript::AuraProcHandler((AuraScript::AuraProcFnType)handlerScript) { } }; \
class EffectProcHandlerFunction : public AuraScript::EffectProcHandler { public: EffectProcHandlerFunction(AuraEffectProcFnType effectHandlerScript, uint8 effIndex, uint16 effName) : AuraScript::EffectProcHandler((AuraScript::AuraEffectProcFnType)effectHandlerScript, effIndex, effName) { } }
Definition: SpellScript.h:578
Definition: SpellScript.h:602
AuraEffectHandleModes
Definition: SpellAuraDefines.h:36
Definition: SpellScript.h:529
Definition: SpellScript.h:570
Definition: SpellScript.h:610
Definition: SpellScript.h:586
Definition: SpellScript.h:545
uint16_t uint16
Definition: Define.h:151
Definition: SpellScript.h:594
Definition: SpellScript.h:553
uint8_t uint8
Definition: Define.h:152
Definition: SpellScript.h:521
Definition: SpellScript.h:506
Definition: SpellScript.h:475
Definition: SpellScript.h:561
Definition: SpellScript.h:537
Definition: SpellScript.h:498
#define AURASCRIPT_FUNCTION_TYPE_DEFINES (   CLASSNAME)
Value:
typedef bool(CLASSNAME::*AuraCheckAreaTargetFnType)(Unit* target); \
typedef void(CLASSNAME::*AuraDispelFnType)(DispelInfo* dispelInfo); \
typedef void(CLASSNAME::*AuraEffectApplicationModeFnType)(AuraEffect const*, AuraEffectHandleModes); \
typedef void(CLASSNAME::*AuraEffectPeriodicFnType)(AuraEffect const*); \
typedef void(CLASSNAME::*AuraEffectUpdatePeriodicFnType)(AuraEffect*); \
typedef void(CLASSNAME::*AuraEffectCalcAmountFnType)(AuraEffect const*, int32 &, bool &); \
typedef void(CLASSNAME::*AuraEffectCalcPeriodicFnType)(AuraEffect const*, bool &, int32 &); \
typedef void(CLASSNAME::*AuraEffectCalcSpellModFnType)(AuraEffect const*, SpellModifier* &); \
typedef void(CLASSNAME::*AuraEffectAbsorbFnType)(AuraEffect*, DamageInfo &, uint32 &); \
typedef void(CLASSNAME::*AuraEffectSplitFnType)(AuraEffect*, DamageInfo &, uint32 &); \
typedef bool(CLASSNAME::*AuraCheckProcFnType)(ProcEventInfo&); \
typedef void(CLASSNAME::*AuraProcFnType)(ProcEventInfo&); \
typedef void(CLASSNAME::*AuraEffectProcFnType)(AuraEffect const*, ProcEventInfo&); \
Definition: SpellAuraEffects.h:30
AuraEffectHandleModes
Definition: SpellAuraDefines.h:36
Definition: Player.h:167
#define bool
Definition: CascPort.h:16
Definition: Unit.h:984
int32_t int32
Definition: Define.h:146
uint32_t uint32
Definition: Define.h:150
Definition: Unit.h:888
Definition: Unit.h:1305
Definition: Unit.h:921
#define HOOK_SPELL_COUNT   HOOK_SPELL_END - HOOK_SPELL_START
#define HOOK_SPELL_END   SPELL_SCRIPT_HOOK_CHECK_CAST + 1
#define HOOK_SPELL_HIT_END   SPELL_SCRIPT_HOOK_AFTER_HIT + 1
#define HOOK_SPELL_HIT_START   SPELL_SCRIPT_HOOK_EFFECT_HIT
#define HOOK_SPELL_START   SPELL_SCRIPT_HOOK_EFFECT
#define PrepareAuraScript (   CLASSNAME)    AURASCRIPT_FUNCTION_TYPE_DEFINES(CLASSNAME) AURASCRIPT_FUNCTION_CAST_DEFINES(CLASSNAME)
#define PrepareSpellScript (   CLASSNAME)    SPELLSCRIPT_FUNCTION_TYPE_DEFINES(CLASSNAME) SPELLSCRIPT_FUNCTION_CAST_DEFINES(CLASSNAME)
#define SPELL_AURA_ANY   (uint16)-1
#define SPELL_EFFECT_ANY   (uint16)-1
#define SPELL_SCRIPT_STATE_END   SPELL_SCRIPT_STATE_UNLOADING + 1
#define SpellCastFn (   F)    CastHandlerFunction(&F)
#define SpellCheckCastFn (   F)    CheckCastHandlerFunction(&F)
#define SpellDestinationTargetSelectFn (   F,
  I,
 
)    DestinationTargetSelectHandlerFunction(&F, I, N)
#define SpellEffectFn (   F,
  I,
 
)    EffectHandlerFunction(&F, I, N)
#define SpellHitFn (   F)    HitHandlerFunction(&F)
#define SpellObjectAreaTargetSelectFn (   F,
  I,
 
)    ObjectAreaTargetSelectHandlerFunction(&F, I, N)
#define SpellObjectTargetSelectFn (   F,
  I,
 
)    ObjectTargetSelectHandlerFunction(&F, I, N)
#define SPELLSCRIPT_FUNCTION_CAST_DEFINES (   CLASSNAME)
Value:
class CastHandlerFunction : public SpellScript::CastHandler { public: CastHandlerFunction(SpellCastFnType _pCastHandlerScript) : SpellScript::CastHandler((SpellScript::SpellCastFnType)_pCastHandlerScript) { } }; \
class CheckCastHandlerFunction : public SpellScript::CheckCastHandler { public: CheckCastHandlerFunction(SpellCheckCastFnType _checkCastHandlerScript) : SpellScript::CheckCastHandler((SpellScript::SpellCheckCastFnType)_checkCastHandlerScript) { } }; \
class EffectHandlerFunction : public SpellScript::EffectHandler { public: EffectHandlerFunction(SpellEffectFnType _pEffectHandlerScript, uint8 _effIndex, uint16 _effName) : SpellScript::EffectHandler((SpellScript::SpellEffectFnType)_pEffectHandlerScript, _effIndex, _effName) { } }; \
class HitHandlerFunction : public SpellScript::HitHandler { public: HitHandlerFunction(SpellHitFnType _pHitHandlerScript) : SpellScript::HitHandler((SpellScript::SpellHitFnType)_pHitHandlerScript) { } }; \
class ObjectAreaTargetSelectHandlerFunction : public SpellScript::ObjectAreaTargetSelectHandler { public: ObjectAreaTargetSelectHandlerFunction(SpellObjectAreaTargetSelectFnType _pObjectAreaTargetSelectHandlerScript, uint8 _effIndex, uint16 _targetType) : SpellScript::ObjectAreaTargetSelectHandler((SpellScript::SpellObjectAreaTargetSelectFnType)_pObjectAreaTargetSelectHandlerScript, _effIndex, _targetType) { } }; \
class ObjectTargetSelectHandlerFunction : public SpellScript::ObjectTargetSelectHandler { public: ObjectTargetSelectHandlerFunction(SpellObjectTargetSelectFnType _pObjectTargetSelectHandlerScript, uint8 _effIndex, uint16 _targetType) : SpellScript::ObjectTargetSelectHandler((SpellScript::SpellObjectTargetSelectFnType)_pObjectTargetSelectHandlerScript, _effIndex, _targetType) { } }; \
class DestinationTargetSelectHandlerFunction : public SpellScript::DestinationTargetSelectHandler { public: DestinationTargetSelectHandlerFunction(SpellDestinationTargetSelectFnType _DestinationTargetSelectHandlerScript, uint8 _effIndex, uint16 _targetType) : SpellScript::DestinationTargetSelectHandler((SpellScript::SpellDestinationTargetSelectFnType)_DestinationTargetSelectHandlerScript, _effIndex, _targetType) { } }
Definition: SpellScript.h:168
Definition: SpellScript.h:152
Definition: SpellScript.h:186
Definition: SpellScript.h:237
Definition: SpellScript.h:177
uint16_t uint16
Definition: Define.h:151
Definition: SpellScript.h:219
Definition: SpellScript.h:197
uint8_t uint8
Definition: Define.h:152
Definition: SpellScript.h:228
#define SPELLSCRIPT_FUNCTION_TYPE_DEFINES (   CLASSNAME)
Value:
typedef SpellCastResult(CLASSNAME::*SpellCheckCastFnType)(); \
typedef void(CLASSNAME::*SpellEffectFnType)(SpellEffIndex); \
typedef void(CLASSNAME::*SpellHitFnType)(); \
typedef void(CLASSNAME::*SpellCastFnType)(); \
typedef void(CLASSNAME::*SpellObjectAreaTargetSelectFnType)(std::list<WorldObject*>&); \
typedef void(CLASSNAME::*SpellObjectTargetSelectFnType)(WorldObject*&); \
typedef void(CLASSNAME::*SpellDestinationTargetSelectFnType)(SpellDestination&);
Definition: Object.h:423
Definition: Spell.h:118
SpellEffIndex
Definition: SharedDefines.h:26
SpellCastResult
Definition: SharedDefines.h:1265

Enumeration Type Documentation

Enumerator
AURA_SCRIPT_HOOK_EFFECT_APPLY 
AURA_SCRIPT_HOOK_EFFECT_AFTER_APPLY 
AURA_SCRIPT_HOOK_EFFECT_REMOVE 
AURA_SCRIPT_HOOK_EFFECT_AFTER_REMOVE 
AURA_SCRIPT_HOOK_EFFECT_PERIODIC 
AURA_SCRIPT_HOOK_EFFECT_UPDATE_PERIODIC 
AURA_SCRIPT_HOOK_EFFECT_CALC_AMOUNT 
AURA_SCRIPT_HOOK_EFFECT_CALC_PERIODIC 
AURA_SCRIPT_HOOK_EFFECT_CALC_SPELLMOD 
AURA_SCRIPT_HOOK_EFFECT_ABSORB 
AURA_SCRIPT_HOOK_EFFECT_AFTER_ABSORB 
AURA_SCRIPT_HOOK_EFFECT_MANASHIELD 
AURA_SCRIPT_HOOK_EFFECT_AFTER_MANASHIELD 
AURA_SCRIPT_HOOK_EFFECT_SPLIT 
AURA_SCRIPT_HOOK_CHECK_AREA_TARGET 
AURA_SCRIPT_HOOK_DISPEL 
AURA_SCRIPT_HOOK_AFTER_DISPEL 
AURA_SCRIPT_HOOK_CHECK_PROC 
AURA_SCRIPT_HOOK_PREPARE_PROC 
AURA_SCRIPT_HOOK_PROC 
AURA_SCRIPT_HOOK_EFFECT_PROC 
AURA_SCRIPT_HOOK_EFFECT_AFTER_PROC 
AURA_SCRIPT_HOOK_AFTER_PROC 
442 {
460  // Spell Proc Hooks
467  /*AURA_SCRIPT_HOOK_APPLY,
468  AURA_SCRIPT_HOOK_REMOVE, */
469 };
Definition: SpellScript.h:456
#define SPELL_SCRIPT_STATE_END
Definition: SpellScript.h:52
Definition: SpellScript.h:443
Definition: SpellScript.h:459
Definition: SpellScript.h:461
Definition: SpellScript.h:453
Definition: SpellScript.h:463
Definition: SpellScript.h:452
Definition: SpellScript.h:457
Definition: SpellScript.h:444
Definition: SpellScript.h:445
Definition: SpellScript.h:447
Definition: SpellScript.h:446
Definition: SpellScript.h:465
Definition: SpellScript.h:466
Definition: SpellScript.h:448
Definition: SpellScript.h:451
Definition: SpellScript.h:462
Definition: SpellScript.h:454
Definition: SpellScript.h:450
Definition: SpellScript.h:458
Definition: SpellScript.h:464
Definition: SpellScript.h:449
Definition: SpellScript.h:455
Enumerator
SPELL_SCRIPT_HOOK_EFFECT_LAUNCH 
SPELL_SCRIPT_HOOK_EFFECT_LAUNCH_TARGET 
SPELL_SCRIPT_HOOK_EFFECT_HIT 
SPELL_SCRIPT_HOOK_EFFECT_HIT_TARGET 
SPELL_SCRIPT_HOOK_EFFECT_SUCCESSFUL_DISPEL 
SPELL_SCRIPT_HOOK_BEFORE_HIT 
SPELL_SCRIPT_HOOK_HIT 
SPELL_SCRIPT_HOOK_AFTER_HIT 
SPELL_SCRIPT_HOOK_OBJECT_AREA_TARGET_SELECT 
SPELL_SCRIPT_HOOK_OBJECT_TARGET_SELECT 
SPELL_SCRIPT_HOOK_DESTINATION_TARGET_SELECT 
SPELL_SCRIPT_HOOK_CHECK_CAST 
SPELL_SCRIPT_HOOK_BEFORE_CAST 
SPELL_SCRIPT_HOOK_ON_CAST 
SPELL_SCRIPT_HOOK_AFTER_CAST 
128 {
144 };
Definition: SpellScript.h:135
Definition: SpellScript.h:138
Definition: SpellScript.h:131
#define SPELL_SCRIPT_STATE_END
Definition: SpellScript.h:52
Definition: SpellScript.h:136
Definition: SpellScript.h:130
Definition: SpellScript.h:133
Definition: SpellScript.h:142
Definition: SpellScript.h:134
Definition: SpellScript.h:132
Definition: SpellScript.h:139
Definition: SpellScript.h:137
Definition: SpellScript.h:141
Definition: SpellScript.h:143
Definition: SpellScript.h:129
Definition: SpellScript.h:140
Enumerator
SPELL_SCRIPT_STATE_NONE 
SPELL_SCRIPT_STATE_REGISTRATION 
SPELL_SCRIPT_STATE_LOADING 
SPELL_SCRIPT_STATE_UNLOADING 
46 {
51 };
Definition: SpellScript.h:48
Definition: SpellScript.h:47
Definition: SpellScript.h:49
Definition: SpellScript.h:50