aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-11-02 12:32:21 +0100
committerShauren <shauren.trinity@gmail.com>2024-11-02 12:32:21 +0100
commit0435f22d0d58589d0d6a4c9c764ce20a01e196e5 (patch)
tree7ff5b700609a6b390fd93d5a5e0f218d9fb3f155
parent05c8ad26c2f8c397ffcad743b1825bd47f719037 (diff)
Core/PacketIO: Fixed SMSG_UPDATE_OBJECT fragment changes mask initialization
-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);