diff options
author | Andrei Karas <akaras@inbox.ru> | 2018-01-05 19:52:46 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2018-01-05 19:52:46 +0300 |
commit | a94f1032a7eee07e25664738cb75aca4d90ca2db (patch) | |
tree | 1d9e7340ac4ba51e04b2cd82a5756e7b649562f8 /src/net | |
parent | 4d2e202ee0954f130c8533af3a8dd0fa571e5150 (diff) | |
download | plus-a94f1032a7eee07e25664738cb75aca4d90ca2db.tar.gz plus-a94f1032a7eee07e25664738cb75aca4d90ca2db.tar.bz2 plus-a94f1032a7eee07e25664738cb75aca4d90ca2db.tar.xz plus-a94f1032a7eee07e25664738cb75aca4d90ca2db.zip |
Add support for packets type flag.
For now supported flags for renewal and zero packets.
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/eathena/loginrecv.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/net/eathena/loginrecv.cpp b/src/net/eathena/loginrecv.cpp index 138881315..502e2d247 100644 --- a/src/net/eathena/loginrecv.cpp +++ b/src/net/eathena/loginrecv.cpp @@ -45,6 +45,10 @@ #include "debug.h" extern int packetVersion; +extern int packetsType; +extern bool packets_main; +extern bool packets_re; +extern bool packets_zero; extern int evolPacketOffset; namespace EAthena @@ -172,6 +176,17 @@ void LoginRecv::processServerVersion(Net::MessageIn &msg) { evolPacketOffset = msg.readInt16("evol packet offset"); } + if (serverVersion >= 20 && len >= 20) + { + packetsType = msg.readInt16("server packets type"); + packets_re = (packetsType & 1) ? true : false; + packets_zero = (packetsType & 2) ? true : false; + if (packets_re == false && + packets_zero == false) + { + packets_main = true; + } + } } else { |