mirror of
https://github.com/whoahq/whoa.git
synced 2026-11-12 09:15:01 +03:00
feat(object): implement SkipPartialObjectUpdate
This commit is contained in:
4 files changed
+19
-7
No files matched your search
@@ -229,3 +229,20 @@ int32_t FillInPartialObjectData(CGObject_C* object, WOWGUID guid, CDataStore* ms
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int32_t SkipPartialObjectUpdate(CDataStore* msg) {
|
||||
uint8_t changeMaskCount;
|
||||
uint32_t changeMasks[MAX_CHANGE_MASKS];
|
||||
if (!ExtractDirtyMasks(msg, &changeMaskCount, changeMasks)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
for (int32_t block = 0; block < changeMaskCount * 32; block++) {
|
||||
if (IsMaskBitSet(changeMasks, block)) {
|
||||
uint32_t blockValue;
|
||||
msg->Get(blockValue);
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -11,4 +11,6 @@ int32_t CallMirrorHandlers(CDataStore* msg, bool a2, WOWGUID guid);
|
||||
|
||||
int32_t FillInPartialObjectData(CGObject_C* object, WOWGUID guid, CDataStore* msg, bool forFullUpdate, bool zeroZeroBits);
|
||||
|
||||
int32_t SkipPartialObjectUpdate(CDataStore* msg);
|
||||
|
||||
#endif
|
||||
@@ -164,8 +164,3 @@ void InitObject(CGObject_C* object, uint32_t time, CClientObjCreate& objCreate)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int32_t SkipPartialObjectUpdate(CDataStore* msg) {
|
||||
// TODO
|
||||
return 0;
|
||||
}
|
||||
@@ -20,6 +20,4 @@ void HandleObjectOutOfRangePass2(CGObject_C* object);
|
||||
|
||||
void InitObject(CGObject_C* object, uint32_t time, CClientObjCreate& objCreate);
|
||||
|
||||
int32_t SkipPartialObjectUpdate(CDataStore* msg);
|
||||
|
||||
#endif
|
||||
Reference in new issue
Block a user