diff options
Diffstat (limited to 'src/net/eathena/charserverhandler.cpp')
-rw-r--r-- | src/net/eathena/charserverhandler.cpp | 16 |
1 files changed, 16 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; |