diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-03-12 17:55:17 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-03-12 17:55:17 +0300 |
commit | 2c08eba0c8abd2eb3c09b1a916a5f6693c6ae7c0 (patch) | |
tree | 3bf8614754934ff936f5b4910ffa1e7769b3c68b | |
parent | dca1d63c7734846844fd3d322d1b6927cfa7d913 (diff) | |
download | plus-2c08eba0c8abd2eb3c09b1a916a5f6693c6ae7c0.tar.gz plus-2c08eba0c8abd2eb3c09b1a916a5f6693c6ae7c0.tar.bz2 plus-2c08eba0c8abd2eb3c09b1a916a5f6693c6ae7c0.tar.xz plus-2c08eba0c8abd2eb3c09b1a916a5f6693c6ae7c0.zip |
eathena: add partial support for packet SMSG_MAIL_RETURN 0x0274.
-rw-r--r-- | src/net/eathena/mailhandler.cpp | 13 | ||||
-rw-r--r-- | src/net/eathena/mailhandler.h | 2 | ||||
-rw-r--r-- | src/net/eathena/packets.h | 2 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 1 |
4 files changed, 17 insertions, 1 deletions
diff --git a/src/net/eathena/mailhandler.cpp b/src/net/eathena/mailhandler.cpp index 44234cb04..cf4a0c290 100644 --- a/src/net/eathena/mailhandler.cpp +++ b/src/net/eathena/mailhandler.cpp @@ -47,6 +47,7 @@ MailHandler::MailHandler() : SMSG_MAIL_NEW_MAIL, SMSG_MAIL_SET_ATTACHMENT_ACK, SMSG_MAIL_DELETE_MAIL_ACK, + SMSG_MAIL_RETURN, 0 }; handledMessages = _messages; @@ -89,6 +90,10 @@ void MailHandler::handleMessage(Net::MessageIn &msg) processDeleteAck(msg); break; + case SMSG_MAIL_RETURN: + processMailReturn(msg); + break; + default: break; } @@ -194,6 +199,14 @@ void MailHandler::processDeleteAck(Net::MessageIn &msg) msg.readInt16("fail flag"); } +void MailHandler::processMailReturn(Net::MessageIn &msg) +{ + UNIMPLIMENTEDPACKET; + + msg.readInt32("message id"); + msg.readInt16("fail flag"); +} + void MailHandler::refresh() { createOutPacket(CMSG_MAIL_REFRESH_INBOX); diff --git a/src/net/eathena/mailhandler.h b/src/net/eathena/mailhandler.h index 0630b1988..92ecc9eef 100644 --- a/src/net/eathena/mailhandler.h +++ b/src/net/eathena/mailhandler.h @@ -72,6 +72,8 @@ class MailHandler final : public MessageHandler, public Net::MailHandler static void processSetAttachmentAck(Net::MessageIn &msg); static void processDeleteAck(Net::MessageIn &msg); + + static void processMailReturn(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h index 1f3804e7e..980bd1e7a 100644 --- a/src/net/eathena/packets.h +++ b/src/net/eathena/packets.h @@ -91,7 +91,7 @@ int16_t packet_lengths[] = -1, 0, -1, 0, 0, 3, 0, 0, 0, 3, 70, 0, 0, 0, 0, 0, 3, 0, -1, 3, 0, 5, 5, 8, 0, 0, -1, 0, 0, 4, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // #0x0280 0, 0, 0, 6, 14, 0, 0, -1, 0, 12, 18, 0, 0, 0, 4, 0, 4, 4, 0, 0, 0, 0, 0, 0, 8, 6, 0, 80, 0, -1, 0, 0, diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index 44517b6f6..bb8b8bfa0 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -315,6 +315,7 @@ #define SMSG_MAIL_SET_ATTACHMENT_ACK 0x0255 #define SMSG_MAIL_DELETE_MAIL_ACK 0x0257 #define SMSG_MAIL_OPEN_WINDOW 0x0260 +#define SMSG_MAIL_RETURN 0x0274 #define SMSG_FAMILY_ASK_FOR_CHILD 0x01f6 #define SMSG_FAMILY_CALL_PARTNER 0x01e6 |