diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-09-15 21:11:10 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-09-15 21:11:10 +0300 |
commit | c259c8285f394a56a42fb07eb2aa2e033b346954 (patch) | |
tree | 2c8343800fbc8201a127f011fc6f3379d67b6ab8 /src | |
parent | d276f218f8b1b06d088fe83ae5e11ab11deaa259 (diff) | |
download | mv-c259c8285f394a56a42fb07eb2aa2e033b346954.tar.gz mv-c259c8285f394a56a42fb07eb2aa2e033b346954.tar.bz2 mv-c259c8285f394a56a42fb07eb2aa2e033b346954.tar.xz mv-c259c8285f394a56a42fb07eb2aa2e033b346954.zip |
eathena: add partial support for packet SMSG_ASK_FOR_CHILD 0x01f6.
Diffstat (limited to 'src')
-rw-r--r-- | src/net/eathena/familyhandler.cpp | 12 | ||||
-rw-r--r-- | src/net/eathena/familyhandler.h | 3 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 2 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/net/eathena/familyhandler.cpp b/src/net/eathena/familyhandler.cpp index 3c5892aa1..44661a0a5 100644 --- a/src/net/eathena/familyhandler.cpp +++ b/src/net/eathena/familyhandler.cpp @@ -41,6 +41,7 @@ FamilyHandler::FamilyHandler() : { static const uint16_t _messages[] = { + SMSG_ASK_FOR_CHILD, 0 }; handledMessages = _messages; @@ -51,6 +52,10 @@ void FamilyHandler::handleMessage(Net::MessageIn &msg) { switch (msg.getId()) { + case SMSG_ASK_FOR_CHILD: + processAskForChild(msg); + break; + default: break; } @@ -65,4 +70,11 @@ void FamilyHandler::askForChild(const Being *const being) outMsg.writeInt32(being->getId()); } +void FamilyHandler::processAskForChild(Net::MessageIn &msg) +{ + msg.readInt32("account id who ask"); + msg.readInt32("acoount id for other parent"); + msg.readString(24, "name who ask"); +} + } // namespace EAthena diff --git a/src/net/eathena/familyhandler.h b/src/net/eathena/familyhandler.h index 170ca6351..f96f2aeac 100644 --- a/src/net/eathena/familyhandler.h +++ b/src/net/eathena/familyhandler.h @@ -40,6 +40,9 @@ class FamilyHandler final : public MessageHandler, void handleMessage(Net::MessageIn &msg) override final; void askForChild(const Being *const being) override final; + + protected: + void processAskForChild(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index 1be6d93ed..c0231aa54 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -212,6 +212,8 @@ #define SMSG_MAIL_OPEN_WINDOW 0x0260 +#define SMSG_ASK_FOR_CHILD 0x01f6 + #define SMSG_PET_MESSAGE 0x01aa /********************************** |