aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-01-29 19:44:55 +0100
committerShauren <shauren.trinity@gmail.com>2022-01-29 20:35:25 +0100
commitfaf12a888394f220fa057526b56bd456f3790f4f (patch)
treeb43b19c1052d09afa1c4f6f5694d745c3fe3b715 /src
parent70442041300bb0a1146717497fd5f771d874befa (diff)
Core/Objects: Don't consider SMSG_UPDATE_OBJECT packets that contain only destroyed objects as empty
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/DynamicObject/DynamicObject.cpp3
-rw-r--r--src/server/game/Entities/Object/Updates/UpdateData.h2
2 files changed, 1 insertions, 4 deletions
diff --git a/src/server/game/Entities/DynamicObject/DynamicObject.cpp b/src/server/game/Entities/DynamicObject/DynamicObject.cpp
index 4a9cceedb0a..b1ccf7bc527 100644
--- a/src/server/game/Entities/DynamicObject/DynamicObject.cpp
+++ b/src/server/game/Entities/DynamicObject/DynamicObject.cpp
@@ -166,10 +166,7 @@ void DynamicObject::Update(uint32 p_time)
void DynamicObject::Remove()
{
if (IsInWorld())
- {
- RemoveFromWorld();
AddObjectToRemoveList();
- }
}
int32 DynamicObject::GetDuration() const
diff --git a/src/server/game/Entities/Object/Updates/UpdateData.h b/src/server/game/Entities/Object/Updates/UpdateData.h
index 9b185ea14e2..08cfa498f18 100644
--- a/src/server/game/Entities/Object/Updates/UpdateData.h
+++ b/src/server/game/Entities/Object/Updates/UpdateData.h
@@ -48,7 +48,7 @@ class UpdateData
void AddOutOfRangeGUID(ObjectGuid guid);
void AddUpdateBlock(ByteBuffer const& block);
bool BuildPacket(WorldPacket* packet);
- bool HasData() const { return m_blockCount > 0 || !m_outOfRangeGUIDs.empty(); }
+ bool HasData() const { return m_blockCount > 0 || !m_outOfRangeGUIDs.empty() || !m_destroyGUIDs.empty(); }
void Clear();
GuidSet const& GetOutOfRangeGUIDs() const { return m_outOfRangeGUIDs; }