TrinityCore
Loading...
Searching...
No Matches
spell_ymiron_the_fallen_king_bane_periodic_AuraScript Class Reference
+ Inheritance diagram for spell_ymiron_the_fallen_king_bane_periodic_AuraScript:

Private Member Functions

void CalcPeriodic (AuraEffect const *, bool &, int32 &amplitude)
 
void SpawnBaneOrb (int8 tickNumber)
 
void OnAfterApply (AuraEffect const *, AuraEffectHandleModes)
 
void OnPeriodic (AuraEffect const *aurEff)
 
void OnAfterRemove (AuraEffect const *, AuraEffectHandleModes)
 
void Register () override
 

Private Attributes

std::array< float, BANE_MAX_TOTAL_TICKS *2 > _angles = { }
 
std::array< float, BANE_MAX_TOTAL_TICKS *2 > _distances = { }
 

Static Private Attributes

static constexpr float BANE_MISSILE_DIST_OFFSET = 2.272f
 
static constexpr float BANE_MISSILE_DIST_BASE = 10.0f
 
static constexpr float BANE_MISSILE_ANGLE_OFFSET = 0.75f
 
static constexpr std::size_t BANE_MAX_TOTAL_TICKS = 4 + 4 + 14
 

Additional Inherited Members

- Public Member Functions inherited from AuraScript
 AuraScript () noexcept
 
 ~AuraScript ()
 
bool _Validate (SpellInfo const *entry) override
 
bool _Load (Aura *aura)
 
void _PrepareScriptCall (AuraScriptHookType hookType, AuraApplication const *aurApp=nullptr)
 
void _FinishScriptCall ()
 
bool _IsDefaultActionPrevented () const
 
void PreventDefaultAction ()
 
SpellInfo const * GetSpellInfo () const
 
SpellEffectInfo const & GetEffectInfo (SpellEffIndex effIndex) const
 
uint32 GetId () const
 
ObjectGuid GetCasterGUID () const
 
Unit * GetCaster () const
 
GameObject * GetGObjCaster () const
 
WorldObject * GetOwner () const
 
Unit * GetUnitOwner () const
 
DynamicObject * GetDynobjOwner () const
 
void Remove (AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
Aura * GetAura () const
 
AuraObjectType GetType () const
 
int32 GetDuration () const
 
void SetDuration (int32 duration, bool withMods=false)
 
void RefreshDuration ()
 
time_t GetApplyTime () const
 
int32 GetMaxDuration () const
 
void SetMaxDuration (int32 duration)
 
int32 CalcMaxDuration () const
 
bool IsExpired () const
 
bool IsPermanent () const
 
uint8 GetCharges () const
 
void SetCharges (uint8 charges)
 
uint8 CalcMaxCharges () const
 
bool ModCharges (int8 num, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
bool DropCharge (AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
uint8 GetStackAmount () const
 
void SetStackAmount (uint8 num)
 
bool ModStackAmount (int32 num, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
 
bool IsPassive () const
 
bool IsDeathPersistent () const
 
bool HasEffect (uint8 effIndex) const
 
AuraEffect * GetEffect (uint8 effIndex) const
 
bool HasEffectType (AuraType type) const
 
Unit * GetTarget () const
 
AuraApplication const * GetTargetApplication () const
 
Difficulty GetCastDifficulty () const
 
- Public Member Functions inherited from SpellScriptBase
 SpellScriptBase () noexcept
 
virtual ~SpellScriptBase ()
 
 SpellScriptBase (SpellScriptBase const &right)=delete
 
 SpellScriptBase (SpellScriptBase &&right)=delete
 
SpellScriptBase & operator= (SpellScriptBase const &right)=delete
 
SpellScriptBase & operator= (SpellScriptBase &&right)=delete
 
void _Register ()
 
void _Unload ()
 
void _Init (std::string const &scriptname, uint32 spellId)
 
std::string_view GetScriptName () const
 
virtual bool Validate (SpellInfo const *spellInfo)
 
virtual bool Load ()
 
virtual void Unload ()
 
- Static Public Member Functions inherited from SpellScriptBase
static bool ValidateSpellInfo (std::initializer_list< uint32 > spellIds)
 
template<class T >
static bool ValidateSpellInfo (T const &spellIds)
 
static bool ValidateSpellEffect (std::initializer_list< std::pair< uint32, SpellEffIndex > > effects)
 
template<class T >
static bool ValidateSpellEffect (T const &spellEffects)
 
- Public Attributes inherited from AuraScript
HookList< CheckAreaTargetHandler > DoCheckAreaTarget
 
HookList< AuraDispelHandler > OnDispel
 
HookList< AuraDispelHandler > AfterDispel
 
HookList< AuraHeartbeatHandler > OnHeartbeat
 
HookList< EffectApplyHandler > OnEffectApply
 
HookList< EffectApplyHandler > AfterEffectApply
 
HookList< EffectApplyHandler > OnEffectRemove
 
HookList< EffectApplyHandler > AfterEffectRemove
 
HookList< EffectPeriodicHandler > OnEffectPeriodic
 
HookList< EffectUpdatePeriodicHandler > OnEffectUpdatePeriodic
 
HookList< EffectCalcAmountHandler > DoEffectCalcAmount
 
HookList< EffectCalcPeriodicHandler > DoEffectCalcPeriodic
 
HookList< EffectCalcSpellModHandler > DoEffectCalcSpellMod
 
HookList< EffectCalcCritChanceHandler > DoEffectCalcCritChance
 
HookList< EffectCalcDamageAndHealingHandler > DoEffectCalcDamageAndHealing
 
HookList< EffectAbsorbHandler > OnEffectAbsorb
 
HookList< EffectAbsorbHandler > AfterEffectAbsorb
 
HookList< EffectAbsorbHealHandler > OnEffectAbsorbHeal
 
HookList< EffectAbsorbHealHandler > AfterEffectAbsorbHeal
 
HookList< EffectAbsorbHandler > OnEffectManaShield
 
HookList< EffectAbsorbHandler > AfterEffectManaShield
 
HookList< EffectAbsorbHandler > OnEffectSplit
 
HookList< CheckProcHandler > DoCheckProc
 
HookList< CheckEffectProcHandler > DoCheckEffectProc
 
HookList< AuraProcHandler > DoPrepareProc
 
HookList< AuraProcHandler > OnProc
 
HookList< AuraProcHandler > AfterProc
 
HookList< EffectProcHandler > OnEffectProc
 
HookList< EffectProcHandler > AfterEffectProc
 
HookList< EnterLeaveCombatHandler > OnEnterLeaveCombat
 
- Protected Types inherited from SpellScriptBase
template<typename ScriptFunc >
using GetScriptClass_t = typename GetScriptClass< ScriptFunc >::type
 
- Protected Attributes inherited from SpellScriptBase
std::string_view m_scriptName
 
uint32 m_scriptSpellId
 
uint8 m_currentScriptState
 

Detailed Description

Definition at line 468 of file boss_ymiron_the_fallen_king.cpp.

Member Function Documentation

◆ CalcPeriodic()

void spell_ymiron_the_fallen_king_bane_periodic_AuraScript::CalcPeriodic ( AuraEffect const *  ,
bool &  ,
int32 &  amplitude 
)
inlineprivate

◆ OnAfterApply()

void spell_ymiron_the_fallen_king_bane_periodic_AuraScript::OnAfterApply ( AuraEffect const *  ,
AuraEffectHandleModes   
)
inlineprivate

◆ OnAfterRemove()

void spell_ymiron_the_fallen_king_bane_periodic_AuraScript::OnAfterRemove ( AuraEffect const *  ,
AuraEffectHandleModes   
)
inlineprivate

◆ OnPeriodic()

void spell_ymiron_the_fallen_king_bane_periodic_AuraScript::OnPeriodic ( AuraEffect const *  aurEff)
inlineprivate

◆ Register()

◆ SpawnBaneOrb()

void spell_ymiron_the_fallen_king_bane_periodic_AuraScript::SpawnBaneOrb ( int8  tickNumber)
inlineprivate

Member Data Documentation

◆ _angles

std::array<float, BANE_MAX_TOTAL_TICKS * 2> spell_ymiron_the_fallen_king_bane_periodic_AuraScript::_angles = { }
private

Definition at line 537 of file boss_ymiron_the_fallen_king.cpp.

Referenced by OnAfterApply(), and SpawnBaneOrb().

◆ _distances

std::array<float, BANE_MAX_TOTAL_TICKS * 2> spell_ymiron_the_fallen_king_bane_periodic_AuraScript::_distances = { }
private

Definition at line 538 of file boss_ymiron_the_fallen_king.cpp.

Referenced by OnAfterApply(), and SpawnBaneOrb().

◆ BANE_MAX_TOTAL_TICKS

constexpr std::size_t spell_ymiron_the_fallen_king_bane_periodic_AuraScript::BANE_MAX_TOTAL_TICKS = 4 + 4 + 14
staticconstexprprivate

Definition at line 474 of file boss_ymiron_the_fallen_king.cpp.

Referenced by OnAfterApply().

◆ BANE_MISSILE_ANGLE_OFFSET

constexpr float spell_ymiron_the_fallen_king_bane_periodic_AuraScript::BANE_MISSILE_ANGLE_OFFSET = 0.75f
staticconstexprprivate

Definition at line 472 of file boss_ymiron_the_fallen_king.cpp.

Referenced by OnAfterApply().

◆ BANE_MISSILE_DIST_BASE

constexpr float spell_ymiron_the_fallen_king_bane_periodic_AuraScript::BANE_MISSILE_DIST_BASE = 10.0f
staticconstexprprivate

Definition at line 471 of file boss_ymiron_the_fallen_king.cpp.

Referenced by OnAfterApply().

◆ BANE_MISSILE_DIST_OFFSET

constexpr float spell_ymiron_the_fallen_king_bane_periodic_AuraScript::BANE_MISSILE_DIST_OFFSET = 2.272f
staticconstexprprivate

Definition at line 470 of file boss_ymiron_the_fallen_king.cpp.

Referenced by OnAfterApply().


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