Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
Spell.h File Reference
#include "ByteBuffer.h"
#include "GridDefines.h"
#include "ObjectMgr.h"
#include "PathGenerator.h"
#include "SharedDefines.h"
#include "SpellInfo.h"
#include <list>
#include <map>
Include dependency graph for Spell.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Skyfire::WorldObjectSpellAreaTargetCheck
struct  Skyfire::WorldObjectSpellConeTargetCheck
struct  Skyfire::WorldObjectSpellNearbyTargetCheck
struct  Skyfire::WorldObjectSpellTargetCheck
struct  Skyfire::WorldObjectSpellTrajTargetCheck
class  Spell
struct  Spell::GOTargetInfo
struct  Spell::HitTriggerSpell
struct  Spell::ItemTargetInfo
struct  Spell::TargetInfo
class  SpellCastTargets
struct  SpellDestination
class  SpellEvent
struct  SpellLogEnergizeHelper
struct  SpellLogExtraAttacksHelper
struct  SpellLogHelper
struct  SpellResearchData
struct  SpellValue

Namespaces

namespace  Skyfire

Macros

#define SPELL_CHANNEL_UPDATE_INTERVAL   (1 * IN_MILLISECONDS)

Typedefs

typedef void(Spell::* pEffect) (SpellEffIndex effIndex)

Enumerations

enum  SpellCastFlags {
  CAST_FLAG_NONE = 0x00000000 , CAST_FLAG_PENDING = 0x00000001 , CAST_FLAG_HAS_TRAJECTORY = 0x00000002 , CAST_FLAG_UNKNOWN_3 = 0x00000004 ,
  CAST_FLAG_UNKNOWN_4 = 0x00000008 , CAST_FLAG_UNKNOWN_5 = 0x00000010 , CAST_FLAG_PROJECTILE = 0x00000020 , CAST_FLAG_UNKNOWN_7 = 0x00000040 ,
  CAST_FLAG_UNKNOWN_8 = 0x00000080 , CAST_FLAG_UNKNOWN_9 = 0x00000100 , CAST_FLAG_UNKNOWN_10 = 0x00000200 , CAST_FLAG_UNKNOWN_11 = 0x00000400 ,
  CAST_FLAG_POWER_LEFT_SELF = 0x00000800 , CAST_FLAG_UNKNOWN_13 = 0x00001000 , CAST_FLAG_UNKNOWN_14 = 0x00002000 , CAST_FLAG_UNKNOWN_15 = 0x00004000 ,
  CAST_FLAG_UNKNOWN_16 = 0x00008000 , CAST_FLAG_UNKNOWN_17 = 0x00010000 , CAST_FLAG_ADJUST_MISSILE = 0x00020000 , CAST_FLAG_UNKNOWN_19 = 0x00040000 ,
  CAST_FLAG_VISUAL_CHAIN = 0x00080000 , CAST_FLAG_UNKNOWN_21 = 0x00100000 , CAST_FLAG_RUNE_LIST = 0x00200000 , CAST_FLAG_UNKNOWN_23 = 0x00400000 ,
  CAST_FLAG_UNKNOWN_24 = 0x00800000 , CAST_FLAG_UNKNOWN_25 = 0x01000000 , CAST_FLAG_UNKNOWN_26 = 0x02000000 , CAST_FLAG_IMMUNITY = 0x04000000 ,
  CAST_FLAG_UNKNOWN_28 = 0x08000000 , CAST_FLAG_UNKNOWN_29 = 0x10000000 , CAST_FLAG_UNKNOWN_30 = 0x20000000 , CAST_FLAG_HEAL_PREDICTION = 0x40000000 ,
  CAST_FLAG_UNKNOWN_32 = 0x80000000
}
enum  SpellEffectHandleMode { SPELL_EFFECT_HANDLE_LAUNCH , SPELL_EFFECT_HANDLE_LAUNCH_TARGET , SPELL_EFFECT_HANDLE_HIT , SPELL_EFFECT_HANDLE_HIT_TARGET }
enum  SpellRangeFlag { SPELL_RANGE_DEFAULT = 0 , SPELL_RANGE_MELEE = 1 , SPELL_RANGE_RANGED = 2 }
enum  SpellState {
  SPELL_STATE_NULL = 0 , SPELL_STATE_PREPARING = 1 , SPELL_STATE_CASTING = 2 , SPELL_STATE_FINISHED = 3 ,
  SPELL_STATE_IDLE = 4 , SPELL_STATE_DELAYED = 5
}

Macro Definition Documentation

◆ SPELL_CHANNEL_UPDATE_INTERVAL

#define SPELL_CHANNEL_UPDATE_INTERVAL   (1 * IN_MILLISECONDS)

Definition at line 27 of file Spell.h.

Typedef Documentation

◆ pEffect

typedef void(Spell::* pEffect) (SpellEffIndex effIndex)

Definition at line 828 of file Spell.h.

Enumeration Type Documentation

◆ SpellCastFlags

Enumerator
CAST_FLAG_NONE 
CAST_FLAG_PENDING 
CAST_FLAG_HAS_TRAJECTORY 
CAST_FLAG_UNKNOWN_3 
CAST_FLAG_UNKNOWN_4 
CAST_FLAG_UNKNOWN_5 
CAST_FLAG_PROJECTILE 
CAST_FLAG_UNKNOWN_7 
CAST_FLAG_UNKNOWN_8 
CAST_FLAG_UNKNOWN_9 
CAST_FLAG_UNKNOWN_10 
CAST_FLAG_UNKNOWN_11 
CAST_FLAG_POWER_LEFT_SELF 
CAST_FLAG_UNKNOWN_13 
CAST_FLAG_UNKNOWN_14 
CAST_FLAG_UNKNOWN_15 
CAST_FLAG_UNKNOWN_16 
CAST_FLAG_UNKNOWN_17 
CAST_FLAG_ADJUST_MISSILE 
CAST_FLAG_UNKNOWN_19 
CAST_FLAG_VISUAL_CHAIN 
CAST_FLAG_UNKNOWN_21 
CAST_FLAG_RUNE_LIST 
CAST_FLAG_UNKNOWN_23 
CAST_FLAG_UNKNOWN_24 
CAST_FLAG_UNKNOWN_25 
CAST_FLAG_UNKNOWN_26 
CAST_FLAG_IMMUNITY 
CAST_FLAG_UNKNOWN_28 
CAST_FLAG_UNKNOWN_29 
CAST_FLAG_UNKNOWN_30 
CAST_FLAG_HEAL_PREDICTION 
CAST_FLAG_UNKNOWN_32 

Definition at line 29 of file Spell.h.

◆ SpellEffectHandleMode

Enumerator
SPELL_EFFECT_HANDLE_LAUNCH 
SPELL_EFFECT_HANDLE_LAUNCH_TARGET 
SPELL_EFFECT_HANDLE_HIT 
SPELL_EFFECT_HANDLE_HIT_TARGET 

Definition at line 272 of file Spell.h.

◆ SpellRangeFlag

Enumerator
SPELL_RANGE_DEFAULT 
SPELL_RANGE_MELEE 
SPELL_RANGE_RANGED 

Definition at line 66 of file Spell.h.

◆ SpellState

enum SpellState
Enumerator
SPELL_STATE_NULL 
SPELL_STATE_PREPARING 
SPELL_STATE_CASTING 
SPELL_STATE_FINISHED 
SPELL_STATE_IDLE 
SPELL_STATE_DELAYED 

Definition at line 262 of file Spell.h.