diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-09-24 11:39:45 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-09-24 11:39:45 +0300 |
commit | 0d588890a6cd3cc9034614504ae6f18b6c5f0682 (patch) | |
tree | be3a3935ae3159f86b015570c64f1e3e055b376e /src/net/eathena | |
parent | 03548e276d033939449abb9b3a94a57803a57964 (diff) | |
download | mv-0d588890a6cd3cc9034614504ae6f18b6c5f0682.tar.gz mv-0d588890a6cd3cc9034614504ae6f18b6c5f0682.tar.bz2 mv-0d588890a6cd3cc9034614504ae6f18b6c5f0682.tar.xz mv-0d588890a6cd3cc9034614504ae6f18b6c5f0682.zip |
eathena: add partial support for packet SMSG_BUYINGSTORE_OPEN 0x0810.
Diffstat (limited to 'src/net/eathena')
-rw-r--r-- | src/net/eathena/buyingstorehandler.cpp | 11 | ||||
-rw-r--r-- | src/net/eathena/buyingstorehandler.h | 3 | ||||
-rw-r--r-- | src/net/eathena/packets.h | 2 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 2 |
4 files changed, 17 insertions, 1 deletions
diff --git a/src/net/eathena/buyingstorehandler.cpp b/src/net/eathena/buyingstorehandler.cpp index cc3972d40..346f81b07 100644 --- a/src/net/eathena/buyingstorehandler.cpp +++ b/src/net/eathena/buyingstorehandler.cpp @@ -39,6 +39,7 @@ BuyingStoreHandler::BuyingStoreHandler() : { static const uint16_t _messages[] = { + SMSG_BUYINGSTORE_OPEN, 0 }; handledMessages = _messages; @@ -49,9 +50,19 @@ void BuyingStoreHandler::handleMessage(Net::MessageIn &msg) { switch (msg.getId()) { + case SMSG_BUYINGSTORE_OPEN: + processBuyingStoreOpen(msg); + break; + default: break; } } +void BuyingStoreHandler::processBuyingStoreOpen(Net::MessageIn &msg) +{ + // +++ need create store dialog + msg.readUInt8("slots"); +} + } // namespace EAthena diff --git a/src/net/eathena/buyingstorehandler.h b/src/net/eathena/buyingstorehandler.h index 0a0337939..2b64adf64 100644 --- a/src/net/eathena/buyingstorehandler.h +++ b/src/net/eathena/buyingstorehandler.h @@ -38,6 +38,9 @@ class BuyingStoreHandler final : public MessageHandler, A_DELETE_COPY(BuyingStoreHandler) void handleMessage(Net::MessageIn &msg) override final; + + protected: + void processBuyingStoreOpen(Net::MessageIn &msg); }; } // namespace EAthena diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h index 3f2da4d33..d12377763 100644 --- a/src/net/eathena/packets.h +++ b/src/net/eathena/packets.h @@ -216,7 +216,7 @@ int16_t packet_lengths[] = //0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 // #0x0800 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 20, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 3, 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, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, // #0x0840 diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index 5c57a7643..3fa1bbb5c 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -138,6 +138,8 @@ #define SMSG_GM_CHAT2 0x01c3 #define SMSG_WALK_RESPONSE 0x0087 +#define SMSG_BUYINGSTORE_OPEN 0x0810 + // Receiving a request to trade #define SMSG_TRADE_REQUEST 0x01f4 #define SMSG_TRADE_RESPONSE 0x00e7 |