Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
AuraEffect Class Reference

#include <SpellAuraEffects.h>

Collaboration diagram for AuraEffect:

Public Member Functions

void ApplySpellMod (Unit *target, bool apply)
int32 CalculateAmount (Unit *caster)
void CalculatePeriodic (Unit *caster, bool resetPeriodicTimer=true, bool load=false)
void CalculateSpellMod ()
bool CanBeRecalculated () const
void ChangeAmount (int32 newAmount, bool mark=true, bool onStackOrReapply=false)
void CleanupTriggeredSpells (Unit *target)
int32 GetAmount () const
int32 GetAmplitude () const
void GetApplicationList (std::list< AuraApplication * > &applicationList) const
AuraType GetAuraType () const
Aura * GetBase () const
int32 GetBaseAmount () const
Unit * GetCaster () const
uint64 GetCasterGUID () const
uint32 GetEffIndex () const
uint32 GetId () const
int32 GetMiscValue () const
int32 GetMiscValueB () const
int32 GetPeriodicTimer () const
SpellInfo const * GetSpellInfo () const
SpellModifier * GetSpellModifier () const
void GetTargetList (std::list< Unit * > &targetList) const
uint32 GetTickNumber () const
int32 GetTotalTicks () const
void HandleArenaPreparation (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraAllowFlight (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraAllowOnlyAbility (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraCloneCaster (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraControlVehicle (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraConvertRune (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraDummy (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraEmpathy (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraFeatherFall (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraForceWeather (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraGhost (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraHover (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraIncreaseBaseHealthPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraLinked (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraMastery (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModAttackPower (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModAttackPowerPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModBaseResistancePCT (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModBlockPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModCritPct (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModDecreaseSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModDisarm (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModDispelImmunity (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModDmgImmunity (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModDodgePercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModEffectImmunity (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModExpertise (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModFaction (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModFakeInebriation (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseEnergyPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseFlightSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseHealth (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseHealthPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseMaxHealth (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseMaxPowerFlat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseMountedSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModIncreaseSwimSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModPacify (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModPacifyAndSilence (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModParryPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModPetTalentsPoints (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModRangedAttackPower (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModRangedAttackPowerPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModRangedHaste (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModRegenInterrupt (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModResistance (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModResistanceExclusive (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModRoot (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModScale (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModSchoolImmunity (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModShapeshift (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModSilence (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModSkill (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModStalked (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModStat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModStateImmunity (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModStun (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModTotalThreat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModUseNormalSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraModWeaponCritPercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraMounted (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraOverrideAutoattackWithSpell (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraOverrideSpells (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraRetainComboPoints (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraSetVehicle (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraTrackCreatures (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraTrackResources (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraTrackStealthed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraTransform (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraUntrackable (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleAuraWaterWalk (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleBindSight (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleChannelDeathItem (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleCharmConvert (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleComprehendLanguage (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleEffect (AuraApplication *aurApp, uint8 mode, bool apply)
void HandleEffect (Unit *target, uint8 mode, bool apply)
void HandleEnableAltPower (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleFeignDeath (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleForceMoveForward (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleForceReaction (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModAttackSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModBaseResistance (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModCastingSpeed (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModCharm (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModCombatSpeedPct (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModConfuse (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModDamageDone (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModDamagePercentDone (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModFear (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModHealingDone (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModHitChance (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModInvisibility (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModInvisibilityDetect (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModMechanicImmunity (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModMeleeRangedSpeedPct (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModMeleeSpeedPct (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModOffhandDamagePercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModPercentStat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModPossess (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModPossessPet (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModPowerCost (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModPowerCostPCT (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModPowerRegen (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModPowerRegenPCT (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModRating (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModRatingFromStat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModResistancePercent (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModSpellCritChance (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModSpellDamagePercentFromStat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModSpellHealingPercentFromStat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModSpellHitChance (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModStateImmunityMask (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModStealth (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModStealthDetect (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModStealthLevel (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModTargetResistance (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModTaunt (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModThreat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModTotalPercentStat (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleModUnattackable (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleNoImmediateEffect (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleNULL (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleObsModPowerAuraTick (Unit *target, Unit *caster) const
void HandleOverrideAttackPowerBySpellPower (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleOverrideSpellPowerByAttackPower (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandlePeriodicDamageAurasTick (Unit *target, Unit *caster) const
void HandlePeriodicDummyAuraTick (Unit *target, Unit *caster) const
void HandlePeriodicEnergizeAuraTick (Unit *target, Unit *caster) const
void HandlePeriodicHealAurasTick (Unit *target, Unit *caster) const
void HandlePeriodicHealthFunnelAuraTick (Unit *target, Unit *caster) const
void HandlePeriodicHealthLeechAuraTick (Unit *target, Unit *caster) const
void HandlePeriodicManaLeechAuraTick (Unit *target, Unit *caster) const
void HandlePeriodicPowerBurnAuraTick (Unit *target, Unit *caster) const
void HandlePeriodicTriggerSpellAuraTick (Unit *target, Unit *caster) const
void HandlePeriodicTriggerSpellWithValueAuraTick (Unit *target, Unit *caster) const
void HandlePhase (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandlePhaseGroup (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandlePlayScene (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandlePreventFleeing (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandlePreventResurrection (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleProc (AuraApplication *aurApp, ProcEventInfo &eventInfo)
void HandleProcTriggerDamageAuraProc (AuraApplication *aurApp, ProcEventInfo &eventInfo)
void HandleProcTriggerSpellAuraProc (AuraApplication *aurApp, ProcEventInfo &eventInfo)
void HandleProcTriggerSpellWithValueAuraProc (AuraApplication *aurApp, ProcEventInfo &eventInfo)
void HandleRaidProcFromChargeAuraProc (AuraApplication *aurApp, ProcEventInfo &eventInfo)
void HandleRaidProcFromChargeWithValueAuraProc (AuraApplication *aurApp, ProcEventInfo &eventInfo)
void HandleShapeshiftBoosts (Unit *target, bool apply) const
void HandleShieldBlockValue (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleSpiritOfRedemption (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleUnused (AuraApplication const *aurApp, uint8 mode, bool apply) const
void HandleWaterBreathing (AuraApplication const *aurApp, uint8 mode, bool apply) const
bool HasSpellClassMask () const
bool IsAffectingSpell (SpellInfo const *spell) const
bool IsPeriodic () const
void PeriodicTick (AuraApplication *aurApp, Unit *caster) const
void RecalculateAmount ()
void RecalculateAmount (Unit *caster)
void ResetPeriodic (bool resetPeriodicTimer=false)
void SendTickImmune (Unit *target, Unit *caster) const
void SetAmount (int32 amount)
void SetCanBeRecalculated (bool val)
void SetPeriodic (bool isPeriodic)
void SetPeriodicTimer (int32 periodicTimer)
void Update (uint32 diff, Unit *caster)
void UpdatePeriodic (Unit *caster)

Private Member Functions

 AuraEffect (Aura *base, uint8 effIndex, int32 *baseAmount, Unit *caster)
bool IsPeriodicTickCrit (Unit *target, Unit const *caster) const
 ~AuraEffect ()

Private Attributes

int32 m_amount
int32 m_amplitude
Aura *const m_base
int32 const m_baseAmount
bool m_canBeRecalculated
uint8 const m_effIndex
bool m_isPeriodic
int32 m_periodicTimer
SpellInfo const *const m_spellInfo
SpellModifier * m_spellmod
uint32 m_tickNumber

Friends

void Aura::_InitEffects (uint32 effMask, Unit *caster, int32 *baseAmount)
friend Aura::~Aura ()
Aura * Unit::_TryStackingOrRefreshingExistingAura (SpellInfo const *newAura, uint32 effMask, Unit *caster, int32 *baseAmount, Item *castItem, uint64 casterGUID)

Detailed Description

Definition at line 17 of file SpellAuraEffects.h.

Constructor & Destructor Documentation

◆ ~AuraEffect()

AuraEffect::~AuraEffect ( )
private

Definition at line 531 of file SpellAuraEffects.cpp.

References m_spellmod.

◆ AuraEffect()

Member Function Documentation

◆ ApplySpellMod()

◆ CalculateAmount()

◆ CalculatePeriodic()

◆ CalculateSpellMod()

◆ CanBeRecalculated()

bool AuraEffect::CanBeRecalculated ( ) const
inline

◆ ChangeAmount()

◆ CleanupTriggeredSpells()

void AuraEffect::CleanupTriggeredSpells ( Unit * target)
Todo
is there a spell flag, which can solve this in a more sophisticated way?

Definition at line 1174 of file SpellAuraEffects.cpp.

References GetCasterGUID(), SpellInfo::GetDuration(), GetEffIndex(), m_spellInfo, Unit::RemoveAurasDueToSpell(), SPELL_AURA_PERIODIC_TRIGGER_SPELL, and sSpellMgr.

Referenced by AuraApplication::_HandleEffect().

◆ GetAmount()

int32 AuraEffect::GetAmount ( ) const
inline

Definition at line 42 of file SpellAuraEffects.h.

References m_amount.

Referenced by Player::_ApplyWeaponDependentAuraCritMod(), Player::_ApplyWeaponDependentAuraDamageMod(), AuraApplication::_HandleEffect(), Pet::_SaveAuras(), spell_dru_survival_instincts::spell_dru_survival_instincts_AuraScript::AfterApply(), spell_the_lich_king_necrotic_plague_jump::spell_the_lich_king_necrotic_plague_AuraScript::AfterDispel(), spell_dru_lifebloom::spell_dru_lifebloom_AuraScript::AfterRemove(), spell_mage_living_bomb::spell_mage_living_bomb_AuraScript::AfterRemove(), Unit::CalcAbsorbResist(), Unit::CalcHealAbsorb(), spell_sha_mana_tide_totem::spell_sha_mana_tide_totem_AuraScript::CalculateAmount(), CalculateSpellMod(), ChangeAmount(), spell_yogg_saron_brain_link::spell_yogg_saron_brain_link_AuraScript::DummyTick(), Spell::EffectHeal(), spell_pri_renew::spell_pri_renew_AuraScript::HandleApplyEffect(), HandleAuraDummy(), HandleAuraIncreaseBaseHealthPercent(), HandleAuraLinked(), HandleAuraModAttackPower(), HandleAuraModAttackPowerPercent(), HandleAuraModBaseResistancePCT(), HandleAuraModCritPct(), HandleAuraModFakeInebriation(), HandleAuraModIncreaseEnergyPercent(), HandleAuraModIncreaseHealth(), HandleAuraModIncreaseHealthPercent(), HandleAuraModIncreaseMaxHealth(), HandleAuraModIncreaseMaxPowerFlat(), HandleAuraModRangedAttackPower(), HandleAuraModRangedAttackPowerPercent(), HandleAuraModRangedHaste(), HandleAuraModResistance(), HandleAuraModResistanceExclusive(), HandleAuraModScale(), HandleAuraModSkill(), HandleAuraModStat(), HandleAuraModTotalThreat(), HandleAuraModWeaponCritPercent(), HandleAuraMounted(), Unit::HandleAuraProcOnPowerAmount(), Unit::HandleAuraRaidProcFromChargeWithValue(), HandleAuraRetainComboPoints(), Aura::HandleAuraSpecificMods(), HandleChannelDeathItem(), Unit::HandleDummyAuraProc(), spell_shadowfang_keep_haunting_spirits::spell_shadowfang_keep_haunting_spirits_AuraScript::HandleDummyTick(), spell_general_vezax_saronite_vapors::spell_general_vezax_saronite_vapors_AuraScript::HandleEffectApply(), spell_hun_fire::spell_hun_fire_AuraScript::HandleEffectCalcSpellMod(), spell_hun_improved_serpent_sting::spell_hun_improved_serpent_sting_AuraScript::HandleEffectCalcSpellMod(), spell_warl_chaotic_energy::spell_warl_chaotic_energy_AuraScript::HandleEffectCalcSpellMod(), spell_anubarak_leeching_swarm::spell_anubarak_leeching_swarm_AuraScript::HandleEffectPeriodic(), spell_general_vezax_mark_of_the_faceless::spell_general_vezax_mark_of_the_faceless_AuraScript::HandleEffectPeriodic(), spell_ex_66244::spell_ex_66244AuraScript::HandleEffectPeriodicUpdate(), spell_gen_burn_brutallus::spell_gen_burn_brutallus_AuraScript::HandleEffectPeriodicUpdate(), spell_pal_eye_for_an_eye::spell_pal_eye_for_an_eye_AuraScript::HandleEffectProc(), spell_pri_vampiric_embrace::spell_pri_vampiric_embrace_AuraScript::HandleEffectProc(), spell_sha_ancestral_awakening::spell_sha_ancestral_awakening_AuraScript::HandleEffectProc(), spell_sha_glyph_of_healing_wave::spell_sha_glyph_of_healing_wave_AuraScript::HandleEffectProc(), spell_sha_rolling_thunder::spell_sha_rolling_thunder_AuraScript::HandleEffectProc(), spell_sha_telluric_currents::spell_sha_telluric_currents_AuraScript::HandleEffectProc(), spell_sha_tidal_waves::spell_sha_tidal_waves_AuraScript::HandleEffectProc(), spell_pri_evangelism::spell_pri_evangelism_AuraScript::HandleEffectStackProc(), HandleModAttackSpeed(), HandleModBaseResistance(), HandleModCastingSpeed(), HandleModCombatSpeedPct(), HandleModDamageDone(), HandleModDamagePercentDone(), HandleModHitChance(), HandleModInvisibility(), HandleModInvisibilityDetect(), HandleModMeleeRangedSpeedPct(), HandleModMeleeSpeedPct(), HandleModOffhandDamagePercent(), HandleModPowerCost(), HandleModPowerCostPCT(), HandleModRating(), HandleModResistancePercent(), HandleModSpellCritChance(), HandleModSpellHitChance(), HandleModStateImmunityMask(), HandleModStealth(), HandleModStealthDetect(), HandleModStealthLevel(), HandleModTargetResistance(), HandleModThreat(), HandleModTotalPercentStat(), spell_gen_running_wild::spell_gen_running_wild_AuraScript::HandleMount(), spell_monk_diffuse_magic::spell_monk_diffuse_magic_SpellScript::HandleOnHit(), HandlePeriodicDamageAurasTick(), HandlePeriodicHealthFunnelAuraTick(), HandlePeriodicHealthLeechAuraTick(), HandlePeriodicTriggerSpellWithValueAuraTick(), spell_dru_living_seed::spell_dru_living_seed_AuraScript::HandleProc(), spell_dru_living_seed_proc::spell_dru_living_seed_proc_AuraScript::HandleProc(), spell_item_necrotic_touch::spell_item_necrotic_touch_AuraScript::HandleProc(), spell_pal_beacon_of_light::spell_pal_beacon_of_light_AuraScript::HandleProc(), spell_pri_divine_aegis::spell_pri_divine_aegis_AuraScript::HandleProc(), spell_sha_earth_shield::spell_sha_earth_shield_AuraScript::HandleProc(), HandleProcTriggerDamageAuraProc(), Unit::HandleProcTriggerSpell(), HandleProcTriggerSpellWithValueAuraProc(), HandleRaidProcFromChargeWithValueAuraProc(), HandleShieldBlockValue(), spell_valanar_kinetic_bomb_absorb::spell_valanar_kinetic_bomb_absorb_AuraScript::OnAbsorb(), spell_the_lich_king_necrotic_plague_jump::spell_the_lich_king_necrotic_plague_AuraScript::OnDispel(), spell_anhuur_divine_reckoning::spell_anhuur_divine_reckoning_AuraScript::OnPeriodic(), spell_xt002_gravity_bomb_aura::spell_xt002_gravity_bomb_aura_AuraScript::OnPeriodic(), spell_blood_queen_essence_of_the_blood_queen::spell_blood_queen_essence_of_the_blood_queen_AuraScript::OnProc(), spell_sha_nature_guardian::spell_sha_nature_guardian_AuraScript::OnProc(), spell_warl_fel_synergy::spell_warl_fel_synergy_AuraScript::OnProc(), spell_warl_shadow_trance_proc::spell_warl_shadow_trance_proc_AuraScript::OnProc(), spell_sindragosa_instability::spell_sindragosa_instability_AuraScript::OnRemove(), spell_the_lich_king_necrotic_plague_jump::spell_the_lich_king_necrotic_plague_AuraScript::OnRemove(), spell_xt002_gravity_bomb_aura::spell_xt002_gravity_bomb_aura_AuraScript::OnRemove(), spell_xt002_searing_light_spawn_life_spark::spell_xt002_searing_light_spawn_life_spark_AuraScript::OnRemove(), spell_yogg_saron_nondescript::spell_yogg_saron_nondescript_AuraScript::OnRemove(), spell_ulduar_stone_grip::spell_ulduar_stone_grip_AuraScript::OnRemoveStun(), spell_the_lich_king_infest::spell_the_lich_king_infest_AuraScript::OnUpdate(), Unit::ProcDamageAndSpellFor(), Unit::RemoveAurasDueToSpellBySteal(), and UpdatePeriodic().

◆ GetAmplitude()

int32 AuraEffect::GetAmplitude ( ) const
inline

Definition at line 37 of file SpellAuraEffects.h.

References m_amplitude.

◆ GetApplicationList()

void AuraEffect::GetApplicationList ( std::list< AuraApplication * > & applicationList) const

Definition at line 547 of file SpellAuraEffects.cpp.

References Aura::GetApplicationMap(), GetBase(), and GetEffIndex().

Referenced by ChangeAmount(), and Update().

◆ GetAuraType()

◆ GetBase()

Aura * AuraEffect::GetBase ( ) const
inline

Definition at line 28 of file SpellAuraEffects.h.

References m_base.

Referenced by spell_monk_dampen_harm::spell_monk_dampen_harm_AuraScript::Absorb(), ApplySpellMod(), Unit::CalcAbsorbResist(), Unit::CalcHealAbsorb(), CalculateAmount(), spell_dru_might_of_ursoc::spell_dru_might_of_ursoc_AuraScript::CalculateAmount(), CalculatePeriodic(), CalculateSpellMod(), Spell::EffectHeal(), Spell::EffectScriptEffect(), GetApplicationList(), GetCaster(), GetCasterGUID(), GetTargetList(), GetTotalTicks(), HandleAuraLinked(), HandleAuraModShapeshift(), HandleAuraModStateImmunity(), HandleAuraMounted(), Unit::HandleAuraProcOnPowerAmount(), Unit::HandleAuraRaidProcFromCharge(), Unit::HandleAuraRaidProcFromChargeWithValue(), HandleAuraRetainComboPoints(), Unit::HandleDummyAuraProc(), HandleEffect(), HandleEffect(), spell_gen_aura_of_anger::spell_gen_aura_of_anger_AuraScript::HandleEffectPeriodicUpdate(), HandleObsModPowerAuraTick(), spell_monk_diffuse_magic::spell_monk_diffuse_magic_SpellScript::HandleOnHit(), Unit::HandleOverrideClassScriptAuraProc(), HandlePeriodicDamageAurasTick(), HandlePeriodicDummyAuraTick(), HandlePeriodicEnergizeAuraTick(), HandlePeriodicHealAurasTick(), HandlePeriodicHealthLeechAuraTick(), HandlePeriodicManaLeechAuraTick(), spell_intense_cold::spell_intense_cold_AuraScript::HandlePeriodicTick(), HandleProc(), Unit::HandleProcTriggerSpell(), HandleRaidProcFromChargeAuraProc(), HandleRaidProcFromChargeWithValueAuraProc(), spell_monk_disable::spell_monk_disable_AuraScript::OnPeriodic(), spell_halion_marks::spell_halion_marks_AuraScript::OnRemove(), PeriodicTick(), Spell::prepare(), Unit::ProcDamageAndSpellFor(), Player::RestoreBaseRune(), Update(), and UpdatePeriodic().

◆ GetBaseAmount()

int32 AuraEffect::GetBaseAmount ( ) const
inline

Definition at line 36 of file SpellAuraEffects.h.

References m_baseAmount.

Referenced by Pet::_SaveAuras(), and Unit::RemoveAurasDueToSpellBySteal().

◆ GetCaster()

◆ GetCasterGUID()

◆ GetEffIndex()

uint32 AuraEffect::GetEffIndex ( ) const
inline

Definition at line 35 of file SpellAuraEffects.h.

References m_effIndex.

Referenced by Unit::CalcAbsorbResist(), CalculateAmount(), spell_pri_power_word_shield::spell_pri_power_word_shield_AuraScript::CalculateAmount(), spell_warr_rend::spell_warr_rend_AuraScript::CalculateAmount(), CalculateSpellMod(), Aura::CallScriptAfterEffectApplyHandlers(), Aura::CallScriptAfterEffectProcHandlers(), Aura::CallScriptAfterEffectRemoveHandlers(), Aura::CallScriptEffectAbsorbHandlers(), Aura::CallScriptEffectAfterAbsorbHandlers(), Aura::CallScriptEffectAfterManaShieldHandlers(), Aura::CallScriptEffectApplyHandlers(), Aura::CallScriptEffectCalcAmountHandlers(), Aura::CallScriptEffectCalcPeriodicHandlers(), Aura::CallScriptEffectCalcSpellModHandlers(), Aura::CallScriptEffectManaShieldHandlers(), Aura::CallScriptEffectPeriodicHandlers(), Aura::CallScriptEffectProcHandlers(), Aura::CallScriptEffectRemoveHandlers(), Aura::CallScriptEffectSplitHandlers(), Aura::CallScriptEffectUpdatePeriodicHandlers(), ChangeAmount(), CleanupTriggeredSpells(), GetApplicationList(), GetTargetList(), HandleAuraModStat(), HandleAuraOverrideAutoattackWithSpell(), Unit::HandleAuraProcOnPowerAmount(), Unit::HandleAuraRaidProcFromCharge(), Unit::HandleAuraRaidProcFromChargeWithValue(), Unit::HandleDummyAuraProc(), spell_hun_fire::spell_hun_fire_AuraScript::HandleEffectCalcSpellMod(), spell_hun_improved_serpent_sting::spell_hun_improved_serpent_sting_AuraScript::HandleEffectCalcSpellMod(), spell_warl_chaotic_energy::spell_warl_chaotic_energy_AuraScript::HandleEffectCalcSpellMod(), spell_q12619_emblazon_runeblade::spell_q12619_emblazon_runeblade_AuraScript::HandleEffectPeriodic(), HandlePeriodicDamageAurasTick(), HandlePeriodicHealthFunnelAuraTick(), HandlePeriodicHealthLeechAuraTick(), HandlePeriodicManaLeechAuraTick(), HandlePeriodicPowerBurnAuraTick(), HandlePeriodicTriggerSpellAuraTick(), HandlePeriodicTriggerSpellWithValueAuraTick(), Unit::HandleProcTriggerSpell(), HandleProcTriggerSpellAuraProc(), HandleRaidProcFromChargeAuraProc(), HandleRaidProcFromChargeWithValueAuraProc(), spell_putricide_mutated_plague::spell_putricide_mutated_plague_AuraScript::HandleTriggerSpell(), spell_the_lich_king_vile_spirits::spell_the_lich_king_vile_spirits_AuraScript::OnPeriodic(), and Update().

◆ GetId()

◆ GetMiscValue()

int32 AuraEffect::GetMiscValue ( ) const
inline

Definition at line 40 of file SpellAuraEffects.h.

References m_effIndex, and m_spellInfo.

Referenced by Player::_ApplyWeaponDependentAuraDamageMod(), ApplySpellMod(), Unit::CalcAbsorbResist(), CalculateSpellMod(), Unit::GetMaxPositiveAuraModifierByMiscMask(), HandleAuraConvertRune(), HandleAuraDummy(), HandleAuraForceWeather(), HandleAuraModBaseResistancePCT(), HandleAuraModDispelImmunity(), HandleAuraModDmgImmunity(), HandleAuraModEffectImmunity(), HandleAuraModFaction(), HandleAuraModIncreaseEnergyPercent(), HandleAuraModIncreaseMaxPowerFlat(), HandleAuraModResistance(), HandleAuraModResistanceExclusive(), HandleAuraModSchoolImmunity(), HandleAuraModShapeshift(), HandleAuraModSkill(), HandleAuraModStat(), HandleAuraModStateImmunity(), HandleAuraMounted(), HandleAuraOverrideSpells(), HandleAuraSetVehicle(), HandleAuraTrackCreatures(), HandleAuraTrackResources(), HandleAuraTransform(), spell_hun_improved_serpent_sting::spell_hun_improved_serpent_sting_AuraScript::HandleEffectCalcSpellMod(), HandleEnableAltPower(), HandleForceReaction(), HandleModBaseResistance(), HandleModDamageDone(), HandleModDamagePercentDone(), HandleModInvisibility(), HandleModInvisibilityDetect(), HandleModMechanicImmunity(), HandleModPercentStat(), HandleModPowerCost(), HandleModPowerCostPCT(), HandleModPowerRegen(), HandleModRating(), HandleModRatingFromStat(), HandleModResistancePercent(), HandleModStateImmunityMask(), HandleModStealth(), HandleModStealthDetect(), HandleModStealthLevel(), HandleModTargetResistance(), HandleModThreat(), HandleObsModPowerAuraTick(), Unit::HandleOverrideClassScriptAuraProc(), HandlePeriodicEnergizeAuraTick(), HandlePeriodicManaLeechAuraTick(), HandlePeriodicPowerBurnAuraTick(), HandlePlayScene(), HandleShapeshiftBoosts(), spell_gen_override_display_power::spell_gen_override_display_power_AuraScript::OnApply(), and Unit::ProcDamageAndSpellFor().

◆ GetMiscValueB()

int32 AuraEffect::GetMiscValueB ( ) const
inline

◆ GetPeriodicTimer()

int32 AuraEffect::GetPeriodicTimer ( ) const
inline

◆ GetSpellInfo()

SpellInfo const * AuraEffect::GetSpellInfo ( ) const
inline

Definition at line 33 of file SpellAuraEffects.h.

References m_spellInfo.

Referenced by Player::_ApplyWeaponDependentAuraCritMod(), Player::_ApplyWeaponDependentAuraDamageMod(), AuraEffect(), Unit::CalcAbsorbResist(), CalculateAmount(), CalculateSpellMod(), spell_dk_pet_scaling_01::spell_dk_pet_scaling_01_AuraScript::CalculateStrengthAmount(), Spell::EffectHeal(), Spell::EffectScriptEffect(), HandleAuraDummy(), HandleAuraModEffectImmunity(), HandleAuraModSchoolImmunity(), HandleAuraModStateImmunity(), HandleAuraModWeaponCritPercent(), HandleAuraMounted(), Unit::HandleAuraProcOnPowerAmount(), Unit::HandleAuraRaidProcFromCharge(), Unit::HandleAuraRaidProcFromChargeWithValue(), HandleAuraTransform(), HandleChannelDeathItem(), Unit::HandleDummyAuraProc(), HandleModDamageDone(), HandleModDamagePercentDone(), HandleModMechanicImmunity(), HandleModStateImmunityMask(), HandleObsModPowerAuraTick(), HandlePeriodicDamageAurasTick(), HandlePeriodicDummyAuraTick(), HandlePeriodicEnergizeAuraTick(), HandlePeriodicHealAurasTick(), HandlePeriodicHealthFunnelAuraTick(), HandlePeriodicHealthLeechAuraTick(), HandlePeriodicManaLeechAuraTick(), HandlePeriodicPowerBurnAuraTick(), HandlePeriodicTriggerSpellAuraTick(), HandlePeriodicTriggerSpellWithValueAuraTick(), HandleProcTriggerDamageAuraProc(), Unit::HandleProcTriggerSpell(), HandleProcTriggerSpellAuraProc(), HandleProcTriggerSpellWithValueAuraProc(), HandleRaidProcFromChargeAuraProc(), HandleRaidProcFromChargeWithValueAuraProc(), spell_monk_touch_of_karma::spell_monk_touch_of_karma_AuraScript::OnAbsorb(), spell_monk_serpents_zeal::spell_monk_serpents_zeal_AuraScript::OnProc(), spell_sha_nature_guardian::spell_sha_nature_guardian_AuraScript::OnProc(), Skyfire::AbsorbAuraOrderPred::operator()(), Spell::prepare(), Player::RestoreBaseRune(), and UpdatePeriodic().

◆ GetSpellModifier()

SpellModifier * AuraEffect::GetSpellModifier ( ) const
inline

Definition at line 31 of file SpellAuraEffects.h.

References m_spellmod.

◆ GetTargetList()

void AuraEffect::GetTargetList ( std::list< Unit * > & targetList) const

Definition at line 536 of file SpellAuraEffects.cpp.

References Aura::GetApplicationMap(), GetBase(), and GetEffIndex().

◆ GetTickNumber()

◆ GetTotalTicks()

◆ HandleArenaPreparation()

void AuraEffect::HandleArenaPreparation ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraAllowFlight()

◆ HandleAuraAllowOnlyAbility()

◆ HandleAuraCloneCaster()

◆ HandleAuraControlVehicle()

◆ HandleAuraConvertRune()

◆ HandleAuraDummy()

void AuraEffect::HandleAuraDummy ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

Definition at line 75 of file SpellAuraMisc.cpp.

References Unit::AddAura(), Unit::AddPetAura(), Unit::AddThreat(), Unit::ApplySpellImmune(), AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK, AURA_EFFECT_HANDLE_REAL, AURA_EFFECT_HANDLE_REAPPLY, AURA_REMOVE_BY_EXPIRE, Unit::CanHaveThreatList(), Unit::CastSpell(), Skyfire::Spells::ChampioningAuraInfo::ChampioningType, ObjectMgr::ChooseDisplayId(), Skyfire::Spells::ChampioningAuraInfo::FactionId, GetAmount(), Unit::GetAura(), Skyfire::Spells::GetAuraDummyTriggeredSpellId(), Unit::GetAuraEffectsByType(), Skyfire::Spells::GetAuraRemoveTriggeredSpellId(), Player::GetBattleground(), Skyfire::Spells::GetBloodElfIllusionDisguiseSpellId(), GetCaster(), GetCasterGUID(), Skyfire::Spells::GetChampioningAuraInfo(), Player::GetComboTarget(), Skyfire::Spells::GetFestiveHolidayMountCreatureEntry(), Unit::getGender(), Unit::GetGuardianPet(), Object::GetGUID(), GetId(), Skyfire::Spells::GetKillCommandOwnerAuraSpellId(), Skyfire::Spells::GetKillCommandPetAuraSpellId(), Skyfire::Spells::GetLichKingIntroApplySoundId(), Skyfire::Spells::GetLichKingIntroContinueSpellId(), Skyfire::Spells::GetLichKingIntroRemoveSoundId(), WorldObject::GetMap(), GetMiscValue(), Unit::GetMotionMaster(), Skyfire::Spells::GetNetOMaticRootSelfSpellId(), Skyfire::Spells::GetQuestTameFinalSpellId(), AuraApplication::GetRemoveMode(), Aura::GetSpellInfo(), GetSpellInfo(), Skyfire::Spells::GetStackingAuraTriggerSpellId(), Skyfire::Spells::GetTaggedMurlocEntry(), AuraApplication::GetTarget(), Object::GetTypeId(), ObjectAccessor::GetUnit(), WorldObject::GetZoneId(), Unit::HasAuraType(), SpellInfo::Id, IMMUNITY_MECHANIC, Unit::IsAlive(), Map::IsBattleground(), Skyfire::Spells::IsDespawnOnRemoveAura(), Map::IsHeroic(), Map::IsInstance(), Player::LeaveBattleground(), m_effIndex, m_spellInfo, MotionMaster::MoveFall(), WorldObject::PlayDirectSound(), WorldObject::PlayDistanceSound(), Unit::RemoveAurasDueToSpell(), Unit::RemovePetAura(), roll_chance_i(), sBattlefieldMgr, Player::SetChampioningFaction(), Player::SetChampioningType(), Aura::SetCharges(), Object::SetEntry(), Aura::SetStackAmount(), Object::SetUInt32Value(), sObjectMgr, SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED, SPELL_AURA_MOUNTED, SPELLFAMILY_DEATHKNIGHT, SPELLFAMILY_GENERIC, sSpellMgr, SpellInfo::StackAmount, Object::ToPlayer(), TYPEID_PLAYER, and UNIT_FIELD_MOUNT_DISPLAY_ID.

◆ HandleAuraEmpathy()

◆ HandleAuraFeatherFall()

◆ HandleAuraForceWeather()

◆ HandleAuraGhost()

◆ HandleAuraHover()

void AuraEffect::HandleAuraHover ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraIncreaseBaseHealthPercent()

void AuraEffect::HandleAuraIncreaseBaseHealthPercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraLinked()

◆ HandleAuraMastery()

void AuraEffect::HandleAuraMastery ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModAttackPower()

void AuraEffect::HandleAuraModAttackPower ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModAttackPowerPercent()

void AuraEffect::HandleAuraModAttackPowerPercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModBaseResistancePCT()

◆ HandleAuraModBlockPercent()

void AuraEffect::HandleAuraModBlockPercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModCritPct()

◆ HandleAuraModDecreaseSpeed()

void AuraEffect::HandleAuraModDecreaseSpeed ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModDisarm()

◆ HandleAuraModDispelImmunity()

void AuraEffect::HandleAuraModDispelImmunity ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModDmgImmunity()

void AuraEffect::HandleAuraModDmgImmunity ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModDodgePercent()

void AuraEffect::HandleAuraModDodgePercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModEffectImmunity()

◆ HandleAuraModExpertise()

void AuraEffect::HandleAuraModExpertise ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModFaction()

◆ HandleAuraModFakeInebriation()

◆ HandleAuraModIncreaseEnergyPercent()

void AuraEffect::HandleAuraModIncreaseEnergyPercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModIncreaseFlightSpeed()

◆ HandleAuraModIncreaseHealth()

◆ HandleAuraModIncreaseHealthPercent()

◆ HandleAuraModIncreaseMaxHealth()

◆ HandleAuraModIncreaseMaxPowerFlat()

void AuraEffect::HandleAuraModIncreaseMaxPowerFlat ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModIncreaseMountedSpeed()

void AuraEffect::HandleAuraModIncreaseMountedSpeed ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

Definition at line 480 of file SpellAuraControl.cpp.

References HandleAuraModIncreaseSpeed().

◆ HandleAuraModIncreaseSpeed()

void AuraEffect::HandleAuraModIncreaseSpeed ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModIncreaseSwimSpeed()

void AuraEffect::HandleAuraModIncreaseSwimSpeed ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModPacify()

◆ HandleAuraModPacifyAndSilence()

◆ HandleAuraModParryPercent()

void AuraEffect::HandleAuraModParryPercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModPetTalentsPoints()

void AuraEffect::HandleAuraModPetTalentsPoints ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModRangedAttackPower()

◆ HandleAuraModRangedAttackPowerPercent()

void AuraEffect::HandleAuraModRangedAttackPowerPercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModRangedHaste()

void AuraEffect::HandleAuraModRangedHaste ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

ToDo: Haste auras with the same handler CAN'T stack together

Definition at line 870 of file SpellAuraStats.cpp.

References Unit::ApplyAttackTimePercentMod(), AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK, AURA_EFFECT_HANDLE_STAT, GetAmount(), AuraApplication::GetTarget(), and RANGED_ATTACK.

◆ HandleAuraModRegenInterrupt()

void AuraEffect::HandleAuraModRegenInterrupt ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModResistance()

◆ HandleAuraModResistanceExclusive()

◆ HandleAuraModRoot()

void AuraEffect::HandleAuraModRoot ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModScale()

void AuraEffect::HandleAuraModScale ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModSchoolImmunity()

◆ HandleAuraModShapeshift()

void AuraEffect::HandleAuraModShapeshift ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

Definition at line 451 of file SpellAuraState.cpp.

References Player::_ApplyWeaponDamage(), Player::AddTemporarySpell(), AURA_EFFECT_HANDLE_REAL, AuraEffect(), BASE_ATTACK, Unit::CanUseAttackType(), Unit::CastSpell(), CLASS_DRUID, EQUIPMENT_SLOT_MAINHAND, FORM_AMBIENT, FORM_AQUA, FORM_BATTLESTANCE, FORM_BEAR, FORM_BERSERKERSTANCE, FORM_BLB_PLAYER, FORM_CAT, FORM_CREATUREBEAR, FORM_CREATURECAT, FORM_DEFENSIVESTANCE, FORM_FIERCE_TIGER, FORM_FLIGHT, FORM_FLIGHT_EPIC, FORM_GHOSTWOLF, FORM_GHOUL, FORM_MASTER_ANGLER, FORM_METAMORPHOSIS, FORM_MOONKIN, FORM_NONE, FORM_SHADOW, FORM_SHADOW_DANCE, FORM_SPIRITOFREDEMPTION, FORM_STEALTH, FORM_STEVES_GHOUL, FORM_STURDY_OX, FORM_TEST_OF_STRENGTH, FORM_THARONJA_SKELETON, FORM_TRAVEL, FORM_TREE, FORM_UNDEAD, FORM_WISE_SERPENT, FORM_ZOMBIE, Unit::GetAuraEffect(), GetBase(), Unit::getClass(), Player::GetItemByPos(), GetMiscValue(), Unit::GetModelForForm(), Unit::GetPower(), Unit::getPowerType(), AuraApplication::GetRemoveMode(), AuraApplication::GetTarget(), Unit::getTransForm(), Object::GetTypeId(), HandleShapeshiftBoosts(), Unit::HasAuraType(), Player::InitDataForForm(), INVENTORY_SLOT_BAG_0, Unit::IsPolymorphed(), MAX_SHAPESHIFT_SPELLS, POWER_ENERGY, POWER_MANA, POWER_RAGE, Unit::RemoveAurasByType(), Unit::RemoveAurasDueToSpell(), Unit::RemoveMovementImpairingAuras(), Player::RemoveTemporarySpell(), Unit::RestoreDisplayId(), Unit::SetDisplayId(), Unit::SetPower(), Unit::setPowerType(), Unit::SetShapeshiftForm(), SF_LOG_ERROR, SPELL_AURA_MOD_SHAPESHIFT, sSpellShapeshiftFormStore, SpellShapeshiftFormEntry::stanceSpell, Object::ToPlayer(), and TYPEID_PLAYER.

◆ HandleAuraModSilence()

◆ HandleAuraModSkill()

◆ HandleAuraModStalked()

◆ HandleAuraModStat()

◆ HandleAuraModStateImmunity()

◆ HandleAuraModStun()

void AuraEffect::HandleAuraModStun ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModTotalThreat()

◆ HandleAuraModUseNormalSpeed()

void AuraEffect::HandleAuraModUseNormalSpeed ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraModWeaponCritPercent()

◆ HandleAuraMounted()

◆ HandleAuraOverrideAutoattackWithSpell()

void AuraEffect::HandleAuraOverrideAutoattackWithSpell ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraOverrideSpells()

◆ HandleAuraRetainComboPoints()

void AuraEffect::HandleAuraRetainComboPoints ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraSetVehicle()

◆ HandleAuraTrackCreatures()

void AuraEffect::HandleAuraTrackCreatures ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraTrackResources()

void AuraEffect::HandleAuraTrackResources ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleAuraTrackStealthed()

◆ HandleAuraTransform()

◆ HandleAuraUntrackable()

◆ HandleAuraWaterWalk()

void AuraEffect::HandleAuraWaterWalk ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleBindSight()

void AuraEffect::HandleBindSight ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleChannelDeathItem()

◆ HandleCharmConvert()

void AuraEffect::HandleCharmConvert ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleComprehendLanguage()

void AuraEffect::HandleComprehendLanguage ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleEffect() [1/2]

◆ HandleEffect() [2/2]

void AuraEffect::HandleEffect ( Unit * target,
uint8 mode,
bool apply )

◆ HandleEnableAltPower()

void AuraEffect::HandleEnableAltPower ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleFeignDeath()

◆ HandleForceMoveForward()

void AuraEffect::HandleForceMoveForward ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleForceReaction()

◆ HandleModAttackSpeed()

void AuraEffect::HandleModAttackSpeed ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModBaseResistance()

◆ HandleModCastingSpeed()

void AuraEffect::HandleModCastingSpeed ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModCharm()

void AuraEffect::HandleModCharm ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModCombatSpeedPct()

◆ HandleModConfuse()

void AuraEffect::HandleModConfuse ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModDamageDone()

◆ HandleModDamagePercentDone()

◆ HandleModFear()

void AuraEffect::HandleModFear ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModHealingDone()

◆ HandleModHitChance()

◆ HandleModInvisibility()

◆ HandleModInvisibilityDetect()

◆ HandleModMechanicImmunity()

◆ HandleModMeleeRangedSpeedPct()

void AuraEffect::HandleModMeleeRangedSpeedPct ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModMeleeSpeedPct()

void AuraEffect::HandleModMeleeSpeedPct ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

ToDo: Haste auras with the same handler CAN'T stack together

Definition at line 858 of file SpellAuraStats.cpp.

References Unit::ApplyAttackTimePercentMod(), AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK, AURA_EFFECT_HANDLE_STAT, BASE_ATTACK, GetAmount(), AuraApplication::GetTarget(), and OFF_ATTACK.

◆ HandleModOffhandDamagePercent()

void AuraEffect::HandleModOffhandDamagePercent ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModPercentStat()

◆ HandleModPossess()

void AuraEffect::HandleModPossess ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModPossessPet()

◆ HandleModPowerCost()

void AuraEffect::HandleModPowerCost ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModPowerCostPCT()

◆ HandleModPowerRegen()

◆ HandleModPowerRegenPCT()

void AuraEffect::HandleModPowerRegenPCT ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

Definition at line 530 of file SpellAuraStats.cpp.

References HandleModPowerRegen().

◆ HandleModRating()

◆ HandleModRatingFromStat()

◆ HandleModResistancePercent()

◆ HandleModSpellCritChance()

◆ HandleModSpellDamagePercentFromStat()

void AuraEffect::HandleModSpellDamagePercentFromStat ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModSpellHealingPercentFromStat()

void AuraEffect::HandleModSpellHealingPercentFromStat ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModSpellHitChance()

◆ HandleModStateImmunityMask()

◆ HandleModStealth()

◆ HandleModStealthDetect()

◆ HandleModStealthLevel()

◆ HandleModTargetResistance()

◆ HandleModTaunt()

void AuraEffect::HandleModTaunt ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModThreat()

void AuraEffect::HandleModThreat ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleModTotalPercentStat()

◆ HandleModUnattackable()

◆ HandleNoImmediateEffect()

void AuraEffect::HandleNoImmediateEffect ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleNULL()

void AuraEffect::HandleNULL ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleObsModPowerAuraTick()

◆ HandleOverrideAttackPowerBySpellPower()

◆ HandleOverrideSpellPowerByAttackPower()

◆ HandlePeriodicDamageAurasTick()

void AuraEffect::HandlePeriodicDamageAurasTick ( Unit * target,
Unit * caster ) const

Definition at line 518 of file SpellAuraPeriodic.cpp.

References Unit::ApplyResilience(), BASE_ATTACK, Unit::CalcAbsorbResist(), Unit::CalcArmorReducedDamage(), SpellEffectInfo::CalcValue(), Unit::CastSpell(), Unit::CountPctFromMaxHealth(), Unit::DealDamage(), Unit::DealDamageMods(), DOT, EFFECT_1, SpellInfo::Effects, GetAmount(), GetAuraType(), GetBase(), GetCasterGUID(), Skyfire::Spells::GetDrainSoulShardSpellId(), GetEffIndex(), Object::GetGUIDLow(), Unit::GetHealth(), GetId(), GetSpellInfo(), GetTotalTicks(), Object::GetTypeId(), GUID_HIPART(), GUID_LOPART(), GuidHigh2TypeId(), Unit::HasUnitState(), Unit::HealthBelowPct(), Unit::IsAlive(), Unit::IsDamageReducedByArmor(), Unit::IsFullHealth(), Skyfire::Spells::IsFullHealthRemovePeriodicDamageAura(), Player::isHonorOrXPTarget(), Unit::IsImmunedToDamage(), Skyfire::Spells::IsPctHealthRemovePeriodicDamageAura(), IsPeriodicTickCrit(), Skyfire::Spells::IsUnboundPlaguePeriodicDamageAura(), m_spellInfo, m_tickNumber, MELEE_HIT_NORMAL, CleanDamage::mitigated_damage, PROC_EX_CRITICAL_HIT, PROC_EX_INTERNAL_DOT, PROC_EX_NORMAL_HIT, PROC_FLAG_DONE_PERIODIC, PROC_FLAG_TAKEN_DAMAGE, PROC_FLAG_TAKEN_PERIODIC, Unit::ProcDamageAndSpell(), Unit::RemoveAurasDueToSpell(), Unit::SendPeriodicAuraLog(), SendTickImmune(), SF_LOG_INFO, SPELL_AURA_PERIODIC_DAMAGE, SPELL_EFFECT_PERSISTENT_AREA_AURA, SPELL_MISS_NONE, Unit::SpellCriticalDamageBonus(), Unit::SpellDamageBonusDone(), Unit::SpellDamageBonusTaken(), SPELLFAMILY_GENERIC, SPELLFAMILY_WARLOCK, Unit::SpellHitResult(), sScriptMgr, Object::ToPlayer(), TYPEID_PLAYER, and UNIT_STATE_ISOLATED.

Referenced by PeriodicTick().

◆ HandlePeriodicDummyAuraTick()

void AuraEffect::HandlePeriodicDummyAuraTick ( Unit * target,
Unit * caster ) const
Todo
this should use effect[1] of 51690

Definition at line 36 of file SpellAuraPeriodic.cpp.

References Unit::CalculateSpellDamage(), Unit::CastCustomSpell(), Unit::CastSpell(), CLASS_DEATH_KNIGHT, Skyfire::ComputeCellCoord(), Unit::CountPctFromMaxHealth(), Unit::DealDamage(), Skyfire::Spells::PeriodicBulletControllerRule::FirstSpellId, Unit::GetAppliedAuras(), GetBase(), GetCasterGUID(), Unit::getClass(), GetId(), Skyfire::Spells::GetKillingSpreePeriodicSpellId(), WorldObject::GetMap(), Unit::GetMaxHealth(), SpellInfo::GetMaxRange(), Skyfire::Spells::GetPeriodicBulletControllerRule(), Skyfire::Spells::GetPeriodicDeathAndDecayTriggerSpellId(), Skyfire::Spells::GetPeriodicExplosiveShotTriggerSpellId(), Skyfire::Spells::GetPeriodicFrenziedRegenerationSpellId(), Skyfire::Spells::GetPeriodicFuseArmorTriggerSpellId(), Skyfire::Spells::GetPeriodicOverloadCircuitShutdownSpellId(), Position::GetPositionX(), Position::GetPositionY(), Unit::GetPower(), Unit::getPowerType(), GetSpellInfo(), Object::GetTypeId(), Unit::GetVehicleBase(), Map::IsDungeon(), Map::IsHeroic(), m_amount, m_effIndex, m_spellInfo, Skyfire::Spells::PeriodicBulletControllerRule::MaxTargetRoll, NODAMAGE, POWER_RAGE, Unit::RemoveAura(), Player::RemoveRunesByAuraEffect(), Skyfire::Spells::PeriodicBulletControllerRule::SecondSpellId, Skyfire::Containers::SelectRandomContainerElement(), Unit::SetPower(), SPELL_SCHOOL_MASK_NORMAL, SPELLFAMILY_DEATHKNIGHT, SPELLFAMILY_DRUID, SPELLFAMILY_GENERIC, SPELLFAMILY_HUNTER, SPELLFAMILY_MAGE, SPELLFAMILY_ROGUE, SPELLVALUE_BASE_POINT0, SPELLVALUE_MAX_TARGETS, Object::ToPlayer(), TYPEID_PLAYER, and Cell::Visit().

Referenced by PeriodicTick().

◆ HandlePeriodicEnergizeAuraTick()

◆ HandlePeriodicHealAurasTick()

◆ HandlePeriodicHealthFunnelAuraTick()

◆ HandlePeriodicHealthLeechAuraTick()

◆ HandlePeriodicManaLeechAuraTick()

◆ HandlePeriodicPowerBurnAuraTick()

◆ HandlePeriodicTriggerSpellAuraTick()

void AuraEffect::HandlePeriodicTriggerSpellAuraTick ( Unit * target,
Unit * caster ) const
Todo
effect trigger spell may be independant on spell targets, and executed in spell finish phase

Definition at line 202 of file SpellAuraPeriodic.cpp.

References Creature::AI(), Player::AutoStoreLoot(), Unit::CastCustomSpell(), Unit::CastSpell(), Unit::CountPctFromMaxHealth(), CREATURE_TYPE_GAS_CLOUD, Creature::DespawnOrUnsummon(), SpellInfo::Effects, Unit::EnergizeBySpell(), WorldObject::FindNearestCreature(), Skyfire::Spells::GetAbsorbEyeOfGrillokCasterSpellId(), Unit::GetAura(), Unit::GetAuraEffect(), Aura::GetCaster(), Creature::GetCreatureTemplate(), GetEffIndex(), Object::GetGUID(), GetId(), Unit::GetMaxPower(), Position::GetOrientation(), Skyfire::Spells::GetPeriodicDoomTriggerSpellId(), Skyfire::Spells::GetPeriodicFrostBlastTriggerSpellId(), Skyfire::Spells::GetPeriodicRestorationEnergizeSpellId(), Skyfire::Spells::GetPeriodicTriggerOverrideSpellId(), Unit::GetPower(), Skyfire::Spells::GetSpellclothSummonCreatureEntry(), GetSpellInfo(), Skyfire::Spells::GetTotemicMasteryTriggerSpellId(), Object::GetTypeId(), Unit::HealBySpell(), SpellInfo::Id, Skyfire::Spells::IsReagentConsumingPeriodicTriggerAura(), Unit::Kill(), LootTemplates_Skinning, m_amount, m_spellInfo, Unit::m_SummonSlot, m_tickNumber, MAX_TOTEM_SLOT, Unit::ModifyPower(), SpellInfo::NeedsToBeTriggeredByCaster(), POWER_MANA, Unit::RemoveAllAuras(), Unit::RemoveAurasDueToSpell(), Unit::SendEnergizeSpellLog(), SF_LOG_DEBUG, CreatureTemplate::SkinLootId, UnitAI::sOnDummyEffect(), SPELL_AURA_PROC_TRIGGER_SPELL, SPELLFAMILY_GENERIC, SPELLFAMILY_SHAMAN, SpellInfo::SpellFamilyName, SPELLVALUE_BASE_POINT0, SPELLVALUE_MAX_TARGETS, SPELLVALUE_RADIUS_MOD, sScriptMgr, sSpellMgr, SUMMON_SLOT_TOTEM, WorldObject::SummonCreature(), TEMPSUMMON_DEAD_DESPAWN, Object::ToCreature(), Object::ToPlayer(), SpellEffectInfo::TriggerSpell, CreatureTemplate::type, TYPEID_PLAYER, and TYPEID_UNIT.

Referenced by PeriodicTick().

◆ HandlePeriodicTriggerSpellWithValueAuraTick()

void AuraEffect::HandlePeriodicTriggerSpellWithValueAuraTick ( Unit * target,
Unit * caster ) const

◆ HandlePhase()

◆ HandlePhaseGroup()

◆ HandlePlayScene()

◆ HandlePreventFleeing()

void AuraEffect::HandlePreventFleeing ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandlePreventResurrection()

◆ HandleProc()

◆ HandleProcTriggerDamageAuraProc()

◆ HandleProcTriggerSpellAuraProc()

void AuraEffect::HandleProcTriggerSpellAuraProc ( AuraApplication * aurApp,
ProcEventInfo & eventInfo )

◆ HandleProcTriggerSpellWithValueAuraProc()

void AuraEffect::HandleProcTriggerSpellWithValueAuraProc ( AuraApplication * aurApp,
ProcEventInfo & eventInfo )

◆ HandleRaidProcFromChargeAuraProc()

◆ HandleRaidProcFromChargeWithValueAuraProc()

◆ HandleShapeshiftBoosts()

◆ HandleShieldBlockValue()

◆ HandleSpiritOfRedemption()

◆ HandleUnused()

void AuraEffect::HandleUnused ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HandleWaterBreathing()

void AuraEffect::HandleWaterBreathing ( AuraApplication const * aurApp,
uint8 mode,
bool apply ) const

◆ HasSpellClassMask()

bool AuraEffect::HasSpellClassMask ( ) const
inline

Definition at line 70 of file SpellAuraEffects.h.

References m_effIndex, and m_spellInfo.

◆ IsAffectingSpell()

bool AuraEffect::IsAffectingSpell ( SpellInfo const * spell) const

◆ IsPeriodic()

bool AuraEffect::IsPeriodic ( ) const
inline

Definition at line 67 of file SpellAuraEffects.h.

References m_isPeriodic.

Referenced by Spell::prepare().

◆ IsPeriodicTickCrit()

bool AuraEffect::IsPeriodicTickCrit ( Unit * target,
Unit const * caster ) const
private

◆ PeriodicTick()

◆ RecalculateAmount() [1/2]

void AuraEffect::RecalculateAmount ( )
inline

Definition at line 52 of file SpellAuraEffects.h.

References CalculateAmount(), CanBeRecalculated(), ChangeAmount(), and GetCaster().

Referenced by ApplySpellMod().

◆ RecalculateAmount() [2/2]

void AuraEffect::RecalculateAmount ( Unit * caster)
inline

Definition at line 53 of file SpellAuraEffects.h.

References CalculateAmount(), CanBeRecalculated(), and ChangeAmount().

◆ ResetPeriodic()

void AuraEffect::ResetPeriodic ( bool resetPeriodicTimer = false)
inline

Definition at line 65 of file SpellAuraEffects.h.

References m_amplitude, m_periodicTimer, and m_tickNumber.

Referenced by Unit::HandleAuraProc().

◆ SendTickImmune()

◆ SetAmount()

◆ SetCanBeRecalculated()

void AuraEffect::SetCanBeRecalculated ( bool val)
inline

Definition at line 55 of file SpellAuraEffects.h.

References m_canBeRecalculated.

◆ SetPeriodic()

void AuraEffect::SetPeriodic ( bool isPeriodic)
inline

Definition at line 68 of file SpellAuraEffects.h.

References m_isPeriodic.

◆ SetPeriodicTimer()

void AuraEffect::SetPeriodicTimer ( int32 periodicTimer)
inline

◆ Update()

void AuraEffect::Update ( uint32 diff,
Unit * caster )

◆ UpdatePeriodic()

◆ Aura::_InitEffects

void Aura::_InitEffects ( uint32 effMask,
Unit * caster,
int32 * baseAmount )
friend

◆ Aura::~Aura

Aura::~Aura ( )
friend

◆ Unit::_TryStackingOrRefreshingExistingAura

Aura * Unit::_TryStackingOrRefreshingExistingAura ( SpellInfo const * newAura,
uint32 effMask,
Unit * caster,
int32 * baseAmount,
Item * castItem,
uint64 casterGUID )
friend

Member Data Documentation

◆ m_amount

◆ m_amplitude

int32 AuraEffect::m_amplitude
private

◆ m_base

Aura* const AuraEffect::m_base
private

Definition at line 82 of file SpellAuraEffects.h.

Referenced by AuraEffect(), and GetBase().

◆ m_baseAmount

int32 const AuraEffect::m_baseAmount
private

Definition at line 84 of file SpellAuraEffects.h.

Referenced by AuraEffect(), CalculateAmount(), and GetBaseAmount().

◆ m_canBeRecalculated

bool AuraEffect::m_canBeRecalculated
private

◆ m_effIndex

◆ m_isPeriodic

bool AuraEffect::m_isPeriodic
private

◆ m_periodicTimer

int32 AuraEffect::m_periodicTimer
private

◆ m_spellInfo

◆ m_spellmod

SpellModifier* AuraEffect::m_spellmod
private

◆ m_tickNumber


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