mirror of
https://github.com/araxiaonline/TrinityCore.git
synced 2026-06-24 07:30:07 -04:00
Core/PacketIO: Move writing data sizes in SMSG_UPDATE_OBJECT to shared functions instead of spreading it in all overrides
(cherry picked from commit 067fa31d15)
# Conflicts:
# src/server/game/Entities/Item/AzeriteItem/AzeriteEmpoweredItem.cpp
# src/server/game/Entities/Item/AzeriteItem/AzeriteItem.cpp
This commit is contained in:
@@ -139,19 +139,14 @@ bool SceneObject::Create(ObjectGuid::LowType lowGuid, SceneType type, uint32 sce
|
||||
void SceneObject::BuildValuesCreate(ByteBuffer* data, Player const* target) const
|
||||
{
|
||||
UF::UpdateFieldFlag flags = GetUpdateFieldFlagsFor(target);
|
||||
std::size_t sizePos = data->wpos();
|
||||
*data << uint32(0);
|
||||
*data << uint8(flags);
|
||||
m_objectData->WriteCreate(*data, flags, this, target);
|
||||
m_sceneObjectData->WriteCreate(*data, flags, this, target);
|
||||
data->put<uint32>(sizePos, data->wpos() - sizePos - 4);
|
||||
}
|
||||
|
||||
void SceneObject::BuildValuesUpdate(ByteBuffer* data, Player const* target) const
|
||||
{
|
||||
UF::UpdateFieldFlag flags = GetUpdateFieldFlagsFor(target);
|
||||
std::size_t sizePos = data->wpos();
|
||||
*data << uint32(0);
|
||||
*data << uint32(m_values.GetChangedObjectTypeMask());
|
||||
|
||||
if (m_values.HasChanged(TYPEID_OBJECT))
|
||||
@@ -159,8 +154,6 @@ void SceneObject::BuildValuesUpdate(ByteBuffer* data, Player const* target) cons
|
||||
|
||||
if (m_values.HasChanged(TYPEID_SCENEOBJECT))
|
||||
m_sceneObjectData->WriteUpdate(*data, flags, this, target);
|
||||
|
||||
data->put<uint32>(sizePos, data->wpos() - sizePos - 4);
|
||||
}
|
||||
|
||||
void SceneObject::BuildValuesUpdateForPlayerWithMask(UpdateData* data, UF::ObjectData::Mask const& requestedObjectMask,
|
||||
|
||||
Reference in New Issue
Block a user