From 18d2b7bb806d7e6147b9f6f4bd4e4cea83a078c4 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Thu, 10 Dec 2020 13:04:00 -0500 Subject: [PATCH] Core/Objects: Allow overriding number of bits used to write dynamic updatefield sizes Port From (https://github.com/TrinityCore/TrinityCore/commit/4ce6df1d2517959f39f32205cedc354ab0cbad73) --- Source/Game/Entities/Object/Update/UpdateField.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Source/Game/Entities/Object/Update/UpdateField.cs b/Source/Game/Entities/Object/Update/UpdateField.cs index 65be28a0e..1d4c3703a 100644 --- a/Source/Game/Entities/Object/Update/UpdateField.cs +++ b/Source/Game/Entities/Object/Update/UpdateField.cs @@ -170,9 +170,9 @@ namespace Game.Entities return (_updateMask[index / 32] & (1 << (index % 32))) != 0; } - public void WriteUpdateMask(WorldPacket data) + public void WriteUpdateMask(WorldPacket data, int bitsForSize = 32) { - data.WriteBits(_values.Count, 32); + data.WriteBits(_values.Count, bitsForSize); if (_values.Count > 32) { if (data.HasUnfinishedBitPack()) @@ -450,9 +450,9 @@ namespace Game.Entities _changesMask.Set(updateField.FirstElementBit + index); } - public void WriteCompleteDynamicFieldUpdateMask(int size, WorldPacket data) + public void WriteCompleteDynamicFieldUpdateMask(int size, WorldPacket data, int bitsForSize = 32) { - data.WriteBits(size, 32); + data.WriteBits(size, bitsForSize); if (size > 32) { if (data.HasUnfinishedBitPack())