AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "SpellAuras.h"
Public Types | |
typedef std::map< ObjectGuid, AuraApplication * > | ApplicationMap |
Static Public Member Functions | |
static uint8 | BuildEffectMaskForOwner (SpellInfo const *spellProto, uint8 avalibleEffectMask, WorldObject *owner) |
static Aura * | TryRefreshStackOrCreate (SpellInfo const *spellproto, uint8 tryEffMask, WorldObject *owner, Unit *caster, int32 *baseAmount=nullptr, Item *castItem=nullptr, ObjectGuid casterGUID=ObjectGuid::Empty, bool *refresh=nullptr, bool periodicReset=false) |
static Aura * | TryCreate (SpellInfo const *spellproto, uint8 effMask, WorldObject *owner, Unit *caster, int32 *baseAmount=nullptr, Item *castItem=nullptr, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemGUID=ObjectGuid::Empty) |
static Aura * | Create (SpellInfo const *spellproto, uint8 effMask, WorldObject *owner, Unit *caster, int32 *baseAmount, Item *castItem, ObjectGuid casterGUID, ObjectGuid itemGUID=ObjectGuid::Empty) |
Public Attributes | |
std::list< AuraScript * > | m_loadedScripts |
Protected Attributes | |
SpellInfo const *const | m_spellInfo |
ObjectGuid const | m_casterGuid |
ObjectGuid const | m_castItemGuid |
uint32 const | m_castItemEntry |
time_t const | m_applyTime |
WorldObject *const | m_owner |
int32 | m_maxDuration |
int32 | m_duration |
int32 | m_timeCla |
int32 | m_updateTargetMapInterval |
uint8 const | m_casterLevel |
uint8 | m_procCharges |
uint8 | m_stackAmount |
AuraEffect * | m_effects [3] |
ApplicationMap | m_applications |
bool | m_isRemoved: 1 |
bool | m_isSingleTarget: 1 |
bool | m_isUsingCharges: 1 |
Private Member Functions | |
void | _DeleteRemovedApplications () |
Private Attributes | |
Unit::AuraApplicationList | m_removedApplications |
SpellInfo const * | m_triggeredByAuraSpellInfo |
Friends | |
Aura * | Unit::_TryStackingOrRefreshingExistingAura (SpellInfo const *newAura, uint8 effMask, Unit *caster, int32 *baseAmount, Item *castItem, ObjectGuid casterGUID, bool noPeriodicReset) |
typedef std::map<ObjectGuid, AuraApplication*> Aura::ApplicationMap |
|
explicit |
References CalcMaxCharges(), CalcMaxDuration(), SpellInfo::HasAttribute(), IN_MILLISECONDS, m_duration, m_effects, m_isUsingCharges, m_maxDuration, m_procCharges, m_spellInfo, m_timeCla, SpellInfo::ManaPerSecond, SpellInfo::ManaPerSecondPerLevel, and SPELL_ATTR2_NO_TARGET_PER_SECOND_COST.
|
virtual |
References _DeleteRemovedApplications(), ASSERT, m_applications, m_effects, m_loadedScripts, and MAX_SPELL_EFFECTS.
void Aura::_ApplyEffectForTargets | ( | uint8 | effIndex | ) |
References ASSERT, GetApplicationOfTarget(), GetOwner(), and m_applications.
Referenced by Spell::EffectApplyAreaAura(), Spell::EffectApplyAura(), and Spell::EffectPersistentAA().
|
virtual |
Reimplemented in UnitAura.
References Player::AddSpellAndCategoryCooldowns(), Creature::AddSpellCooldown(), ASSERT, Object::GetGUID(), SpellInfo::Id, infinityCooldownDelay, IsAppliedOnTarget(), SpellInfo::IsCooldownStartedOnEvent(), Object::IsPlayer(), m_applications, m_castItemGuid, m_spellInfo, Object::ToCreature(), and Object::ToPlayer().
Referenced by UnitAura::_ApplyForTarget(), and Unit::_CreateAuraApplication().
|
private |
References m_removedApplications.
Referenced by UpdateOwner(), and ~Aura().
References m_effects, and MAX_SPELL_EFFECTS.
Referenced by DynObjAura::DynObjAura(), and UnitAura::UnitAura().
|
inline |
References GetCaster(), and UpdateTargetMap().
Referenced by Spell::DoSpellHitOnUnit(), and Spell::EffectPersistentAA().
void Aura::_Remove | ( | AuraRemoveMode | removeMode | ) |
References Unit::_UnapplyAura(), ASSERT, AuraApplication::GetTarget(), m_applications, and m_isRemoved.
Referenced by DynObjAura::Remove(), DynamicObject::RemoveAura(), and Unit::RemoveOwnedAura().
|
virtual |
Reimplemented in UnitAura.
References ABORT, Creature::AddSpellCooldown(), ASSERT, AuraApplication::GetBase(), Unit::GetCharmerOrOwner(), Object::GetGUID(), AuraApplication::GetRemoveMode(), GetSpellInfo(), SpellInfo::Id, SpellInfo::IsCooldownStartedOnEvent(), Object::IsPlayer(), LOG_ERROR, m_applications, m_castItemGuid, m_removedApplications, m_spellInfo, Player::SendCooldownEvent(), SMSG_COOLDOWN_EVENT, Object::ToCreature(), Object::ToPlayer(), and ObjectGuid::ToString().
Referenced by Unit::_UnapplyAura(), and UnitAura::_UnapplyForTarget().
void Aura::AddProcCooldown | ( | Milliseconds | msec | ) |
Referenced by PrepareProcToTrigger().
|
inline |
|
static |
References ASSERT_NODEBUGINFO, SpellInfo::Effects, Object::GetTypeId(), MAX_SPELL_EFFECTS, SPELL_EFFECT_PERSISTENT_AREA_AURA, TYPEID_DYNAMICOBJECT, TYPEID_PLAYER, and TYPEID_UNIT.
Referenced by TryCreate(), and TryRefreshStackOrCreate().
References GetCaster(), GetId(), Unit::GetSpellModOwner(), Unit::GetTotalAuraModifier(), SPELL_AURA_MOD_DISPEL_RESIST, and SPELLMOD_RESIST_DISPEL_CHANCE.
Referenced by Spell::EffectDispelMechanic().
|
inline |
References CalcMaxCharges(), and GetCaster().
Referenced by Aura(), CalcMaxCharges(), ModCharges(), and ModStackAmount().
References GetId(), Unit::GetSpellModOwner(), m_spellInfo, SpellInfo::ProcCharges, SPELLMOD_CHARGES, and sSpellMgr.
Referenced by AuraScript::CalcMaxCharges().
|
inline |
References CalcMaxDuration(), and GetCaster().
Referenced by Aura(), CalcMaxDuration(), AuraScript::CalcMaxDuration(), RefreshTimers(), and RefreshTimersWithMods().
References Player::ApplySpellMod(), Unit::CalcSpellDuration(), SpellInfo::DurationEntry, SpellInfo::GetDuration(), GetId(), Unit::GetSpellModOwner(), IsPassive(), m_spellInfo, SPELLMOD_DURATION, and sScriptMgr.
float Aura::CalcProcChance | ( | SpellProcEntry const & | procEntry, |
ProcEventInfo & | eventInfo | ||
) | const |
References SpellProcEntry::Chance, DamageInfo::GetAttackType(), GetCaster(), ProcEventInfo::GetDamageInfo(), GetId(), GetSpellInfo(), Unit::GetSpellModOwner(), SpellProcEntry::ProcsPerMinute, and SPELLMOD_CHANCE_OF_SUCCESS.
Referenced by IsProcTriggeredOnEvent().
bool Aura::CallScriptAfterCheckProcHandlers | ( | AuraApplication const * | aurApp, |
ProcEventInfo & | eventInfo, | ||
bool | isTriggeredAtSpellProcEvent | ||
) |
References AURA_SCRIPT_HOOK_AFTER_CHECK_PROC, and m_loadedScripts.
Referenced by Unit::ProcDamageAndSpellFor().
void Aura::CallScriptAfterDispel | ( | DispelInfo * | dispelInfo | ) |
References AURA_SCRIPT_HOOK_AFTER_DISPEL, and m_loadedScripts.
Referenced by Unit::RemoveAurasDueToSpellByDispel().
void Aura::CallScriptAfterEffectApplyHandlers | ( | AuraEffect const * | aurEff, |
AuraApplication const * | aurApp, | ||
AuraEffectHandleModes | mode | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_AFTER_APPLY, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::HandleEffect().
void Aura::CallScriptAfterEffectProcHandlers | ( | AuraEffect const * | aurEff, |
AuraApplication const * | aurApp, | ||
ProcEventInfo & | eventInfo | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_AFTER_PROC, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::HandleProc().
void Aura::CallScriptAfterEffectRemoveHandlers | ( | AuraEffect const * | aurEff, |
AuraApplication const * | aurApp, | ||
AuraEffectHandleModes | mode | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_AFTER_REMOVE, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::HandleEffect().
void Aura::CallScriptAfterProcHandlers | ( | AuraApplication const * | aurApp, |
ProcEventInfo & | eventInfo | ||
) |
References AURA_SCRIPT_HOOK_AFTER_PROC, and m_loadedScripts.
Referenced by TriggerProcOnEvent().
bool Aura::CallScriptCheckAreaTargetHandlers | ( | Unit * | target | ) |
References AURA_SCRIPT_HOOK_CHECK_AREA_TARGET, and m_loadedScripts.
Referenced by CheckAreaTarget().
bool Aura::CallScriptCheckProcHandlers | ( | AuraApplication const * | aurApp, |
ProcEventInfo & | eventInfo | ||
) |
References AURA_SCRIPT_HOOK_CHECK_PROC, and m_loadedScripts.
Referenced by IsProcTriggeredOnEvent(), and Unit::ProcDamageAndSpellFor().
void Aura::CallScriptDispel | ( | DispelInfo * | dispelInfo | ) |
References AURA_SCRIPT_HOOK_DISPEL, and m_loadedScripts.
Referenced by Unit::RemoveAurasDueToSpellByDispel().
void Aura::CallScriptEffectAbsorbHandlers | ( | AuraEffect * | aurEff, |
AuraApplication const * | aurApp, | ||
DamageInfo & | dmgInfo, | ||
uint32 & | absorbAmount, | ||
bool & | defaultPrevented | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_ABSORB, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by Unit::CalcAbsorbResist().
void Aura::CallScriptEffectAfterAbsorbHandlers | ( | AuraEffect * | aurEff, |
AuraApplication const * | aurApp, | ||
DamageInfo & | dmgInfo, | ||
uint32 & | absorbAmount | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_AFTER_ABSORB, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by Unit::CalcAbsorbResist().
void Aura::CallScriptEffectAfterManaShieldHandlers | ( | AuraEffect * | aurEff, |
AuraApplication const * | aurApp, | ||
DamageInfo & | dmgInfo, | ||
uint32 & | absorbAmount | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_AFTER_MANASHIELD, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by Unit::CalcAbsorbResist().
bool Aura::CallScriptEffectApplyHandlers | ( | AuraEffect const * | aurEff, |
AuraApplication const * | aurApp, | ||
AuraEffectHandleModes | mode | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_APPLY, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::HandleEffect().
void Aura::CallScriptEffectCalcAmountHandlers | ( | AuraEffect const * | aurEff, |
int32 & | amount, | ||
bool & | canBeRecalculated | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_CALC_AMOUNT, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::CalculateAmount().
void Aura::CallScriptEffectCalcPeriodicHandlers | ( | AuraEffect const * | aurEff, |
bool & | isPeriodic, | ||
int32 & | amplitude | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_CALC_PERIODIC, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::CalculatePeriodic().
void Aura::CallScriptEffectCalcSpellModHandlers | ( | AuraEffect const * | aurEff, |
SpellModifier *& | spellMod | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_CALC_SPELLMOD, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::CalculateSpellMod().
void Aura::CallScriptEffectManaShieldHandlers | ( | AuraEffect * | aurEff, |
AuraApplication const * | aurApp, | ||
DamageInfo & | dmgInfo, | ||
uint32 & | absorbAmount, | ||
bool & | defaultPrevented | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_MANASHIELD, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by Unit::CalcAbsorbResist().
bool Aura::CallScriptEffectPeriodicHandlers | ( | AuraEffect const * | aurEff, |
AuraApplication const * | aurApp | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_PERIODIC, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::PeriodicTick().
bool Aura::CallScriptEffectProcHandlers | ( | AuraEffect const * | aurEff, |
AuraApplication const * | aurApp, | ||
ProcEventInfo & | eventInfo | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_PROC, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::HandleProc().
bool Aura::CallScriptEffectRemoveHandlers | ( | AuraEffect const * | aurEff, |
AuraApplication const * | aurApp, | ||
AuraEffectHandleModes | mode | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_REMOVE, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::HandleEffect().
void Aura::CallScriptEffectSplitHandlers | ( | AuraEffect * | aurEff, |
AuraApplication const * | aurApp, | ||
DamageInfo & | dmgInfo, | ||
uint32 & | splitAmount | ||
) |
References AURA_SCRIPT_HOOK_EFFECT_SPLIT, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
void Aura::CallScriptEffectUpdatePeriodicHandlers | ( | AuraEffect * | aurEff | ) |
References AURA_SCRIPT_HOOK_EFFECT_UPDATE_PERIODIC, AuraEffect::GetEffIndex(), m_loadedScripts, and m_spellInfo.
Referenced by AuraEffect::UpdatePeriodic().
bool Aura::CallScriptPrepareProcHandlers | ( | AuraApplication const * | aurApp, |
ProcEventInfo & | eventInfo | ||
) |
References AURA_SCRIPT_HOOK_PREPARE_PROC, and m_loadedScripts.
Referenced by PrepareProcToTrigger().
bool Aura::CallScriptProcHandlers | ( | AuraApplication const * | aurApp, |
ProcEventInfo & | eventInfo | ||
) |
References AURA_SCRIPT_HOOK_PROC, and m_loadedScripts.
Referenced by TriggerProcOnEvent().
bool Aura::CanBeAppliedOn | ( | Unit * | target | ) |
References CheckAreaTarget(), GetCasterGUID(), GetOwner(), GetSpellInfo(), Unit::IsDuringRemoveFromWorld(), Object::IsInWorld(), and IsSingleTarget().
Referenced by UpdateTargetMap().
bool Aura::CanBeSaved | ( | ) | const |
References GetCasterGUID(), GetCharges(), GetOwner(), GetSpellInfo(), SpellInfo::HasAttribute(), IsPassive(), IsSingleTarget(), IsUsingCharges(), SPELL_ATTR0_CU_AURA_CANNOT_BE_SAVED, SPELL_ATTR0_CU_FORCE_AURA_SAVING, SPELL_ATTR0_DO_NOT_DISPLAY, and SpellInfo::Stances.
bool Aura::CanBeSentToClient | ( | ) | const |
References GetSpellInfo(), SpellInfo::HasAreaAuraEffect(), HasEffectType(), IsPassive(), and SPELL_AURA_ABILITY_IGNORE_AURASTATE.
Referenced by Spell::EffectSummonPet().
bool Aura::CanStackWith | ( | Aura const * | checkAura, |
bool | remove | ||
) | const |
References DYNOBJ_AURA_TYPE, SpellInfo::Effects, Vehicle::GetAvailableSeatCount(), GetCasterGUID(), GetCastItemGUID(), GetEffect(), GetId(), GetOwner(), Vehicle::GetPassenger(), GetSpellInfo(), GetType(), Unit::GetVehicleKit(), SpellInfo::HasAttribute(), SpellInfo::Id, IsArea(), SpellInfo::IsAuraExclusiveBySpecificPerCasterWith(), SpellInfo::IsAuraExclusiveBySpecificWith(), IsAuraStronger(), SpellInfo::IsChanneled(), SpellInfo::IsDifferentRankOf(), ObjectGuid::IsEmpty(), SpellInfo::IsMultiSlotAura(), IsPassive(), SpellInfo::IsRankOf(), m_castItemGuid, m_spellInfo, MAX_SPELL_EFFECTS, SPELL_ATTR0_CU_ENCHANT_PROC, SPELL_ATTR3_DOT_STACKING_RULE, SPELL_AURA_CONTROL_VEHICLE, SPELL_AURA_OBS_MOD_HEALTH, SPELL_AURA_OBS_MOD_POWER, SPELL_AURA_PERIODIC_DAMAGE, SPELL_AURA_PERIODIC_DUMMY, SPELL_AURA_PERIODIC_ENERGIZE, SPELL_AURA_PERIODIC_HEAL, SPELL_AURA_PERIODIC_LEECH, SPELL_AURA_PERIODIC_MANA_LEECH, SPELL_AURA_PERIODIC_TRIGGER_SPELL, SPELL_AURA_PERIODIC_TRIGGER_SPELL_WITH_VALUE, SPELL_AURA_POWER_BURN, SPELL_GROUP_SPECIAL_FLAG_PRIORITY1, SPELL_GROUP_SPECIAL_FLAG_PRIORITY4, SPELL_GROUP_STACK_FLAG_EXCLUSIVE, SPELL_GROUP_STACK_FLAG_FORCED_STRONGEST, SPELL_GROUP_STACK_FLAG_FORCED_WEAKEST, SPELL_GROUP_STACK_FLAG_NEVER_STACK, SPELL_GROUP_STACK_FLAG_NOT_SAME_CASTER, SPELLFAMILY_HUNTER, SpellInfo::SpellFamilyFlags, SpellInfo::SpellFamilyName, sSpellMgr, and Object::ToUnit().
Referenced by Unit::_RemoveNoStackAurasDueToAura(), and UpdateTargetMap().
bool Aura::CheckAreaTarget | ( | Unit * | target | ) |
References CallScriptCheckAreaTargetHandlers().
Referenced by CanBeAppliedOn().
|
static |
References ABORT, ASSERT_NODEBUGINFO, Object::GetGUID(), Object::GetTypeId(), ObjectAccessor::GetUnit(), Object::IsInWorld(), IsRemoved(), SpellInfo::IsSingleTarget(), Object::IsUnit(), MAX_EFFECT_MASK, Object::ToUnit(), TYPEID_DYNAMICOBJECT, TYPEID_PLAYER, and TYPEID_UNIT.
Referenced by TryCreate(), and TryRefreshStackOrCreate().
|
inline |
References ModCharges().
Referenced by AuraScript::DropCharge(), and Player::RemoveSpellMods().
|
pure virtual |
Implemented in UnitAura, and DynObjAura.
Referenced by UpdateTargetMap().
void Aura::GetApplicationList | ( | std::list< AuraApplication * > & | applicationList | ) | const |
References m_applications.
Referenced by SetStackAmount().
|
inline |
References m_applications.
Referenced by AuraEffect::GetApplicationList(), AuraEffect::GetTargetList(), and Unit::RemoveAreaAurasDueToLeaveWorld().
|
inline |
References m_applications.
|
inline |
References m_applications.
Referenced by Unit::_ApplyAuraEffect(), _ApplyEffectForTargets(), AuraApplication::_HandleEffect(), Unit::_UnapplyAura(), Unit::CalcAbsorbResist(), Spell::DoSpellHitOnUnit(), Spell::EffectDispelMechanic(), Spell::EffectStealBeneficialBuff(), GetCaster(), AuraEffect::HandleEffect(), SpellInfo::IsStrongerAuraActive(), Unit::RemoveAura(), Unit::RemoveAurasByType(), Unit::RestoreDisplayId(), and UpdateTargetMap().
|
inline |
References m_applyTime.
Referenced by Player::DuelComplete(), AuraScript::GetApplyTime(), and Unit::GetDiseasesByCaster().
Unit * Aura::GetCaster | ( | ) | const |
References GetApplicationOfTarget(), GetCasterGUID(), GetOwner(), ObjectAccessor::GetUnit(), and GetUnitOwner().
Referenced by Unit::_ApplyAura(), Unit::_CreateAuraApplication(), _RegisterForTargets(), Unit::_UnapplyAura(), ApplyForTargets(), CalcDispelChance(), CalcMaxCharges(), CalcMaxDuration(), CalcProcChance(), DynObjAura::FillTargetMap(), AuraEffect::GetCaster(), AuraScript::GetCaster(), AuraEffect::HandleAuraDummy(), Unit::HandleAuraProc(), Unit::HandleDummyAuraProc(), Unit::HandleProcTriggerSpell(), RecalculateAmountOfEffects(), RefreshDuration(), RefreshTimers(), RefreshTimersWithMods(), Unit::RemoveAurasDueToSpellByDispel(), Unit::RemoveAurasDueToSpellBySteal(), SetDuration(), SetLoadedState(), SetStackAmount(), UnregisterSingleTarget(), and UpdateOwner().
|
inline |
References m_casterGuid.
Referenced by Unit::_AddAura(), AuraApplication::_InitFlags(), Unit::_UnapplyAura(), AuraEffect::ApplySpellMod(), AuraApplication::BuildUpdatePacket(), CanBeAppliedOn(), CanBeSaved(), CanStackWith(), Unit::DelayOwnedAuras(), Player::DuelComplete(), Spell::EffectDispelMechanic(), Unit::GetAuraApplication(), GetCaster(), AuraEffect::GetCasterGUID(), AuraScript::GetCasterGUID(), GetDebugInfo(), HandleAuraSpecificMods(), ArenaSpectator::HandleResetCommand(), spell_hun_chimera_shot::HandleScriptEffect(), Unit::HasNegativeAuraWithAttribute(), IsRemovedOnShapeLost(), list_commandscript::ListAurasCommand(), Unit::RemoveAura(), Unit::RemoveAuraFromStack(), Unit::RemoveAurasByType(), Unit::RemoveAurasDueToSpell(), Unit::RemoveAurasDueToSpellByDispel(), Unit::RemoveAurasDueToSpellBySteal(), Unit::RemoveAurasWithFamily(), Player::RemoveItemDependentAurasAndCasts(), Unit::RemoveNotOwnSingleTargetAuras(), and ArenaSpectator::ShouldSendAura().
|
inline |
|
inline |
References m_castItemEntry.
|
inline |
References m_castItemGuid.
Referenced by Player::ActivateSpec(), CanStackWith(), Unit::GetAuraApplication(), Unit::HandleDummyAuraProc(), Unit::HandleOverrideClassScriptAuraProc(), AuraEffect::HandlePeriodicHealAurasTick(), Unit::HandleProcTriggerSpell(), and SpellInfo::ValidateAttribute6SpellDamageMods().
|
inline |
References m_procCharges.
Referenced by AuraApplication::BuildUpdatePacket(), AuraEffect::CalculateSpellMod(), CanBeSaved(), Spell::EffectStealBeneficialBuff(), AuraScript::GetCharges(), Unit::GetDispellableAuraList(), Unit::HandleAuraProc(), Unit::HandleAuraRaidProcFromCharge(), Unit::HandleAuraRaidProcFromChargeWithValue(), Unit::HandleDummyAuraProc(), AuraEffect::HandleRaidProcFromChargeAuraProc(), AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(), ArenaSpectator::HandleResetCommand(), IsProcTriggeredOnEvent(), list_commandscript::ListAurasCommand(), ModStackAmount(), Unit::RemoveAurasDueToSpellBySteal(), Player::RestoreSpellMods(), and TriggerProcOnEvent().
|
virtual |
References GetCasterGUID(), WorldObject::GetDebugInfo(), GetId(), GetOwner(), and ObjectGuid::ToString().
|
inline |
References m_duration.
Referenced by Battleground::_ProcessJoin(), Pet::_SaveAuras(), Player::_SaveAuras(), AuraApplication::BuildUpdatePacket(), AuraEffect::CalculatePeriodic(), Unit::DelayOwnedAuras(), Spell::DoTriggersOnSpellHit(), Spell::EffectHeal(), Unit::GetDiseasesByCaster(), DynamicObject::GetDuration(), AuraScript::GetDuration(), deserter_commandscript::HandleDeserterAdd(), Unit::HandleDummyAuraProc(), ArenaSpectator::HandleResetCommand(), spell_dru_glyph_of_starfire::HandleScriptEffect(), IsAuraStronger(), IsExpired(), list_commandscript::ListAurasCommand(), npc_air_force_bots::npc_air_force_botsAI::MoveInLineOfSight(), Player::ProcessDelayedOperations(), Unit::RemoveAurasDueToSpellByDispel(), Unit::RemoveAurasDueToSpellBySteal(), boss_anomalus::boss_anomalusAI::SetData(), and npc_tournament_training_dummy::npc_tournament_training_dummyAI::UpdateAI().
|
inline |
References ASSERT, DYNOBJ_AURA_TYPE, GetType(), and m_owner.
Referenced by DynObjAura::DynObjAura(), Spell::EffectPersistentAA(), DynObjAura::FillTargetMap(), and AuraScript::GetDynobjOwner().
|
inline |
References ASSERT, m_effects, and MAX_SPELL_EFFECTS.
Referenced by AuraApplication::_HandleEffect(), Pet::_SaveAuras(), Player::_SaveAuras(), AuraEffect::ApplySpellMod(), CanStackWith(), Spell::CheckCasterAuras(), AuraScript::GetEffect(), spell_muru_summon_blood_elves_periodic_aura::HandleApply(), spell_gen_baby_murloc_passive::HandleApply(), Unit::HandleAuraProc(), HandleAuraSpecificMods(), Unit::HandleDummyAuraProc(), spell_optic_link_aura::HandleEffectPeriodic(), spell_warl_improved_demonic_tactics::HandlePeriodic(), spell_warl_seed_of_corruption_aura::HandleProc(), spell_warl_seed_of_corruption_generic_aura::HandleProc(), spell_hun_chimera_shot::HandleScriptEffect(), HasEffect(), IsAuraStronger(), ModStackAmount(), spell_hadronox_summon_periodic_aura::OnApply(), spell_kalecgos_curse_of_boundless_agony_aura::OnPeriodic(), Unit::ProcDamageAndSpellFor(), Unit::RemoveAurasDueToSpellBySteal(), ArenaSpectator::ShouldSendAura(), TriggerProcOnEvent(), and spell_black_temple_shadow_inferno_aura::Update().
|
inline |
References m_effects, and MAX_SPELL_EFFECTS.
Referenced by Unit::GetAuraApplication(), ArenaSpectator::HandleResetCommand(), Unit::RemoveAura(), Unit::RemoveAurasDueToSpell(), and Unit::RemoveAurasDueToSpellByDispel().
uint32 Aura::GetId | ( | ) | const |
References GetSpellInfo(), and SpellInfo::Id.
Referenced by Unit::_AddAura(), Unit::_UnapplyAura(), Player::ActivateSpec(), WorldSession::BuildPartyMemberStatsChangedPacket(), AuraApplication::BuildUpdatePacket(), CalcDispelChance(), CalcMaxCharges(), CalcMaxDuration(), CalcProcChance(), CanStackWith(), Unit::DelayOwnedAuras(), Spell::EffectDispelMechanic(), GetDebugInfo(), AuraScript::GetId(), HandleAuraSpecificMods(), spell_item_powerful_anti_venom::HandleDummy(), spell_item_strong_anti_venom::HandleDummy(), spell_item_anti_venom::HandleDummy(), Unit::IsPetAura(), IsProcTriggeredOnEvent(), Unit::IsTriggeredAtSpellProcEvent(), list_commandscript::ListAurasCommand(), boss_high_nethermancer_zerevor::OnAuraRemove(), ProcTriggeredData::operator==(), PrepareProcToTrigger(), Unit::RemoveAura(), Unit::RemoveAurasDueToSpellByDispel(), Unit::RemoveAurasDueToSpellBySteal(), Unit::RemoveAurasWithInterruptFlags(), Unit::RemoveAurasWithMechanic(), Unit::RemoveOwnedAura(), SetDuration(), UnregisterSingleTarget(), UpdateOwner(), and UpdateTargetMap().
|
inline |
References m_maxDuration.
Referenced by AuraApplication::BuildUpdatePacket(), Spell::DoSpellHitOnUnit(), Unit::GetDiseasesByCaster(), AuraScript::GetMaxDuration(), AuraEffect::GetTotalTicks(), HandleAuraSpecificMods(), Unit::HandleDummyAuraProc(), ArenaSpectator::HandleResetCommand(), spell_dru_glyph_of_starfire::HandleScriptEffect(), IsPermanent(), list_commandscript::ListAurasCommand(), RefreshDuration(), and Unit::RemoveAurasDueToSpellBySteal().
|
inline |
References m_owner.
Referenced by _ApplyEffectForTargets(), Unit::_CreateAuraApplication(), Unit::_UnapplyAura(), CanBeAppliedOn(), CanBeSaved(), CanStackWith(), Spell::EffectApplyAreaAura(), Spell::EffectApplyAura(), GetCaster(), GetDebugInfo(), AuraScript::GetOwner(), Unit::RemoveAura(), Unit::RemoveOwnedAura(), UnregisterSingleTarget(), and UpdateTargetMap().
AuraScript * Aura::GetScriptByName | ( | std::string const & | scriptName | ) | const |
References m_loadedScripts.
|
inline |
References m_spellInfo.
Referenced by Unit::_AddAura(), Unit::_ApplyAura(), Unit::_CreateAuraApplication(), AuraApplication::_InitFlags(), Pet::_SaveAuras(), Unit::_UnapplyAura(), _UnapplyForTarget(), Player::ApplySpellMod(), AuraEffect::ApplySpellMod(), AuraApplication::BuildUpdatePacket(), CalcProcChance(), CanBeAppliedOn(), CanBeSaved(), CanBeSentToClient(), CanStackWith(), Player::CheckAreaExploreAndOutdoor(), Spell::CheckCasterAuras(), Spell::DoSpellHitOnUnit(), Spell::EffectDispelMechanic(), Spell::EffectStealBeneficialBuff(), UnitAura::FillTargetMap(), DynObjAura::FillTargetMap(), Unit::GetDispellableAuraList(), GetId(), AuraScript::GetSpellInfo(), AuraEffect::HandleAuraDummy(), Unit::HandleAuraProc(), HandleAuraSpecificMods(), spell_item_powerful_anti_venom::HandleDummy(), spell_item_strong_anti_venom::HandleDummy(), spell_item_anti_venom::HandleDummy(), ArenaSpectator::HandleResetCommand(), spell_gen_clear_debuffs::HandleScript(), spell_dru_glyph_of_starfire::HandleScriptEffect(), spell_hun_chimera_shot::HandleScriptEffect(), Unit::HasNegativeAuraWithAttribute(), IsArea(), IsDeathPersistent(), IsPassive(), IsProcTriggeredOnEvent(), IsSingleTargetWith(), Unit::IsTriggeredAtSpellProcEvent(), list_commandscript::ListAurasCommand(), Player::LoadFromDB(), Unit::RemoveAllAurasExceptType(), Unit::RemoveAllAurasOnDeath(), Unit::RemoveAllAurasRequiringDeadTarget(), Unit::RemoveArenaAuras(), Unit::RemoveAurasByShapeShift(), Unit::RemoveAurasDueToSpellByDispel(), Unit::RemoveAurasDueToSpellBySteal(), Unit::RemoveAurasWithFamily(), Unit::RemoveAurasWithInterruptFlags(), Unit::RemoveAurasWithMechanic(), Unit::RemoveEvadeAuras(), Player::RemoveItemDependentAurasAndCasts(), Unit::RemoveMovementImpairingAuras(), Player::RemoveSpellMods(), Player::RestoreSpellMods(), ArenaSpectator::ShouldSendAura(), Unit::SpellPctDamageModsDone(), and UpdateTargetMap().
|
inline |
References m_stackAmount.
Referenced by AuraApplication::BuildUpdatePacket(), AuraEffect::CalculateAmount(), Spell::EffectSchoolDMG(), Spell::EffectStealBeneficialBuff(), Unit::GetDispellableAuraList(), AuraScript::GetStackAmount(), AuraEffect::HandleAuraLinked(), Unit::HandleAuraProc(), HandleAuraSpecificMods(), Unit::HandleDummyAuraProc(), spell_brewfest_main_ram_buff::HandleEffectPeriodic(), spell_sindragosa_frost_breath::HandleInfusion(), AuraEffect::HandlePeriodicHealAurasTick(), Unit::HandleProcTriggerSpell(), ArenaSpectator::HandleResetCommand(), spell_festergut_gastric_bloat::HandleScript(), spell_rotface_large_ooze_combine::HandleScript(), spell_gen_bonked::HandleScript(), spell_hun_chimera_shot::HandleScriptEffect(), spell_pal_seal_of_vengeance::HandleScriptEffect(), list_commandscript::ListAurasCommand(), ModStackAmount(), spell_gen_defend::RefreshVisualShields(), Unit::SpellPctDamageModsDone(), and npc_tournament_training_dummy::npc_tournament_training_dummyAI::UpdateAI().
SpellInfo const * Aura::GetTriggeredByAuraSpellInfo | ( | ) | const |
References m_triggeredByAuraSpellInfo.
Referenced by Player::ActivateSpec(), Spell::EffectApplyGlyph(), HandleAuraSpecificMods(), and WorldSession::HandleRemoveGlyph().
AuraObjectType Aura::GetType | ( | ) | const |
References DYNOBJ_AURA_TYPE, Object::IsDynamicObject(), LOG_ERROR, m_owner, and UNIT_AURA_TYPE.
Referenced by CanStackWith(), GetDynobjOwner(), AuraScript::GetType(), GetUnitOwner(), AuraEffect::HandlePeriodicHealAurasTick(), Unit::RemoveAuraFromStack(), and UpdateTargetMap().
|
inline |
References ASSERT, GetType(), m_owner, and UNIT_AURA_TYPE.
Referenced by UnitAura::FillTargetMap(), GetCaster(), AuraScript::GetUnitOwner(), HandleAuraSpecificMods(), AuraEffect::HandlePeriodicTriggerSpellAuraTick(), Unit::ProcDamageAndSpellFor(), UnitAura::Remove(), Unit::RemoveAurasDueToSpellByDispel(), Unit::RemoveNotOwnSingleTargetAuras(), and UnitAura::UnitAura().
void Aura::HandleAllEffects | ( | AuraApplication * | aurApp, |
uint8 | mode, | ||
bool | apply | ||
) |
References ASSERT, AuraEffect::HandleEffect(), IsRemoved(), m_effects, and MAX_SPELL_EFFECTS.
Referenced by Player::CheckAreaExploreAndOutdoor(), and Player::LoadFromDB().
void Aura::HandleAuraSpecificMods | ( | AuraApplication const * | aurApp, |
Unit * | caster, | ||
bool | apply, | ||
bool | onReapply | ||
) |
References Player::ActivateTaxiPathTo(), Unit::AddAura(), Player::AddSpellCooldown(), Unit::ApplySpellImmune(), AURA_REMOVE_BY_DEATH, AURA_REMOVE_BY_ENEMY_SPELL, AURA_REMOVE_BY_EXPIRE, Unit::CalcSpellDuration(), CalculatePct(), Unit::CastCustomSpell(), Unit::CastSpell(), CLASS_CONTEXT_ABILITY, CLASS_DEATH_KNIGHT, Unit::CombatStop(), DOT, EFFECT_0, ObjectGuid::Empty, AuraEffect::GetAmount(), Unit::GetAura(), Unit::GetAuraEffect(), Unit::GetAuraEffectDummy(), Unit::GetAuraEffectsByType(), Unit::GetAuraOfRankedSpell(), AuraApplication::GetBase(), GetCasterGUID(), Unit::GetCreateMana(), Unit::GetDummyAuraEffect(), GetEffect(), Object::GetGUID(), AuraEffect::GetId(), GetId(), Unit::GetLevel(), GetMaxDuration(), Unit::GetMaxPower(), Unit::GetOwner(), Unit::getPowerType(), AuraApplication::GetRemoveMode(), Player::GetSession(), Player::GetSpellCooldownDelay(), GetSpellInfo(), GetStackAmount(), AuraApplication::GetTarget(), AuraEffect::GetTotalTicks(), GetTriggeredByAuraSpellInfo(), GetUnitOwner(), WorldObject::GetZoneAndAreaId(), Unit::HasAura(), Unit::HasSpell(), Player::HasSpellCooldown(), SpellInfo::Id, IMMUNITY_ID, IN_MILLISECONDS, Player::IsClass(), IsExpired(), Unit::IsFriendlyTo(), Unit::IsMounted(), Object::IsPlayer(), LOG_ERROR, m_spellInfo, MAX_SPELL_EFFECTS, WorldSession::PlayerLoading(), POWER_ENERGY, POWER_MANA, POWER_RAGE, POWER_RUNIC_POWER, Unit::RemoveAura(), Unit::RemoveAurasDueToSpell(), Unit::RemoveAurasWithFamily(), Player::RemoveRunesByAuraEffect(), Player::RemoveSpellCooldown(), roll_chance_i(), Player::SendDirectMessage(), AuraEffect::SetAmount(), SetDuration(), SetMaxDuration(), SMSG_MODIFY_COOLDOWN, SPELL_AURA_DUMMY, SPELL_AURA_OVERRIDE_CLASS_SCRIPTS, SPELL_AURA_PERIODIC_DUMMY, SPELL_AURA_PROC_TRIGGER_SPELL, SPELL_LINK_AURA, SPELL_SPECIFIC_AURA, Unit::SpellDamageBonusTaken(), SPELLFAMILY_DEATHKNIGHT, SPELLFAMILY_DRUID, SPELLFAMILY_GENERIC, SPELLFAMILY_HUNTER, SPELLFAMILY_MAGE, SPELLFAMILY_PALADIN, SPELLFAMILY_POTION, SPELLFAMILY_PRIEST, SPELLFAMILY_ROGUE, SPELLFAMILY_SHAMAN, SPELLFAMILY_WARLOCK, SPELLFAMILY_WARRIOR, SpellInfo::SpellFamilyFlags, Unit::SpellHealingBonusTaken(), sSpellMgr, Object::ToCreature(), and Object::ToPlayer().
Referenced by Unit::_ApplyAura(), Unit::_UnapplyAura(), and SetStackAmount().
|
inline |
References GetEffect().
Referenced by Unit::_ApplyAuraEffect(), UnitAura::FillTargetMap(), DynObjAura::FillTargetMap(), AuraScript::HasEffect(), HasEffectType(), IsArea(), RecalculateAmountOfEffects(), and SetStackAmount().
bool Aura::HasEffectType | ( | AuraType | type | ) | const |
References HasEffect(), m_effects, and MAX_SPELL_EFFECTS.
Referenced by Unit::_AddAura(), Battleground::_ProcessJoin(), CanBeSentToClient(), AuraScript::HasEffectType(), IsSingleTargetWith(), and Unit::RemoveAura().
|
inline |
bool Aura::IsArea | ( | ) | const |
References GetSpellInfo(), HasEffect(), and MAX_SPELL_EFFECTS.
Referenced by CanStackWith(), and UpdateTargetMap().
bool Aura::IsAuraStronger | ( | Aura const * | newAura | ) | const |
References EFFECT_0, AuraEffect::GetAmount(), AuraEffect::GetAuraType(), GetDuration(), GetEffect(), AuraEffect::GetMiscValue(), IsPassive(), IsPermanent(), and MAX_SPELL_EFFECTS.
Referenced by CanStackWith().
bool Aura::IsDeathPersistent | ( | ) | const |
References GetSpellInfo(), and SpellInfo::IsDeathPersistent().
Referenced by AuraScript::IsDeathPersistent(), and Unit::RemoveAllAurasOnDeath().
|
inline |
References GetDuration().
Referenced by HandleAuraSpecificMods(), AuraScript::IsExpired(), and DynamicObject::Update().
bool Aura::IsPassive | ( | ) | const |
References GetSpellInfo(), and SpellInfo::IsPassive().
Referenced by AuraEffect::ApplySpellMod(), CalcMaxDuration(), AuraEffect::CalculatePeriodic(), CanBeSaved(), CanBeSentToClient(), CanStackWith(), Player::CheckAreaExploreAndOutdoor(), Spell::EffectStealBeneficialBuff(), Spell::EffectSummonPet(), Unit::GetDispellableAuraList(), IsAuraStronger(), AuraScript::IsPassive(), IsProcTriggeredOnEvent(), list_commandscript::ListAurasCommand(), Spell::prepare(), Unit::RemoveAllAurasOnDeath(), Unit::RemoveAllAurasRequiringDeadTarget(), Unit::RemoveArenaAuras(), Unit::RemoveEvadeAuras(), and Player::RemoveItemDependentAurasAndCasts().
|
inline |
References GetMaxDuration().
Referenced by Battleground::_ProcessJoin(), Pet::_SaveAuras(), AuraEffect::ApplySpellMod(), IsAuraStronger(), AuraScript::IsPermanent(), and Unit::RemoveAurasDueToSpellBySteal().
bool Aura::IsProcOnCooldown | ( | ) | const |
Referenced by IsProcTriggeredOnEvent().
bool Aura::IsProcTriggeredOnEvent | ( | AuraApplication * | aurApp, |
ProcEventInfo & | eventInfo | ||
) | const |
References BASE_ATTACK, CalcProcChance(), CallScriptCheckProcHandlers(), CONDITION_SOURCE_TYPE_SPELL_PROC, EQUIPMENT_SLOT_MAINHAND, EQUIPMENT_SLOT_OFFHAND, EQUIPMENT_SLOT_RANGED, SpellInfo::EquippedItemClass, ProcEventInfo::GetActionTarget(), ProcEventInfo::GetActor(), GetCharges(), ProcEventInfo::GetDamageInfo(), GetId(), GetSpellInfo(), AuraApplication::GetTarget(), Player::GetUseableItemByPos(), SpellInfo::HasAttribute(), INVENTORY_SLOT_BAG_0, Item::IsBroken(), Item::IsFitToSpellRequirements(), Unit::IsInFeralForm(), IsPassive(), Object::IsPlayer(), IsProcOnCooldown(), IsUsingCharges(), ITEM_CLASS_ARMOR, ITEM_CLASS_WEAPON, OFF_ATTACK, roll_chance_f(), sConditionMgr, SPELL_ATTR3_NO_PROC_EQUIP_REQUIREMENT, sSpellMgr, and Object::ToPlayer().
|
inline |
References m_isRemoved.
Referenced by Unit::_AddAura(), Unit::_CreateAuraApplication(), AuraApplication::_HandleEffect(), Create(), Unit::GetDiseasesByCaster(), SpellScript::GetHitAura(), HandleAllEffects(), RecalculateAmountOfEffects(), UnitAura::Remove(), DynObjAura::Remove(), DynamicObject::RemoveAura(), Unit::RemoveAura(), Unit::RemoveOwnedAura(), DynamicObject::Update(), and UpdateTargetMap().
bool Aura::IsRemovedOnShapeLost | ( | Unit * | target | ) | const |
References GetCasterGUID(), Object::GetGUID(), SpellInfo::HasAttribute(), m_spellInfo, SPELL_ATTR0_NOT_SHAPESHIFTED, SPELL_ATTR2_ALLOW_WHILE_NOT_SHAPESHIFTED, and SpellInfo::Stances.
|
inline |
References m_isSingleTarget.
Referenced by Unit::_AddAura(), CanBeAppliedOn(), CanBeSaved(), Unit::RemoveAurasDueToSpellBySteal(), Unit::RemoveNotOwnSingleTargetAuras(), and Unit::RemoveOwnedAura().
bool Aura::IsSingleTargetWith | ( | Aura const * | aura | ) | const |
References GetSpellInfo(), SpellInfo::GetSpellSpecific(), HasEffectType(), SPELL_AURA_CONTROL_VEHICLE, SPELL_SPECIFIC_JUDGEMENT, and SPELL_SPECIFIC_MAGE_POLYMORPH.
Referenced by Unit::_AddAura().
|
inline |
References m_isUsingCharges.
Referenced by CanBeSaved(), IsProcTriggeredOnEvent(), ModCharges(), PrepareProcToTrigger(), Player::RemoveSpellMods(), Player::RestoreSpellMods(), and TriggerProcOnEvent().
void Aura::LoadScripts | ( | ) |
References SpellInfo::Id, LOG_DEBUG, m_loadedScripts, m_spellInfo, and sScriptMgr.
Referenced by DynObjAura::DynObjAura(), and UnitAura::UnitAura().
bool Aura::ModCharges | ( | int32 | num, |
AuraRemoveMode | removeMode = AURA_REMOVE_BY_DEFAULT |
||
) |
References CalcMaxCharges(), IsUsingCharges(), m_procCharges, Remove(), and SetCharges().
Referenced by DropCharge(), AuraScript::ModCharges(), Unit::RemoveAurasDueToSpellByDispel(), and Unit::RemoveAurasDueToSpellBySteal().
bool Aura::ModStackAmount | ( | int32 | num, |
AuraRemoveMode | removeMode = AURA_REMOVE_BY_DEFAULT , |
||
bool | periodicReset = false |
||
) |
References CalcMaxCharges(), GetCharges(), GetEffect(), GetStackAmount(), SpellInfo::HasAttribute(), m_spellInfo, m_stackAmount, MAX_SPELL_EFFECTS, RefreshSpellMods(), RefreshTimers(), Remove(), SetCharges(), SetNeedClientUpdateForTargets(), SetStackAmount(), SPELL_ATTR1_AURA_UNIQUE, SPELL_AURA_ADD_FLAT_MODIFIER, SPELL_AURA_ADD_PCT_MODIFIER, and SpellInfo::StackAmount.
Referenced by spell_the_lich_king_necrotic_plague_jump::AddMissingStack(), Spell::DoSpellHitOnUnit(), misc_commandscript::HandleAuraStacksCommand(), spell_charge_shield_bomber::HandleDummy(), AuraScript::ModStackAmount(), Unit::RemoveAuraFromStack(), Unit::RemoveAurasDueToSpellByDispel(), and Unit::RemoveAurasDueToSpellBySteal().
void Aura::PrepareProcToTrigger | ( | AuraApplication * | aurApp, |
ProcEventInfo & | eventInfo | ||
) |
References AddProcCooldown(), ASSERT, CallScriptPrepareProcHandlers(), SpellProcEntry::Cooldown, GetId(), ProcEventInfo::GetSpellInfo(), SpellInfo::HasAttribute(), IsUsingCharges(), m_procCharges, SetNeedClientUpdateForTargets(), SPELL_ATTR6_DO_NOT_CONSUME_RESOURCES, and sSpellMgr.
void Aura::RecalculateAmountOfEffects | ( | ) |
References ASSERT, GetCaster(), HasEffect(), IsRemoved(), m_effects, MAX_SPELL_EFFECTS, and AuraEffect::RecalculateAmount().
void Aura::RefreshDuration | ( | bool | withMods = false | ) |
References GetCaster(), Object::GetFloatValue(), GetMaxDuration(), SpellInfo::GetMaxDuration(), SpellInfo::HasAttribute(), Unit::HasAuraTypeWithAffectMask(), IN_MILLISECONDS, m_effects, m_spellInfo, m_timeCla, SpellInfo::ManaPerSecond, SpellInfo::ManaPerSecondPerLevel, MAX_SPELL_EFFECTS, SetDuration(), SetMaxDuration(), SPELL_ATTR2_NO_TARGET_PER_SECOND_COST, SPELL_ATTR5_SPELL_HASTE_AFFECTS_PERIODIC, SPELL_AURA_PERIODIC_HASTE, and UNIT_MOD_CAST_SPEED.
Referenced by spell_hun_chimera_shot::HandleScriptEffect(), AuraScript::RefreshDuration(), RefreshTimers(), RefreshTimersWithMods(), and AuraEffect::UpdatePeriodic().
void Aura::RefreshSpellMods | ( | ) |
References Unit::GetTarget(), and m_applications.
Referenced by ModStackAmount().
void Aura::RefreshTimers | ( | bool | periodicReset = false | ) |
References CalcMaxDuration(), GetCaster(), m_effects, m_maxDuration, MAX_SPELL_EFFECTS, and RefreshDuration().
Referenced by ModStackAmount().
void Aura::RefreshTimersWithMods | ( | ) |
References CalcMaxDuration(), GetCaster(), Object::GetFloatValue(), SpellInfo::HasAttribute(), Unit::HasAuraTypeWithAffectMask(), m_effects, m_maxDuration, m_spellInfo, MAX_SPELL_EFFECTS, RefreshDuration(), SPELL_ATTR5_SPELL_HASTE_AFFECTS_PERIODIC, SPELL_AURA_PERIODIC_HASTE, and UNIT_MOD_CAST_SPEED.
|
pure virtual |
Implemented in UnitAura, and DynObjAura.
Referenced by Player::ActivateSpec(), spell_dragonblight_corrosive_spit::AfterApply(), Unit::CalcAbsorbResist(), Unit::CalcHealAbsorb(), Spell::DoSpellHitOnUnit(), spell_pos_glacial_strike_aura::HandleEffectPeriodic(), ModCharges(), ModStackAmount(), spell_dragonblight_corrosive_spit::PeriodicTick(), SpellScript::PreventHitAura(), AuraScript::Remove(), Unit::RemoveAura(), Unit::RemoveNotOwnSingleTargetAuras(), Player::RestoreBaseRune(), TriggerProcOnEvent(), and Update().
void Aura::SetCharges | ( | uint8 | charges | ) |
References m_isUsingCharges, m_procCharges, and SetNeedClientUpdateForTargets().
Referenced by AuraEffect::HandleAuraDummy(), Unit::HandleAuraRaidProcFromCharge(), Unit::HandleAuraRaidProcFromChargeWithValue(), AuraEffect::HandleRaidProcFromChargeAuraProc(), AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(), ModCharges(), ModStackAmount(), and AuraScript::SetCharges().
void Aura::SetDuration | ( | int32 | duration, |
bool | withMods = false |
||
) |
References GetCaster(), GetId(), Unit::GetSpellModOwner(), m_duration, SetNeedClientUpdateForTargets(), and SPELLMOD_DURATION.
Referenced by AuraEffect::CalculatePeriodic(), Unit::DelayOwnedAuras(), Spell::DoSpellHitOnUnit(), Spell::EffectScriptEffect(), Unit::GetDiseasesByCaster(), HandleAuraSpecificMods(), deserter_commandscript::HandleDeserterAdd(), Unit::HandleDummyAuraProc(), spell_dru_glyph_of_starfire::HandleScriptEffect(), Spell::prepare(), RefreshDuration(), AuraScript::SetDuration(), and DynamicObject::SetDuration().
|
inline |
References m_isSingleTarget.
Referenced by Unit::_AddAura(), Unit::RemoveAurasDueToSpellBySteal(), and UnregisterSingleTarget().
void Aura::SetLoadedState | ( | int32 | maxduration, |
int32 | duration, | ||
int32 | charges, | ||
uint8 | stackamount, | ||
uint8 | recalculateMask, | ||
int32 * | amount | ||
) |
References AuraEffect::CalculatePeriodic(), AuraEffect::CalculateSpellMod(), GetCaster(), m_duration, m_effects, m_isUsingCharges, m_maxDuration, m_procCharges, m_stackAmount, MAX_SPELL_EFFECTS, AuraEffect::RecalculateAmount(), AuraEffect::SetAmount(), and AuraEffect::SetCanBeRecalculated().
|
inline |
References m_maxDuration.
Referenced by Spell::DoSpellHitOnUnit(), Spell::EffectScriptEffect(), HandleAuraSpecificMods(), Unit::HandleDummyAuraProc(), spell_dru_glyph_of_starfire::HandleScriptEffect(), RefreshDuration(), and AuraScript::SetMaxDuration().
void Aura::SetNeedClientUpdateForTargets | ( | ) | const |
References m_applications.
Referenced by Unit::DelayOwnedAuras(), ModStackAmount(), PrepareProcToTrigger(), SetCharges(), SetDuration(), and SetStackAmount().
void Aura::SetStackAmount | ( | uint8 | num | ) |
References AuraEffect::ChangeAmount(), GetApplicationList(), GetCaster(), HandleAuraSpecificMods(), HasEffect(), m_effects, m_stackAmount, MAX_SPELL_EFFECTS, and SetNeedClientUpdateForTargets().
Referenced by Spell::DoSpellHitOnUnit(), AuraEffect::HandleAuraDummy(), spell_brewfest_main_ram_buff::HandleEffectPeriodic(), spell_rotface_large_ooze_combine::HandleScript(), ModStackAmount(), Unit::SetAuraStack(), and AuraScript::SetStackAmount().
void Aura::SetTriggeredByAuraSpellInfo | ( | SpellInfo const * | triggeredByAuraSpellInfo | ) |
References m_triggeredByAuraSpellInfo.
Referenced by Spell::DoSpellHitOnUnit(), and Spell::EffectPersistentAA().
|
inline |
References m_isUsingCharges.
Referenced by AuraEffect::HandleRaidProcFromChargeAuraProc(), and AuraEffect::HandleRaidProcFromChargeWithValueAuraProc().
void Aura::TriggerProcOnEvent | ( | AuraApplication * | aurApp, |
ProcEventInfo & | eventInfo | ||
) |
References CallScriptAfterProcHandlers(), CallScriptProcHandlers(), GetCharges(), GetEffect(), AuraEffect::HandleProc(), AuraApplication::HasEffect(), IsUsingCharges(), MAX_SPELL_EFFECTS, and Remove().
|
static |
References ASSERT_NODEBUGINFO, BuildEffectMaskForOwner(), Create(), and MAX_EFFECT_MASK.
Referenced by Pet::_LoadAuras(), Player::_LoadAuras(), Spell::EffectPersistentAA(), and Unit::RemoveAurasDueToSpellByDispel().
|
static |
References Unit::_TryStackingOrRefreshingExistingAura(), ASSERT_NODEBUGINFO, BuildEffectMaskForOwner(), Create(), MAX_EFFECT_MASK, and Object::ToUnit().
Referenced by Unit::AddAura(), Spell::DoSpellHitOnUnit(), misc_commandscript::HandleAuraCommand(), misc_commandscript::HandleFreezeCommand(), spell_putricide_slime_puddle::HandleScript(), Unit::HandleSpellClick(), and Unit::RemoveAurasDueToSpellBySteal().
void Aura::UnregisterSingleTarget | ( | ) |
References ASSERT, GetCaster(), GetId(), GetOwner(), Unit::GetSingleCastAuras(), LOG_ERROR, LOG_INFO, m_isSingleTarget, and SetIsSingleTarget().
Referenced by Unit::RemoveAurasDueToSpellBySteal(), and Unit::RemoveOwnedAura().
References Unit::GetHealth(), Unit::GetLevel(), Unit::GetPower(), m_duration, m_spellInfo, m_timeCla, SpellInfo::ManaPerSecond, SpellInfo::ManaPerSecondPerLevel, Unit::ModifyHealth(), Unit::ModifyPower(), POWER_HEALTH, SpellInfo::PowerType, and Remove().
Referenced by UpdateOwner().
void Aura::UpdateOwner | ( | uint32 | diff, |
WorldObject * | owner | ||
) |
References _DeleteRemovedApplications(), ABORT, Unit::FindCurrentSpellBySpellId(), GetCaster(), GetId(), Unit::GetSpellModOwner(), m_effects, m_owner, m_updateTargetMapInterval, MAX_SPELL_EFFECTS, Player::SetSpellModTakingSpell(), AuraEffect::Update(), Update(), and UpdateTargetMap().
Referenced by Unit::_UpdateSpells(), and DynamicObject::Update().
void Aura::UpdateTargetMap | ( | Unit * | caster, |
bool | apply = true |
||
) |
References ABORT, ASSERT, AURA_REMOVE_BY_DEFAULT, CanBeAppliedOn(), CanStackWith(), DYNOBJ_AURA_TYPE, FillTargetMap(), GetApplicationOfTarget(), GetId(), GetOwner(), GetSpellInfo(), GetType(), SpellInfo::HasAttribute(), IsArea(), IsRemoved(), WorldObject::IsSelfOrInSameMap(), LOG_FATAL, m_applications, m_updateTargetMapInterval, MAX_SPELL_EFFECTS, SPELL_ATTR0_CU_ONLY_ONE_AREA_AURA, and UPDATE_TARGET_MAP_INTERVAL.
Referenced by _RegisterForTargets(), ApplyForTargets(), and UpdateOwner().
|
friend |
|
protected |
|
protected |
Referenced by GetApplyTime().
|
protected |
Referenced by GetCasterGUID().
|
protected |
Referenced by GetCasterLevel().
|
protected |
Referenced by GetCastItemEntry().
|
protected |
Referenced by _ApplyForTarget(), _UnapplyForTarget(), CanStackWith(), and GetCastItemGUID().
|
protected |
Referenced by Aura(), GetDuration(), SetDuration(), SetLoadedState(), and Update().
|
protected |
|
protected |
Referenced by _Remove(), and IsRemoved().
|
protected |
Referenced by IsSingleTarget(), SetIsSingleTarget(), and UnregisterSingleTarget().
|
protected |
Referenced by Aura(), IsUsingCharges(), SetCharges(), SetLoadedState(), and SetUsingCharges().
std::list<AuraScript*> Aura::m_loadedScripts |
Referenced by CallScriptAfterCheckProcHandlers(), CallScriptAfterDispel(), CallScriptAfterEffectApplyHandlers(), CallScriptAfterEffectProcHandlers(), CallScriptAfterEffectRemoveHandlers(), CallScriptAfterProcHandlers(), CallScriptCheckAreaTargetHandlers(), CallScriptCheckProcHandlers(), CallScriptDispel(), CallScriptEffectAbsorbHandlers(), CallScriptEffectAfterAbsorbHandlers(), CallScriptEffectAfterManaShieldHandlers(), CallScriptEffectApplyHandlers(), CallScriptEffectCalcAmountHandlers(), CallScriptEffectCalcPeriodicHandlers(), CallScriptEffectCalcSpellModHandlers(), CallScriptEffectManaShieldHandlers(), CallScriptEffectPeriodicHandlers(), CallScriptEffectProcHandlers(), CallScriptEffectRemoveHandlers(), CallScriptEffectSplitHandlers(), CallScriptEffectUpdatePeriodicHandlers(), CallScriptPrepareProcHandlers(), CallScriptProcHandlers(), GetScriptByName(), LoadScripts(), and ~Aura().
|
protected |
Referenced by Aura(), GetMaxDuration(), RefreshTimers(), RefreshTimersWithMods(), SetLoadedState(), and SetMaxDuration().
|
protected |
Referenced by GetDynobjOwner(), GetOwner(), GetType(), GetUnitOwner(), and UpdateOwner().
|
protected |
Referenced by Aura(), GetCharges(), ModCharges(), PrepareProcToTrigger(), SetCharges(), and SetLoadedState().
|
private |
Referenced by _DeleteRemovedApplications(), and _UnapplyForTarget().
|
protected |
Referenced by _ApplyForTarget(), _UnapplyForTarget(), Aura(), CalcMaxCharges(), CalcMaxDuration(), CallScriptAfterEffectApplyHandlers(), CallScriptAfterEffectProcHandlers(), CallScriptAfterEffectRemoveHandlers(), CallScriptEffectAbsorbHandlers(), CallScriptEffectAfterAbsorbHandlers(), CallScriptEffectAfterManaShieldHandlers(), CallScriptEffectApplyHandlers(), CallScriptEffectCalcAmountHandlers(), CallScriptEffectCalcPeriodicHandlers(), CallScriptEffectCalcSpellModHandlers(), CallScriptEffectManaShieldHandlers(), CallScriptEffectPeriodicHandlers(), CallScriptEffectProcHandlers(), CallScriptEffectRemoveHandlers(), CallScriptEffectSplitHandlers(), CallScriptEffectUpdatePeriodicHandlers(), CanStackWith(), GetSpellInfo(), HandleAuraSpecificMods(), IsRemovedOnShapeLost(), LoadScripts(), ModStackAmount(), RefreshDuration(), RefreshTimersWithMods(), and Update().
|
protected |
Referenced by GetStackAmount(), ModStackAmount(), SetLoadedState(), and SetStackAmount().
|
protected |
Referenced by Aura(), RefreshDuration(), and Update().
|
private |
Referenced by GetTriggeredByAuraSpellInfo(), and SetTriggeredByAuraSpellInfo().
|
protected |
Referenced by UpdateOwner(), and UpdateTargetMap().