TrinityCore
Loading...
Searching...
No Matches
SpellEffectInfo Class Reference

#include <SpellInfo.h>

Classes

struct  ImmunityInfo
 
struct  StaticData
 

Public Member Functions

 SpellEffectInfo ()
 
 SpellEffectInfo (SpellEntry const *spellEntry, SpellInfo const *spellInfo, uint8 effIndex)
 
 SpellEffectInfo (SpellEffectInfo const &)=delete
 
 SpellEffectInfo (SpellEffectInfo &&) noexcept
 
SpellEffectInfooperator= (SpellEffectInfo const &)=delete
 
SpellEffectInfooperator= (SpellEffectInfo &&) noexcept
 
 ~SpellEffectInfo ()
 
bool IsEffect () const
 
bool IsEffect (SpellEffects effectName) const
 
bool IsAura () const
 
bool IsAura (AuraType aura) const
 
bool IsTargetingArea () const
 
bool IsAreaAuraEffect () const
 
bool IsUnitOwnedAuraEffect () const
 
int32 CalcValue (WorldObject const *caster=nullptr, int32 const *basePoints=nullptr) const
 
int32 CalcBaseValue (int32 value) const
 
float CalcValueMultiplier (WorldObject *caster, Spell *spell=nullptr) const
 
float CalcDamageMultiplier (WorldObject *caster, Spell *spell=nullptr) const
 
bool HasRadius () const
 
float CalcRadius (WorldObject *caster=nullptr, Spell *=nullptr) const
 
uint32 GetProvidedTargetMask () const
 
uint32 GetMissingTargetMask (bool srcSet=false, bool destSet=false, uint32 mask=0) const
 
SpellEffectImplicitTargetTypes GetImplicitTargetType () const
 
SpellTargetObjectTypes GetUsedTargetObjectType () const
 
ImmunityInfo const * GetImmunityInfo () const
 

Public Attributes

SpellEffIndex EffectIndex
 
SpellEffects Effect
 
AuraType ApplyAuraName
 
uint32 ApplyAuraPeriod
 
int32 DieSides
 
float RealPointsPerLevel
 
int32 BasePoints
 
float PointsPerComboPoint
 
float Amplitude
 
float ChainAmplitude
 
float BonusCoefficient
 
int32 MiscValue
 
int32 MiscValueB
 
Mechanics Mechanic
 
SpellImplicitTargetInfo TargetA
 
SpellImplicitTargetInfo TargetB
 
SpellRadiusEntry const * RadiusEntry
 
uint32 ChainTargets
 
uint32 ItemType
 
uint32 TriggerSpell
 
flag96 SpellClassMask
 
std::vector< Condition * > * ImplicitTargetConditions
 

Private Attributes

SpellInfo const * _spellInfo
 
std::unique_ptr< ImmunityInfo_immunityInfo
 

Static Private Attributes

static std::array< StaticData, TOTAL_SPELL_EFFECTS_data
 

Friends

class SpellInfo
 

Detailed Description

Definition at line 204 of file SpellInfo.h.

Constructor & Destructor Documentation

◆ SpellEffectInfo() [1/4]

SpellEffectInfo::SpellEffectInfo ( )

Definition at line 351 of file SpellInfo.cpp.

◆ SpellEffectInfo() [2/4]

SpellEffectInfo::SpellEffectInfo ( SpellEntry const *  spellEntry,
SpellInfo const *  spellInfo,
uint8  effIndex 
)
explicit

Definition at line 358 of file SpellInfo.cpp.

◆ SpellEffectInfo() [3/4]

SpellEffectInfo::SpellEffectInfo ( SpellEffectInfo const &  )
delete

◆ SpellEffectInfo() [4/4]

SpellEffectInfo::SpellEffectInfo ( SpellEffectInfo &&  )
defaultnoexcept

◆ ~SpellEffectInfo()

SpellEffectInfo::~SpellEffectInfo ( )
default

Member Function Documentation

◆ CalcBaseValue()

int32 SpellEffectInfo::CalcBaseValue ( int32  value) const

Definition at line 543 of file SpellInfo.cpp.

+ Here is the caller graph for this function:

◆ CalcDamageMultiplier()

float SpellEffectInfo::CalcDamageMultiplier ( WorldObject caster,
Spell spell = nullptr 
) const

Definition at line 560 of file SpellInfo.cpp.

+ Here is the call graph for this function:

◆ CalcRadius()

float SpellEffectInfo::CalcRadius ( WorldObject caster = nullptr,
Spell spell = nullptr 
) const

Definition at line 574 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CalcValue()

int32 SpellEffectInfo::CalcValue ( WorldObject const *  caster = nullptr,
int32 const *  basePoints = nullptr 
) const

Definition at line 433 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CalcValueMultiplier()

float SpellEffectInfo::CalcValueMultiplier ( WorldObject caster,
Spell spell = nullptr 
) const

Definition at line 551 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetImmunityInfo()

ImmunityInfo const * SpellEffectInfo::GetImmunityInfo ( ) const
inline

Definition at line 263 of file SpellInfo.h.

+ Here is the caller graph for this function:

◆ GetImplicitTargetType()

SpellEffectImplicitTargetTypes SpellEffectInfo::GetImplicitTargetType ( ) const

Definition at line 623 of file SpellInfo.cpp.

+ Here is the caller graph for this function:

◆ GetMissingTargetMask()

uint32 SpellEffectInfo::GetMissingTargetMask ( bool  srcSet = false,
bool  destSet = false,
uint32  mask = 0 
) const

Definition at line 599 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetProvidedTargetMask()

uint32 SpellEffectInfo::GetProvidedTargetMask ( ) const

Definition at line 594 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetUsedTargetObjectType()

SpellTargetObjectTypes SpellEffectInfo::GetUsedTargetObjectType ( ) const

Definition at line 628 of file SpellInfo.cpp.

+ Here is the caller graph for this function:

◆ HasRadius()

bool SpellEffectInfo::HasRadius ( ) const

Definition at line 569 of file SpellInfo.cpp.

+ Here is the caller graph for this function:

◆ IsAreaAuraEffect()

bool SpellEffectInfo::IsAreaAuraEffect ( ) const

Definition at line 416 of file SpellInfo.cpp.

+ Here is the caller graph for this function:

◆ IsAura() [1/2]

bool SpellEffectInfo::IsAura ( ) const

Definition at line 401 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsAura() [2/2]

bool SpellEffectInfo::IsAura ( AuraType  aura) const

Definition at line 406 of file SpellInfo.cpp.

+ Here is the call graph for this function:

◆ IsEffect() [1/2]

bool SpellEffectInfo::IsEffect ( ) const

Definition at line 391 of file SpellInfo.cpp.

+ Here is the caller graph for this function:

◆ IsEffect() [2/2]

bool SpellEffectInfo::IsEffect ( SpellEffects  effectName) const

Definition at line 396 of file SpellInfo.cpp.

◆ IsTargetingArea()

bool SpellEffectInfo::IsTargetingArea ( ) const

Definition at line 411 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsUnitOwnedAuraEffect()

bool SpellEffectInfo::IsUnitOwnedAuraEffect ( ) const

Definition at line 428 of file SpellInfo.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator=() [1/2]

SpellEffectInfo & SpellEffectInfo::operator= ( SpellEffectInfo &&  )
defaultnoexcept

◆ operator=() [2/2]

SpellEffectInfo & SpellEffectInfo::operator= ( SpellEffectInfo const &  )
delete

Friends And Related Symbol Documentation

◆ SpellInfo

friend class SpellInfo
friend

Definition at line 206 of file SpellInfo.h.

Member Data Documentation

◆ _data

std::array< SpellEffectInfo::StaticData, TOTAL_SPELL_EFFECTS > SpellEffectInfo::_data
staticprivate

Definition at line 633 of file SpellInfo.h.

◆ _immunityInfo

std::unique_ptr<ImmunityInfo> SpellEffectInfo::_immunityInfo
private

Definition at line 273 of file SpellInfo.h.

◆ _spellInfo

SpellInfo const* SpellEffectInfo::_spellInfo
private

Definition at line 207 of file SpellInfo.h.

◆ Amplitude

float SpellEffectInfo::Amplitude

Definition at line 217 of file SpellInfo.h.

◆ ApplyAuraName

AuraType SpellEffectInfo::ApplyAuraName

Definition at line 211 of file SpellInfo.h.

◆ ApplyAuraPeriod

uint32 SpellEffectInfo::ApplyAuraPeriod

Definition at line 212 of file SpellInfo.h.

◆ BasePoints

int32 SpellEffectInfo::BasePoints

Definition at line 215 of file SpellInfo.h.

◆ BonusCoefficient

float SpellEffectInfo::BonusCoefficient

Definition at line 219 of file SpellInfo.h.

◆ ChainAmplitude

float SpellEffectInfo::ChainAmplitude

Definition at line 218 of file SpellInfo.h.

◆ ChainTargets

uint32 SpellEffectInfo::ChainTargets

Definition at line 226 of file SpellInfo.h.

◆ DieSides

int32 SpellEffectInfo::DieSides

Definition at line 213 of file SpellInfo.h.

◆ Effect

SpellEffects SpellEffectInfo::Effect

Definition at line 210 of file SpellInfo.h.

◆ EffectIndex

SpellEffIndex SpellEffectInfo::EffectIndex

Definition at line 209 of file SpellInfo.h.

◆ ImplicitTargetConditions

std::vector<Condition*>* SpellEffectInfo::ImplicitTargetConditions

Definition at line 230 of file SpellInfo.h.

◆ ItemType

uint32 SpellEffectInfo::ItemType

Definition at line 227 of file SpellInfo.h.

◆ Mechanic

Mechanics SpellEffectInfo::Mechanic

Definition at line 222 of file SpellInfo.h.

◆ MiscValue

int32 SpellEffectInfo::MiscValue

Definition at line 220 of file SpellInfo.h.

◆ MiscValueB

int32 SpellEffectInfo::MiscValueB

Definition at line 221 of file SpellInfo.h.

◆ PointsPerComboPoint

float SpellEffectInfo::PointsPerComboPoint

Definition at line 216 of file SpellInfo.h.

◆ RadiusEntry

SpellRadiusEntry const* SpellEffectInfo::RadiusEntry

Definition at line 225 of file SpellInfo.h.

◆ RealPointsPerLevel

float SpellEffectInfo::RealPointsPerLevel

Definition at line 214 of file SpellInfo.h.

◆ SpellClassMask

flag96 SpellEffectInfo::SpellClassMask

Definition at line 229 of file SpellInfo.h.

◆ TargetA

SpellImplicitTargetInfo SpellEffectInfo::TargetA

Definition at line 223 of file SpellInfo.h.

◆ TargetB

SpellImplicitTargetInfo SpellEffectInfo::TargetB

Definition at line 224 of file SpellInfo.h.

◆ TriggerSpell

uint32 SpellEffectInfo::TriggerSpell

Definition at line 228 of file SpellInfo.h.


The documentation for this class was generated from the following files: