diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-09-05 22:40:22 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-09-06 01:18:58 +0300 |
commit | a55eae5cf0f031fcbb5be1f2c25226115d302b79 (patch) | |
tree | 9a85f037237cbc30e8e3c24d45809af6275124d8 /src/net | |
parent | 8dcda5453e7fec40b1f55a66bf5f60f1b8dbd833 (diff) | |
download | manaplus-a55eae5cf0f031fcbb5be1f2c25226115d302b79.tar.gz manaplus-a55eae5cf0f031fcbb5be1f2c25226115d302b79.tar.bz2 manaplus-a55eae5cf0f031fcbb5be1f2c25226115d302b79.tar.xz manaplus-a55eae5cf0f031fcbb5be1f2c25226115d302b79.zip |
eathena: impliment SMSG_CHAR_LOGIN2 0x082d.
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/eathena/charserverhandler.cpp | 16 | ||||
-rw-r--r-- | src/net/eathena/charserverhandler.h | 2 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/net/eathena/charserverhandler.cpp b/src/net/eathena/charserverhandler.cpp index a7f6fea68..28f3f59d4 100644 --- a/src/net/eathena/charserverhandler.cpp +++ b/src/net/eathena/charserverhandler.cpp @@ -71,6 +71,7 @@ CharServerHandler::CharServerHandler() : static const uint16_t _messages[] = { SMSG_CHAR_LOGIN, + SMSG_CHAR_LOGIN2, SMSG_CHAR_LOGIN_ERROR, SMSG_CHAR_CREATE_SUCCEEDED, SMSG_CHAR_CREATE_SUCCEEDED2, @@ -94,6 +95,10 @@ void CharServerHandler::handleMessage(Net::MessageIn &msg) processCharLogin(msg); break; + case SMSG_CHAR_LOGIN2: + processCharLogin2(msg); + break; + case SMSG_CHAR_LOGIN_ERROR: processCharLoginError(msg); break; @@ -322,6 +327,17 @@ void CharServerHandler::processCharLogin(Net::MessageIn &msg) client->setState(STATE_CHAR_SELECT); } +void CharServerHandler::processCharLogin2(Net::MessageIn &msg) +{ + msg.readInt16("len"); + msg.readUInt8("char slots"); + msg.readUInt8("left slots"); + msg.readUInt8("left slots"); + msg.readUInt8("char slots"); + msg.readUInt8("char slots"); + msg.skip(20, "unused"); +} + void CharServerHandler::processCharMapInfo(Net::MessageIn &restrict msg) { Network *const network = mNetwork; diff --git a/src/net/eathena/charserverhandler.h b/src/net/eathena/charserverhandler.h index 1f9cbbcfb..82e13c680 100644 --- a/src/net/eathena/charserverhandler.h +++ b/src/net/eathena/charserverhandler.h @@ -75,6 +75,8 @@ class CharServerHandler final : public MessageHandler, void processPincodeStatus(Net::MessageIn &msg); + static void processCharLogin2(Net::MessageIn &msg); + private: uint32_t mPinSeed; uint32_t mPinAccountId; |