aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-11-02 12:32:21 +0100
committerOvahlord <dreadkiller@gmx.de>2025-04-05 11:59:13 +0200
commit1f7643db035c5ee1afcde359baebe38cbb59ad04 (patch)
tree1db530a6fc4a49a1f88ee3ff603ed598122d66e7 /src
parent2626412bc106f99727fa047154459172b569f52f (diff)
Core/PacketIO: Fixed SMSG_UPDATE_OBJECT fragment changes mask initialization
(cherry picked from commit 0435f22d0d58589d0d6a4c9c764ce20a01e196e5)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.cpp3
-rw-r--r--src/server/game/Entities/Object/Updates/WowCSEntityDefinitions.h2
2 files changed, 4 insertions, 1 deletions
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<EntityFragment, 2> UpdateableIds = { EntityFragment::End, EntityFragment::End };
std::array<uint8, 2> UpdateableMasks = { };
uint8 UpdateableCount = 0;
- uint8 ContentsChangedMask = CGObjectActiveMask;
+ uint8 ContentsChangedMask = 0;
void Add(EntityFragment fragment, bool update);
void Remove(EntityFragment fragment);