diff options
| author | Shauren <shauren.trinity@gmail.com> | 2025-07-13 13:40:31 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2025-07-13 13:40:31 +0200 |
| commit | 5de252ae8471cea021944d2f404a7793f39a8d0d (patch) | |
| tree | 013165f80f8315e6bfe907af32fa193dee4264cb /src/server/game/Entities/Unit | |
| parent | 8fad176f5f83f741107d06a9cbe0243da89f8b30 (diff) | |
Core/Misc: Move large functions out of header files
Diffstat (limited to 'src/server/game/Entities/Unit')
| -rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 59 | ||||
| -rw-r--r-- | src/server/game/Entities/Unit/Unit.h | 32 | ||||
| -rw-r--r-- | src/server/game/Entities/Unit/UnitDefines.h | 4 |
3 files changed, 72 insertions, 23 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 91ab4c5168c..45805cfbd0a 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -722,6 +722,16 @@ void Unit::RemoveVisibleAura(AuraApplication* aurApp) UpdateAuraForGroup(); } +void Unit::SetVisibleAuraUpdate(AuraApplication* aurApp) +{ + m_visibleAurasToUpdate.insert(aurApp); +} + +void Unit::RemoveVisibleAuraUpdate(AuraApplication* aurApp) +{ + m_visibleAurasToUpdate.erase(aurApp); +} + void Unit::UpdateInterruptMask() { m_interruptMask = SpellAuraInterruptFlags::None; @@ -3020,6 +3030,28 @@ void Unit::_UpdateAutoRepeatSpell() } } +void Unit::AddChannelObject(ObjectGuid guid) +{ + AddDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects)) = guid; +} + +void Unit::SetChannelObject(uint32 slot, ObjectGuid guid) +{ + SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects, slot), guid); +} + +void Unit::RemoveChannelObject(ObjectGuid guid) +{ + int32 index = m_unitData->ChannelObjects.FindIndex(guid); + if (index >= 0) + RemoveDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects), index); +} + +void Unit::ClearChannelObjects() +{ + ClearDynamicUpdateFieldValues(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects)); +} + void Unit::SetCurrentCastSpell(Spell* pSpell) { ASSERT(pSpell); // NULL may be never passed here, use InterruptSpell or InterruptNonMeleeSpells @@ -8950,6 +8982,16 @@ void Unit::UpdateAdvFlyingSpeed(AdvFlyingRateTypeRange speedType, bool clientUpd } } +void Unit::FollowerAdded(AbstractFollower* f) +{ + m_followingMe.insert(f); +} + +void Unit::FollowerRemoved(AbstractFollower* f) +{ + m_followingMe.erase(f); +} + void Unit::RemoveAllFollowers() { while (!m_followingMe.empty()) @@ -14217,6 +14259,23 @@ float Unit::GetCollisionHeight() const return collisionHeight == 0.0f ? DEFAULT_COLLISION_HEIGHT : collisionHeight; } +void Unit::AddWorldEffect(int32 worldEffectId) +{ + AddDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::WorldEffects)) = worldEffectId; +} + +void Unit::RemoveWorldEffect(int32 worldEffectId) +{ + int32 index = m_unitData->WorldEffects.FindIndex(worldEffectId); + if (index >= 0) + RemoveDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::WorldEffects), index); +} + +void Unit::ClearWorldEffects() +{ + ClearDynamicUpdateFieldValues(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::WorldEffects)); +} + void Unit::SetVignette(uint32 vignetteId) { if (m_vignette) diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 7c9f6c5fd9d..f6917ee88f7 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -1429,15 +1429,10 @@ class TC_GAME_API Unit : public WorldObject .ModifyValue(&UF::UnitData::ChannelData) .ModifyValue(&UF::UnitChannel::SpellVisual), channelVisual); } - void AddChannelObject(ObjectGuid guid) { AddDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects)) = guid; } - void SetChannelObject(uint32 slot, ObjectGuid guid) { SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects, slot), guid); } - void RemoveChannelObject(ObjectGuid guid) - { - int32 index = m_unitData->ChannelObjects.FindIndex(guid); - if (index >= 0) - RemoveDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects), index); - } - void ClearChannelObjects() { ClearDynamicUpdateFieldValues(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::ChannelObjects)); } + void AddChannelObject(ObjectGuid guid); + void SetChannelObject(uint32 slot, ObjectGuid guid); + void RemoveChannelObject(ObjectGuid guid); + void ClearChannelObjects(); int8 GetSpellEmpowerStage() const { return m_unitData->SpellEmpowerStage; } void SetSpellEmpowerStage(int8 stage) { SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::SpellEmpowerStage), stage); } @@ -1584,8 +1579,8 @@ class TC_GAME_API Unit : public WorldObject bool HasVisibleAura(AuraApplication* aurApp) const { return m_visibleAuras.contains(aurApp); } void SetVisibleAura(AuraApplication* aurApp); void RemoveVisibleAura(AuraApplication* aurApp); - void SetVisibleAuraUpdate(AuraApplication* aurApp) { m_visibleAurasToUpdate.insert(aurApp); } - void RemoveVisibleAuraUpdate(AuraApplication* aurApp) { m_visibleAurasToUpdate.erase(aurApp); } + void SetVisibleAuraUpdate(AuraApplication* aurApp); + void RemoveVisibleAuraUpdate(AuraApplication* aurApp); bool HasInterruptFlag(SpellAuraInterruptFlags flags) const { return m_interruptMask.HasFlag(flags); } bool HasInterruptFlag(SpellAuraInterruptFlags2 flags) const { return m_interruptMask2.HasFlag(flags); } @@ -1696,8 +1691,8 @@ class TC_GAME_API Unit : public WorldObject void UpdateAdvFlyingSpeed(AdvFlyingRateTypeSingle speedType, bool clientUpdate); void UpdateAdvFlyingSpeed(AdvFlyingRateTypeRange speedType, bool clientUpdate); - void FollowerAdded(AbstractFollower* f) { m_followingMe.insert(f); } - void FollowerRemoved(AbstractFollower* f) { m_followingMe.erase(f); } + void FollowerAdded(AbstractFollower* f); + void FollowerRemoved(AbstractFollower* f); void RemoveAllFollowers(); MotionMaster* GetMotionMaster() { return i_motionMaster.get(); } @@ -1849,14 +1844,9 @@ class TC_GAME_API Unit : public WorldObject // enables / disables combat interaction of this unit void SetIsCombatDisallowed(bool apply) { _isCombatDisallowed = apply; } - void AddWorldEffect(int32 worldEffectId) { AddDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::WorldEffects)) = worldEffectId; } - void RemoveWorldEffect(int32 worldEffectId) - { - int32 index = m_unitData->WorldEffects.FindIndex(worldEffectId); - if (index >= 0) - RemoveDynamicUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::WorldEffects), index); - } - void ClearWorldEffects() { ClearDynamicUpdateFieldValues(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::WorldEffects)); } + void AddWorldEffect(int32 worldEffectId); + void RemoveWorldEffect(int32 worldEffectId); + void ClearWorldEffects(); Vignettes::VignetteData const* GetVignette() const { return m_vignette.get(); } void SetVignette(uint32 vignetteId); diff --git a/src/server/game/Entities/Unit/UnitDefines.h b/src/server/game/Entities/Unit/UnitDefines.h index 4f4f5552110..540c4111c97 100644 --- a/src/server/game/Entities/Unit/UnitDefines.h +++ b/src/server/game/Entities/Unit/UnitDefines.h @@ -517,10 +517,10 @@ enum class AttackSwingErr : uint8 #define MAX_DECLINED_NAME_CASES 5 -struct TC_GAME_API DeclinedName +struct DeclinedName { DeclinedName() = default; - DeclinedName(UF::DeclinedNames const& uf); + TC_GAME_API DeclinedName(UF::DeclinedNames const& uf); std::string name[MAX_DECLINED_NAME_CASES]; }; |
