diff options
author | Andrei Karas <akaras@inbox.ru> | 2018-07-27 21:48:30 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2018-07-27 21:48:30 +0300 |
commit | c5bd488ce7a9b515cb5ea5008e9438cae65745f4 (patch) | |
tree | 30b14f3126b04b673b346d978a3ccf3783c17fe1 | |
parent | 6f539a2dbb38966fdb11da4b8ef0e7b3f4bc68c2 (diff) | |
download | manaplus-c5bd488ce7a9b515cb5ea5008e9438cae65745f4.tar.gz manaplus-c5bd488ce7a9b515cb5ea5008e9438cae65745f4.tar.bz2 manaplus-c5bd488ce7a9b515cb5ea5008e9438cae65745f4.tar.xz manaplus-c5bd488ce7a9b515cb5ea5008e9438cae65745f4.zip |
Fix packet SMSG_PARTY_INFO for 2017+ packet version.
-rw-r--r-- | src/net/eathena/partyrecv.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/net/eathena/partyrecv.cpp b/src/net/eathena/partyrecv.cpp index daef7a148..9333b3433 100644 --- a/src/net/eathena/partyrecv.cpp +++ b/src/net/eathena/partyrecv.cpp @@ -189,16 +189,18 @@ void PartyRecv::processPartyInfo(Net::MessageIn &msg) } int partySize = 0; - int offset = 0; - if (msg.getVersion() >= 20170502) + const int offset = 28; + if (msg.getVersion() >= 20171207) + { + partySize = 4 + 4 + 24 + 16 + 1 + 1 + 2 + 2; + } + else if (msg.getVersion() >= 20170502) { - partySize = 50; - offset = 28 + 6; + partySize = 4 + 24 + 16 + 1 + 1 + 2 + 2; } else { - partySize = 46; - offset = 28; + partySize = 4 + 24 + 16 + 1 + 1; } const int count = (length - offset) / partySize; |