|
Project SkyFire Core
SkyFire 5.4.8 server core API documentation
|
#include <SpellAuras.h>
Public Member Functions | |
| void | ClientUpdate (bool remove=false) |
| Aura * | GetBase () const |
| uint32 | GetEffectMask () const |
| uint32 | GetEffectsToApply () const |
| uint32 | GetFlags () const |
| AuraRemoveMode | GetRemoveMode () const |
| uint8 | GetSlot () const |
| Unit * | GetTarget () const |
| bool | HasEffect (uint32 effect) const |
| bool | IsNeedClientUpdate () const |
| bool | IsPositive () const |
| bool | IsSelfcasted () const |
| void | SetNeedClientUpdate () |
| void | SetRemoveMode (AuraRemoveMode mode) |
Private Member Functions | |
| void | _HandleEffect (uint8 effIndex, bool apply) |
| void | _InitFlags (Unit *caster, uint32 effMask) |
| void | _Remove () |
| AuraApplication (Unit *target, Unit *caster, Aura *base, uint32 effMask) | |
Private Attributes | |
| Aura *const | _base |
| uint32 | _effectsToApply |
| uint32 | _effMask |
| uint32 | _flags |
| bool | _needClientUpdate: 1 |
| AuraRemoveMode | _removeMode: 8 |
| uint8 | _slot |
| Unit *const | _target |
Friends | |
| void | Unit::_ApplyAura (AuraApplication *aurApp, uint32 effMask) |
| void | Unit::_ApplyAuraEffect (Aura *aura, uint8 effIndex) |
| AuraApplication * | Unit::_CreateAuraApplication (Aura *aura, uint32 effMask) |
| void | Unit::_UnapplyAura (AuraApplicationMap::iterator &i, AuraRemoveMode removeMode) |
| void | Unit::RemoveAura (AuraApplication *aurApp, AuraRemoveMode mode) |
Definition at line 28 of file SpellAuras.h.
|
explicitprivate |
Definition at line 26 of file SpellAuras.cpp.
References _base, _effectsToApply, _effMask, _flags, _InitFlags(), _needClientUpdate, _removeMode, _slot, _target, AFLAG_NONE, ASSERT, AURA_REMOVE_NONE, AuraApplication(), GetBase(), GetEffectMask(), GetTarget(), Unit::GetVisibleAuras(), MAX_AURAS, SetNeedClientUpdate(), Unit::SetVisibleAura(), and SF_LOG_DEBUG.
Referenced by _Remove(), AuraApplication(), Unit::_ApplyAura, Unit::_CreateAuraApplication, and Unit::RemoveAura.
|
private |
Definition at line 96 of file SpellAuraApplication.cpp.
References _effectsToApply, _effMask, ASSERT, AURA_EFFECT_HANDLE_REAL, AuraEffect::CleanupTriggeredSpells(), AuraEffect::GetAmount(), AuraEffect::GetAuraType(), GetBase(), Aura::GetEffect(), GetTarget(), AuraEffect::HandleEffect(), HasEffect(), SetNeedClientUpdate(), and SF_LOG_DEBUG.
Referenced by Unit::_ApplyAura(), Unit::_ApplyAuraEffect(), Unit::_UnapplyAura(), and Unit::RemoveAura().
Definition at line 56 of file SpellAuraApplication.cpp.
References _flags, AFLAG_ANY_EFFECT_AMOUNT_SENT, AFLAG_CASTER, AFLAG_NEGATIVE, AFLAG_NONE, AFLAG_POSITIVE, GetBase(), Aura::GetCasterGUID(), Object::GetGUID(), GetTarget(), Unit::IsFriendlyTo(), IsSelfcasted(), MAX_SPELL_EFFECTS, and SPELL_ATTR8_AURA_SEND_AMOUNT.
Referenced by AuraApplication().
|
private |
Definition at line 26 of file SpellAuraApplication.cpp.
References _target, AuraApplication(), ClientUpdate(), GetBase(), GetSlot(), GetTarget(), MAX_AURAS, Unit::RemoveVisibleAura(), and Unit::SetVisibleAura().
Referenced by Unit::_UnapplyAura().
| void AuraApplication::ClientUpdate | ( | bool | remove = false | ) |
Definition at line 122 of file SpellAuraApplication.cpp.
References _flags, _needClientUpdate, _target, AFLAG_ANY_EFFECT_AMOUNT_SENT, AFLAG_CASTER, AFLAG_DURATION, SpellInfo::AttributesEx5, ByteBuffer::FlushBits(), GetBase(), Aura::GetCasterGUID(), Aura::GetCasterLevel(), Aura::GetCharges(), Aura::GetDuration(), Aura::GetEffect(), GetEffectMask(), Aura::GetId(), Aura::GetMaxDuration(), GetSlot(), Aura::GetSpellInfo(), Aura::GetStackAmount(), HasEffect(), MAX_SPELL_EFFECTS, SMSG_AURA_UPDATE, SPELL_ATTR5_HIDE_DURATION, SpellInfo::StackAmount, ByteBuffer::WriteBit(), ByteBuffer::WriteBits(), and ByteBuffer::WriteByteSeq().
Referenced by _Remove(), and spell_monk_roll::spell_monk_roll_SpellScript::HandleBeforeCast().
|
inline |
Definition at line 55 of file SpellAuras.h.
References _base.
Referenced by Unit::_ApplyAura(), _HandleEffect(), _InitFlags(), Battleground::_ProcessJoin(), _Remove(), Unit::_UnapplyAura(), Unit::_UnapplyAura(), Aura::_UnapplyForTarget(), AuraApplication(), Unit::CalcAbsorbResist(), ClientUpdate(), Unit::GetAura(), Unit::GetAuraApplication(), Unit::GetAuraOfRankedSpell(), list_commandscript::HandleListAurasCommand(), spell_monk_purifying_brew::spell_monk_purifying_brew_SpellScript::HandleOnHit(), Unit::RemoveArenaAuras(), Unit::RemoveAura(), Unit::RemoveAura(), Unit::RemoveNotOwnSingleTargetAuras(), Unit::RestoreDisplayId(), and Player::SendAurasForTarget().
|
inline |
Definition at line 59 of file SpellAuras.h.
References _effMask.
Referenced by Unit::_ApplyAuraEffect(), Unit::_UnapplyAura(), AuraApplication(), ClientUpdate(), list_commandscript::HandleListAurasCommand(), and Player::SendAurasForTarget().
|
inline |
Definition at line 63 of file SpellAuras.h.
References _effectsToApply.
|
inline |
Definition at line 58 of file SpellAuras.h.
References _flags.
Referenced by Player::SendAurasForTarget().
|
inline |
Definition at line 66 of file SpellAuras.h.
References _removeMode.
Referenced by Unit::_ApplyAura(), Unit::_EnterVehicle(), Unit::_UnapplyAura(), Aura::_UnapplyForTarget(), spell_mage_living_bomb::spell_mage_living_bomb_AuraScript::AfterRemove(), AuraEffect::HandleAuraDummy(), AuraEffect::HandleAuraLinked(), AuraEffect::HandleAuraModShapeshift(), Aura::HandleAuraSpecificMods(), AuraEffect::HandleChannelDeathItem(), AuraEffect::HandleEffect(), AuraEffect::HandleFeignDeath(), Unit::RemoveAura(), Unit::RemoveAura(), and Unit::SetCharmedBy().
|
inline |
Definition at line 57 of file SpellAuras.h.
References _slot.
Referenced by _Remove(), ClientUpdate(), list_commandscript::HandleListAurasCommand(), and Player::SendAurasForTarget().
|
inline |
Definition at line 54 of file SpellAuras.h.
References _target.
Referenced by _HandleEffect(), _InitFlags(), Aura::_Remove(), _Remove(), Unit::_UnapplyAura(), AuraApplication(), AuraEffect::HandleArenaPreparation(), AuraEffect::HandleAuraAllowFlight(), AuraEffect::HandleAuraAllowOnlyAbility(), AuraEffect::HandleAuraCloneCaster(), AuraEffect::HandleAuraControlVehicle(), AuraEffect::HandleAuraConvertRune(), AuraEffect::HandleAuraDummy(), AuraEffect::HandleAuraEmpathy(), AuraEffect::HandleAuraFeatherFall(), AuraEffect::HandleAuraForceWeather(), AuraEffect::HandleAuraGhost(), AuraEffect::HandleAuraHover(), AuraEffect::HandleAuraIncreaseBaseHealthPercent(), AuraEffect::HandleAuraLinked(), AuraEffect::HandleAuraMastery(), AuraEffect::HandleAuraModAttackPower(), AuraEffect::HandleAuraModAttackPowerPercent(), AuraEffect::HandleAuraModBaseResistancePCT(), AuraEffect::HandleAuraModBlockPercent(), AuraEffect::HandleAuraModCritPct(), AuraEffect::HandleAuraModDecreaseSpeed(), AuraEffect::HandleAuraModDisarm(), AuraEffect::HandleAuraModDispelImmunity(), AuraEffect::HandleAuraModDmgImmunity(), AuraEffect::HandleAuraModDodgePercent(), AuraEffect::HandleAuraModEffectImmunity(), AuraEffect::HandleAuraModExpertise(), AuraEffect::HandleAuraModFaction(), AuraEffect::HandleAuraModFakeInebriation(), AuraEffect::HandleAuraModIncreaseEnergyPercent(), AuraEffect::HandleAuraModIncreaseFlightSpeed(), AuraEffect::HandleAuraModIncreaseHealth(), AuraEffect::HandleAuraModIncreaseHealthPercent(), AuraEffect::HandleAuraModIncreaseMaxHealth(), AuraEffect::HandleAuraModIncreaseMaxPowerFlat(), AuraEffect::HandleAuraModIncreaseSpeed(), AuraEffect::HandleAuraModIncreaseSwimSpeed(), AuraEffect::HandleAuraModPacify(), AuraEffect::HandleAuraModPacifyAndSilence(), AuraEffect::HandleAuraModParryPercent(), AuraEffect::HandleAuraModPetTalentsPoints(), AuraEffect::HandleAuraModRangedAttackPower(), AuraEffect::HandleAuraModRangedAttackPowerPercent(), AuraEffect::HandleAuraModRangedHaste(), AuraEffect::HandleAuraModRegenInterrupt(), AuraEffect::HandleAuraModResistance(), AuraEffect::HandleAuraModResistanceExclusive(), AuraEffect::HandleAuraModRoot(), AuraEffect::HandleAuraModScale(), AuraEffect::HandleAuraModSchoolImmunity(), AuraEffect::HandleAuraModShapeshift(), AuraEffect::HandleAuraModSilence(), AuraEffect::HandleAuraModSkill(), AuraEffect::HandleAuraModStalked(), AuraEffect::HandleAuraModStat(), AuraEffect::HandleAuraModStateImmunity(), AuraEffect::HandleAuraModStun(), AuraEffect::HandleAuraModTotalThreat(), AuraEffect::HandleAuraModUseNormalSpeed(), AuraEffect::HandleAuraModWeaponCritPercent(), AuraEffect::HandleAuraMounted(), AuraEffect::HandleAuraOverrideAutoattackWithSpell(), AuraEffect::HandleAuraOverrideSpells(), AuraEffect::HandleAuraRetainComboPoints(), AuraEffect::HandleAuraSetVehicle(), Aura::HandleAuraSpecificMods(), AuraEffect::HandleAuraTrackCreatures(), AuraEffect::HandleAuraTrackResources(), AuraEffect::HandleAuraTrackStealthed(), AuraEffect::HandleAuraTransform(), AuraEffect::HandleAuraUntrackable(), AuraEffect::HandleAuraWaterWalk(), AuraEffect::HandleBindSight(), AuraEffect::HandleCharmConvert(), AuraEffect::HandleComprehendLanguage(), AuraEffect::HandleEffect(), AuraEffect::HandleEnableAltPower(), AuraEffect::HandleFeignDeath(), AuraEffect::HandleForceMoveForward(), AuraEffect::HandleForceReaction(), AuraEffect::HandleModAttackSpeed(), AuraEffect::HandleModBaseResistance(), AuraEffect::HandleModCastingSpeed(), AuraEffect::HandleModCharm(), AuraEffect::HandleModCombatSpeedPct(), AuraEffect::HandleModConfuse(), AuraEffect::HandleModDamageDone(), AuraEffect::HandleModDamagePercentDone(), AuraEffect::HandleModFear(), AuraEffect::HandleModHealingDone(), AuraEffect::HandleModHitChance(), AuraEffect::HandleModInvisibility(), AuraEffect::HandleModInvisibilityDetect(), AuraEffect::HandleModMechanicImmunity(), AuraEffect::HandleModMeleeRangedSpeedPct(), AuraEffect::HandleModMeleeSpeedPct(), AuraEffect::HandleModOffhandDamagePercent(), AuraEffect::HandleModPercentStat(), AuraEffect::HandleModPossess(), AuraEffect::HandleModPossessPet(), AuraEffect::HandleModPowerCost(), AuraEffect::HandleModPowerCostPCT(), AuraEffect::HandleModPowerRegen(), AuraEffect::HandleModRating(), AuraEffect::HandleModRatingFromStat(), AuraEffect::HandleModResistancePercent(), AuraEffect::HandleModSpellCritChance(), AuraEffect::HandleModSpellDamagePercentFromStat(), AuraEffect::HandleModSpellHealingPercentFromStat(), AuraEffect::HandleModSpellHitChance(), AuraEffect::HandleModStateImmunityMask(), AuraEffect::HandleModStealth(), AuraEffect::HandleModStealthDetect(), AuraEffect::HandleModStealthLevel(), AuraEffect::HandleModTargetResistance(), AuraEffect::HandleModTaunt(), AuraEffect::HandleModThreat(), AuraEffect::HandleModTotalPercentStat(), AuraEffect::HandleModUnattackable(), AuraEffect::HandleOverrideAttackPowerBySpellPower(), AuraEffect::HandleOverrideSpellPowerByAttackPower(), AuraEffect::HandlePhase(), AuraEffect::HandlePhaseGroup(), AuraEffect::HandlePlayScene(), AuraEffect::HandlePreventFleeing(), AuraEffect::HandlePreventResurrection(), AuraEffect::HandleProcTriggerDamageAuraProc(), AuraEffect::HandleProcTriggerSpellAuraProc(), AuraEffect::HandleProcTriggerSpellWithValueAuraProc(), AuraEffect::HandleRaidProcFromChargeAuraProc(), AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(), AuraEffect::HandleShieldBlockValue(), AuraEffect::HandleSpiritOfRedemption(), AuraEffect::HandleWaterBreathing(), Aura::IsProcTriggeredOnEvent(), AuraEffect::PeriodicTick(), and Unit::RemoveAreaAurasDueToLeaveWorld().
|
inline |
Definition at line 60 of file SpellAuras.h.
References _effMask, ASSERT, and MAX_SPELL_EFFECTS.
Referenced by _HandleEffect(), Unit::_UnapplyAura(), ClientUpdate(), Unit::RemoveAura(), Player::SendAurasForTarget(), and Aura::TriggerProcOnEvent().
|
inline |
Definition at line 69 of file SpellAuras.h.
References _needClientUpdate.
|
inline |
Definition at line 61 of file SpellAuras.h.
References _flags, and AFLAG_POSITIVE.
Referenced by Battleground::_ProcessJoin(), Spell::EffectStealBeneficialBuff(), Unit::GetDispellableAuraList(), AuraEffect::HandleAuraModResistanceExclusive(), Unit::RemoveArenaAuras(), and Unit::RemoveAurasByType().
|
inline |
Definition at line 62 of file SpellAuras.h.
References _flags, and AFLAG_CASTER.
Referenced by _InitFlags().
|
inline |
Definition at line 68 of file SpellAuras.h.
References _needClientUpdate.
Referenced by _HandleEffect(), and AuraApplication().
|
inline |
Definition at line 65 of file SpellAuras.h.
References _removeMode.
Referenced by Unit::_UnapplyAura().
|
friend |
References AuraApplication().
|
friend |
|
friend |
References AuraApplication().
|
friend |
|
friend |
References AuraApplication().
|
private |
Definition at line 37 of file SpellAuras.h.
Referenced by AuraApplication(), and GetBase().
|
private |
Definition at line 41 of file SpellAuras.h.
Referenced by _HandleEffect(), AuraApplication(), and GetEffectsToApply().
|
private |
Definition at line 42 of file SpellAuras.h.
Referenced by _HandleEffect(), AuraApplication(), GetEffectMask(), and HasEffect().
|
private |
Definition at line 40 of file SpellAuras.h.
Referenced by _InitFlags(), AuraApplication(), ClientUpdate(), GetFlags(), IsPositive(), and IsSelfcasted().
|
private |
Definition at line 44 of file SpellAuras.h.
Referenced by AuraApplication(), ClientUpdate(), IsNeedClientUpdate(), and SetNeedClientUpdate().
|
private |
Definition at line 38 of file SpellAuras.h.
Referenced by AuraApplication(), GetRemoveMode(), and SetRemoveMode().
|
private |
Definition at line 39 of file SpellAuras.h.
Referenced by AuraApplication(), and GetSlot().
|
private |
Definition at line 36 of file SpellAuras.h.
Referenced by _Remove(), AuraApplication(), ClientUpdate(), and GetTarget().