AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
UnitScript Class Reference

#include "UnitScript.h"

Inheritance diagram for UnitScript:
ScriptObject

Public Member Functions

virtual void OnHeal (Unit *, Unit *, uint32 &)
 
virtual void OnDamage (Unit *, Unit *, uint32 &)
 
virtual void ModifyPeriodicDamageAurasTick (Unit *, Unit *, uint32 &, SpellInfo const *)
 
virtual void ModifyMeleeDamage (Unit *, Unit *, uint32 &)
 
virtual void ModifySpellDamageTaken (Unit *, Unit *, int32 &, SpellInfo const *)
 
virtual void ModifyHealReceived (Unit *, Unit *, uint32 &, SpellInfo const *)
 
virtual uint32 DealDamage (Unit *, Unit *, uint32 damage, DamageEffectType)
 
virtual void OnBeforeRollMeleeOutcomeAgainst (Unit const *, Unit const *, WeaponAttackType, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &, int32 &)
 
virtual void OnAuraApply (Unit *, Aura *)
 
virtual void OnAuraRemove (Unit *, AuraApplication *, AuraRemoveMode)
 
virtual bool IfNormalReaction (Unit const *, Unit const *, ReputationRank &)
 
virtual bool IsNeedModSpellDamagePercent (Unit const *, AuraEffect *, float &, SpellInfo const *)
 
virtual bool IsNeedModMeleeDamagePercent (Unit const *, AuraEffect *, float &, SpellInfo const *)
 
virtual bool IsNeedModHealPercent (Unit const *, AuraEffect *, float &, SpellInfo const *)
 
virtual bool CanSetPhaseMask (Unit const *, uint32, bool)
 
virtual bool IsCustomBuildValuesUpdate (Unit const *, uint8, ByteBuffer &, Player const *, uint16)
 
virtual bool ShouldTrackValuesUpdatePosByIndex (Unit const *, uint8, uint16)
 
virtual void OnPatchValuesUpdate (Unit const *, ByteBuffer &, BuildValuesCachePosPointers &, Player *)
 
virtual void OnUnitUpdate (Unit *, uint32)
 This hook runs in Unit::Update.
 
virtual void OnDisplayIdChange (Unit *, uint32)
 
virtual void OnUnitEnterEvadeMode (Unit *, uint8)
 
virtual void OnUnitEnterCombat (Unit *, Unit *)
 
virtual void OnUnitDeath (Unit *, Unit *)
 
virtual void OnUnitSetShapeshiftForm (Unit *, uint8)
 
- Public Member Functions inherited from ScriptObject
virtual bool IsDatabaseBound () const
 
virtual bool isAfterLoadScript () const
 
virtual void checkValidity ()
 
const std::string & GetName () const
 
uint16 GetTotalAvailableHooks ()
 

Protected Member Functions

 UnitScript (const char *name, bool addToScripts=true, std::vector< uint16 > enabledHooks=std::vector< uint16 >())
 
- Protected Member Functions inherited from ScriptObject
 ScriptObject (const char *name, uint16 totalAvailableHooks=0)
 
virtual ~ScriptObject ()=default
 

Detailed Description

Constructor & Destructor Documentation

◆ UnitScript()

UnitScript::UnitScript ( const char *  name,
bool  addToScripts = true,
std::vector< uint16 enabledHooks = std::vector<uint16>() 
)
protected
158{
159 if (addToScripts)
160 {
161 // If empty - enable all available hooks.
162 if (enabledHooks.empty())
163 for (uint16 i = 0; i < UNITHOOK_END; ++i)
164 enabledHooks.emplace_back(i);
165
166 ScriptRegistry<UnitScript>::AddScript(this, std::move(enabledHooks));
167 }
168}
std::uint16_t uint16
Definition Define.h:108
@ UNITHOOK_END
Definition UnitScript.h:49
Definition ScriptObject.h:43
static void AddScript(TScript *const script, std::vector< uint16 > enabledHooks={})
Definition ScriptMgr.h:756

References ScriptRegistry< TScript >::AddScript(), and UNITHOOK_END.

Member Function Documentation

◆ CanSetPhaseMask()

virtual bool UnitScript::CanSetPhaseMask ( Unit const *  ,
uint32  ,
bool   
)
inlinevirtual
98{ return true; }

Referenced by ScriptMgr::CanSetPhaseMask().

◆ DealDamage()

virtual uint32 UnitScript::DealDamage ( Unit ,
Unit ,
uint32  damage,
DamageEffectType   
)
inlinevirtual
82{ return damage; }

◆ IfNormalReaction()

virtual bool UnitScript::IfNormalReaction ( Unit const *  ,
Unit const *  ,
ReputationRank  
)
inlinevirtual
90{ return true; }

Referenced by ScriptMgr::IfNormalReaction().

◆ IsCustomBuildValuesUpdate()

virtual bool UnitScript::IsCustomBuildValuesUpdate ( Unit const *  ,
uint8  ,
ByteBuffer ,
Player const *  ,
uint16   
)
inlinevirtual
100{ return false; }

Referenced by ScriptMgr::IsCustomBuildValuesUpdate().

◆ IsNeedModHealPercent()

virtual bool UnitScript::IsNeedModHealPercent ( Unit const *  ,
AuraEffect ,
float &  ,
SpellInfo const *   
)
inlinevirtual
96{ return true; }

Referenced by ScriptMgr::IsNeedModHealPercent().

◆ IsNeedModMeleeDamagePercent()

virtual bool UnitScript::IsNeedModMeleeDamagePercent ( Unit const *  ,
AuraEffect ,
float &  ,
SpellInfo const *   
)
inlinevirtual
94{ return true; }

Referenced by ScriptMgr::IsNeedModMeleeDamagePercent().

◆ IsNeedModSpellDamagePercent()

virtual bool UnitScript::IsNeedModSpellDamagePercent ( Unit const *  ,
AuraEffect ,
float &  ,
SpellInfo const *   
)
inlinevirtual
92{ return true; }

Referenced by ScriptMgr::IsNeedModSpellDamagePercent().

◆ ModifyHealReceived()

virtual void UnitScript::ModifyHealReceived ( Unit ,
Unit ,
uint32 ,
SpellInfo const *   
)
inlinevirtual
79{ }

Referenced by ScriptMgr::ModifyHealReceived().

◆ ModifyMeleeDamage()

virtual void UnitScript::ModifyMeleeDamage ( Unit ,
Unit ,
uint32  
)
inlinevirtual
73{ }

Referenced by ScriptMgr::ModifyMeleeDamage().

◆ ModifyPeriodicDamageAurasTick()

virtual void UnitScript::ModifyPeriodicDamageAurasTick ( Unit ,
Unit ,
uint32 ,
SpellInfo const *   
)
inlinevirtual

◆ ModifySpellDamageTaken()

virtual void UnitScript::ModifySpellDamageTaken ( Unit ,
Unit ,
int32 ,
SpellInfo const *   
)
inlinevirtual

◆ OnAuraApply()

virtual void UnitScript::OnAuraApply ( Unit ,
Aura  
)
inlinevirtual
86{ }

Referenced by ScriptMgr::OnAuraApply().

◆ OnAuraRemove()

virtual void UnitScript::OnAuraRemove ( Unit ,
AuraApplication ,
AuraRemoveMode   
)
inlinevirtual
88{ }

Referenced by ScriptMgr::OnAuraRemove().

◆ OnBeforeRollMeleeOutcomeAgainst()

virtual void UnitScript::OnBeforeRollMeleeOutcomeAgainst ( Unit const *  ,
Unit const *  ,
WeaponAttackType  ,
int32 ,
int32 ,
int32 ,
int32 ,
int32 ,
int32 ,
int32 ,
int32 ,
int32  
)
inlinevirtual

◆ OnDamage()

virtual void UnitScript::OnDamage ( Unit ,
Unit ,
uint32  
)
inlinevirtual
66{ }

Referenced by ScriptMgr::OnDamage().

◆ OnDisplayIdChange()

virtual void UnitScript::OnDisplayIdChange ( Unit ,
uint32   
)
inlinevirtual
114{ }

Referenced by ScriptMgr::OnDisplayIdChange().

◆ OnHeal()

virtual void UnitScript::OnHeal ( Unit ,
Unit ,
uint32  
)
inlinevirtual
63{ }

Referenced by ScriptMgr::OnHeal().

◆ OnPatchValuesUpdate()

virtual void UnitScript::OnPatchValuesUpdate ( Unit const *  ,
ByteBuffer ,
BuildValuesCachePosPointers ,
Player  
)
inlinevirtual
104{ }

Referenced by ScriptMgr::OnPatchValuesUpdate().

◆ OnUnitDeath()

virtual void UnitScript::OnUnitDeath ( Unit ,
Unit  
)
inlinevirtual
118{ }

Referenced by ScriptMgr::OnUnitDeath().

◆ OnUnitEnterCombat()

virtual void UnitScript::OnUnitEnterCombat ( Unit ,
Unit  
)
inlinevirtual
117{ }

Referenced by ScriptMgr::OnUnitEnterCombat().

◆ OnUnitEnterEvadeMode()

virtual void UnitScript::OnUnitEnterEvadeMode ( Unit ,
uint8   
)
inlinevirtual
116{ }

Referenced by ScriptMgr::OnUnitEnterEvadeMode().

◆ OnUnitSetShapeshiftForm()

virtual void UnitScript::OnUnitSetShapeshiftForm ( Unit ,
uint8   
)
inlinevirtual
119{ }

Referenced by ScriptMgr::OnUnitSetShapeshiftForm().

◆ OnUnitUpdate()

virtual void UnitScript::OnUnitUpdate ( Unit ,
uint32   
)
inlinevirtual

This hook runs in Unit::Update.

Parameters
unitContains information about the Unit
diffContains information about the diff time
112{ }

Referenced by ScriptMgr::OnUnitUpdate().

◆ ShouldTrackValuesUpdatePosByIndex()

virtual bool UnitScript::ShouldTrackValuesUpdatePosByIndex ( Unit const *  ,
uint8  ,
uint16   
)
inlinevirtual
102{ return false; }

Referenced by ScriptMgr::ShouldTrackValuesUpdatePosByIndex().


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