TrinityCore
SpellScript::ObjectTargetSelectHandler Class Referencefinal

#include <SpellScript.h>

+ Inheritance diagram for SpellScript::ObjectTargetSelectHandler:

Classes

union  SpellObjectTargetSelectFnType
 

Public Types

using SafeWrapperType = void(*)(SpellScript *spellScript, WorldObject *&target, SpellObjectTargetSelectFnType callImpl)
 

Public Member Functions

template<typename ScriptFunc >
 ObjectTargetSelectHandler (ScriptFunc handler, uint8 effIndex, uint16 targetType)
 
void Call (SpellScript *spellScript, WorldObject *&target) const
 
bool HasSameTargetFunctionAs (ObjectTargetSelectHandler const &other) const
 
- Public Member Functions inherited from SpellScript::TargetHook
 TargetHook (uint8 effectIndex, uint16 targetType, bool area, bool dest)
 
 TargetHook (TargetHook const &right)=delete
 
 TargetHook (TargetHook &&right) noexcept
 
TargetHookoperator= (TargetHook const &right)=delete
 
TargetHookoperator= (TargetHook &&right) noexcept
 
virtual ~TargetHook ()
 
bool CheckEffect (SpellInfo const *spellInfo, uint8 effIndex) const override
 
std::string ToString () const
 
uint16 GetTarget () const
 
- Public Member Functions inherited from SpellScriptBase::EffectHook
 EffectHook (uint8 effIndex)
 
 EffectHook (EffectHook const &right)=delete
 
 EffectHook (EffectHook &&right) noexcept
 
EffectHookoperator= (EffectHook const &right)=delete
 
EffectHookoperator= (EffectHook &&right) noexcept
 
virtual ~EffectHook ()
 
uint32 GetAffectedEffectsMask (SpellInfo const *spellInfo) const
 
bool IsEffectAffected (SpellInfo const *spellInfo, uint8 effIndex) const
 
virtual bool CheckEffect (SpellInfo const *spellInfo, uint8 effIndex) const =0
 
std::string EffIndexToString () const
 

Private Attributes

SpellObjectTargetSelectFnType _callImpl
 
SafeWrapperType _safeWrapper
 

Additional Inherited Members

- Protected Attributes inherited from SpellScript::TargetHook
uint16 _targetType
 
bool _area
 
bool _dest
 
- Protected Attributes inherited from SpellScriptBase::EffectHook
uint8 _effIndex
 

Detailed Description

Definition at line 585 of file SpellScript.h.

Member Typedef Documentation

◆ SafeWrapperType

Definition at line 594 of file SpellScript.h.

Constructor & Destructor Documentation

◆ ObjectTargetSelectHandler()

template<typename ScriptFunc >
SpellScript::ObjectTargetSelectHandler::ObjectTargetSelectHandler ( ScriptFunc  handler,
uint8  effIndex,
uint16  targetType 
)
inlineexplicit

Definition at line 597 of file SpellScript.h.

Member Function Documentation

◆ Call()

void SpellScript::ObjectTargetSelectHandler::Call ( SpellScript spellScript,
WorldObject *&  target 
) const
inline

Definition at line 629 of file SpellScript.h.

+ Here is the caller graph for this function:

◆ HasSameTargetFunctionAs()

bool SpellScript::ObjectTargetSelectHandler::HasSameTargetFunctionAs ( ObjectTargetSelectHandler const &  other) const
inline

Definition at line 634 of file SpellScript.h.

Member Data Documentation

◆ _callImpl

SpellObjectTargetSelectFnType SpellScript::ObjectTargetSelectHandler::_callImpl
private

Definition at line 639 of file SpellScript.h.

◆ _safeWrapper

SafeWrapperType SpellScript::ObjectTargetSelectHandler::_safeWrapper
private

Definition at line 640 of file SpellScript.h.


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