mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-11-14 15:57:13 +00:00
fix: send reputation in the character data as live did, as LDF type 8
Live sent the reputation key as a 64-bit number (LDF type 8) in all 451 character data packets looked at; the server sent it as an object ID (type 9). It now goes out as type 8 with the other keys live sent; the packet without them keeps type 9, and both are read. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
This commit is contained in:
@@ -248,7 +248,9 @@ namespace ClientPackets {
|
||||
ldfData.Insert<u16string>(u"name", name);
|
||||
ldfData.Insert<int32_t>(u"gmlevel", static_cast<int32_t>(gmLevel));
|
||||
ldfData.Insert<int32_t>(u"chatmode", chatMode);
|
||||
ldfData.Insert<int64_t>(u"reputation", reputation);
|
||||
// Live sent reputation as LDF type 8 (451 of 451 character data packets); the old packet has it as type 9
|
||||
if (sendWorldKeys) ldfData.Insert<uint64_t>(u"reputation", static_cast<uint64_t>(reputation));
|
||||
else ldfData.Insert<int64_t>(u"reputation", reputation);
|
||||
ldfData.Insert<int32_t>(u"propertycloneid", propertyCloneID);
|
||||
if (txfring) ldfData.Insert<bool>(u"txfring", true);
|
||||
if (sendWorldKeys) {
|
||||
@@ -373,6 +375,7 @@ namespace ClientPackets {
|
||||
uint64_t value{};
|
||||
VALIDATE_READ(data.Read(value));
|
||||
if (key == u"levelid") { levelID = value; sendWorldKeys = true; }
|
||||
else if (key == u"reputation") reputation = static_cast<int64_t>(value);
|
||||
break;
|
||||
}
|
||||
case LDF_TYPE_FLOAT: {
|
||||
|
||||
Reference in New Issue
Block a user