From 1f7643db035c5ee1afcde359baebe38cbb59ad04 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sat, 2 Nov 2024 12:32:21 +0100 Subject: Core/PacketIO: Fixed SMSG_UPDATE_OBJECT fragment changes mask initialization (cherry picked from commit 0435f22d0d58589d0d6a4c9c764ce20a01e196e5) --- src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.cpp | 3 +++ src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.h | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.cpp b/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.cpp index 928fc525c70..c68a657c066 100644 --- a/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.cpp +++ b/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.cpp @@ -52,7 +52,10 @@ void EntityFragmentsHolder::Add(EntityFragment fragment, bool update) { UpdateableMasks[i] = 1 << maskIndex++; if (IsIndirectFragment(UpdateableIds[i])) + { + ContentsChangedMask |= UpdateableMasks[i]; // set the first bit to true to activate fragment UpdateableMasks[i] |= 1 << maskIndex++; + } } } diff --git a/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.h b/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.h index a98afa79a2d..42d1ec52063 100644 --- a/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.h +++ b/src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.h @@ -83,7 +83,7 @@ struct EntityFragmentsHolder std::array UpdateableIds = { EntityFragment::End, EntityFragment::End }; std::array UpdateableMasks = { }; uint8 UpdateableCount = 0; - uint8 ContentsChangedMask = CGObjectActiveMask; + uint8 ContentsChangedMask = 0; void Add(EntityFragment fragment, bool update); void Remove(EntityFragment fragment); -- cgit v1.2.3