diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-09-11 19:56:17 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-09-11 19:56:17 +0300 |
commit | c4a5e0d7762aec9654e851cdae8ff57a06be881c (patch) | |
tree | fc387acb3a40dd8a44ce71d6e634a8f7c63cc8ac | |
parent | ffac5076dcc94ee88ce68d351de071ab8f830a77 (diff) | |
download | manaplus-c4a5e0d7762aec9654e851cdae8ff57a06be881c.tar.gz manaplus-c4a5e0d7762aec9654e851cdae8ff57a06be881c.tar.bz2 manaplus-c4a5e0d7762aec9654e851cdae8ff57a06be881c.tar.xz manaplus-c4a5e0d7762aec9654e851cdae8ff57a06be881c.zip |
eathena: add partial support for packet CMSG_ADMIN_GET_LOGIN_ACK 0x01e0.
-rw-r--r-- | src/net/eathena/adminhandler.cpp | 10 | ||||
-rw-r--r-- | src/net/eathena/adminhandler.h | 3 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 1 |
3 files changed, 14 insertions, 0 deletions
diff --git a/src/net/eathena/adminhandler.cpp b/src/net/eathena/adminhandler.cpp index 0d677a413..4e33c8f84 100644 --- a/src/net/eathena/adminhandler.cpp +++ b/src/net/eathena/adminhandler.cpp @@ -50,6 +50,7 @@ AdminHandler::AdminHandler() : static const uint16_t _messages[] = { SMSG_ADMIN_KICK_ACK, + CMSG_ADMIN_GET_LOGIN_ACK, 0 }; handledMessages = _messages; @@ -66,6 +67,9 @@ void AdminHandler::handleMessage(Net::MessageIn &msg) else NotifyManager::notify(NotifyTypes::KICK_SUCCEED); break; + case CMSG_ADMIN_GET_LOGIN_ACK: + processAdminGetLoginAck(msg); + break; default: break; } @@ -162,4 +166,10 @@ void AdminHandler::requestLogin(const Being *const being) const outMsg.writeInt32(being->getId(), "account id"); } +void AdminHandler::processAdminGetLoginAck(Net::MessageIn &msg) +{ + msg.readInt32("account id"); + msg.readString(24, "login"); +} + } // namespace EAthena diff --git a/src/net/eathena/adminhandler.h b/src/net/eathena/adminhandler.h index 59dec3cdf..2dd12f162 100644 --- a/src/net/eathena/adminhandler.h +++ b/src/net/eathena/adminhandler.h @@ -67,6 +67,9 @@ class AdminHandler final : public MessageHandler, public Ea::AdminHandler void muteName(const std::string &name) const override final; void requestLogin(const Being *const being) const override final; + + protected: + void processAdminGetLoginAck(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index d93d3698e..b057fbdb7 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -163,6 +163,7 @@ #define SMSG_PLAYER_STORAGE_CLOSE 0x00f8 /**< Storage access closed */ #define SMSG_ADMIN_KICK_ACK 0x00cd +#define CMSG_ADMIN_GET_LOGIN_ACK 0x01e0 #define SMSG_GUILD_CREATE_RESPONSE 0x0167 #define SMSG_GUILD_POSITION_INFO 0x016c |