diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-10-07 21:32:06 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-10-07 21:32:06 +0300 |
commit | d91a8fd5d574454265c9a6088f7aa089d7905ba0 (patch) | |
tree | 9d4398e2dfad3b17c2d80e078f58293afe6d8698 /src/net | |
parent | c277f3e829217cd7469a4a5c742ef617a57e8e3f (diff) | |
download | plus-d91a8fd5d574454265c9a6088f7aa089d7905ba0.tar.gz plus-d91a8fd5d574454265c9a6088f7aa089d7905ba0.tar.bz2 plus-d91a8fd5d574454265c9a6088f7aa089d7905ba0.tar.xz plus-d91a8fd5d574454265c9a6088f7aa089d7905ba0.zip |
eathena: add partial support for packet SMSG_FAMILY_DIVORCED 0x0205.
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/eathena/familyhandler.cpp | 10 | ||||
-rw-r--r-- | src/net/eathena/familyhandler.h | 2 | ||||
-rw-r--r-- | src/net/eathena/packets.h | 2 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 1 |
4 files changed, 14 insertions, 1 deletions
diff --git a/src/net/eathena/familyhandler.cpp b/src/net/eathena/familyhandler.cpp index d32ce8409..950762573 100644 --- a/src/net/eathena/familyhandler.cpp +++ b/src/net/eathena/familyhandler.cpp @@ -41,6 +41,7 @@ FamilyHandler::FamilyHandler() : { SMSG_FAMILY_ASK_FOR_CHILD, SMSG_FAMILY_CALL_PARTNER, + SMSG_FAMILY_DIVORCED, 0 }; handledMessages = _messages; @@ -59,6 +60,10 @@ void FamilyHandler::handleMessage(Net::MessageIn &msg) processCallPartner(msg); break; + case SMSG_FAMILY_DIVORCED: + processDivorced(msg); + break; + default: break; } @@ -93,4 +98,9 @@ void FamilyHandler::askForChildReply(const bool accept) outMsg.writeInt32(accept ? 0: 1, "result"); } +void FamilyHandler::processDivorced(Net::MessageIn &msg) +{ + msg.readString(24, "name"); +} + } // namespace EAthena diff --git a/src/net/eathena/familyhandler.h b/src/net/eathena/familyhandler.h index 90a6f4afa..e2c5be154 100644 --- a/src/net/eathena/familyhandler.h +++ b/src/net/eathena/familyhandler.h @@ -46,6 +46,8 @@ class FamilyHandler final : public MessageHandler, void processCallPartner(Net::MessageIn &msg); + void processDivorced(Net::MessageIn &msg); + private: int mParent1; int mParent2; diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h index 08859997b..93252025c 100644 --- a/src/net/eathena/packets.h +++ b/src/net/eathena/packets.h @@ -83,7 +83,7 @@ int16_t packet_lengths[] = //0 1 2 3 4 5 6 7 8 9 a b c d e f //0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 // #0x0200 - 26, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 19, 10, 0, 0, 0, + 26, 0, 0, 0, 18, 26, 0, 0, 0, 0, 0, 19, 10, 0, 0, 0, 22, -1, 16, 0, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 122, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 19, 71, 5, 12, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index ae1bec131..65bc4c2f5 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -237,6 +237,7 @@ #define SMSG_FAMILY_ASK_FOR_CHILD 0x01f6 #define SMSG_FAMILY_CALL_PARTNER 0x01e6 +#define SMSG_FAMILY_DIVORCED 0x0205 #define SMSG_PET_MESSAGE 0x01aa #define SMSG_PET_ROULETTE 0x01a0 |