From 0d588890a6cd3cc9034614504ae6f18b6c5f0682 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 24 Sep 2014 11:39:45 +0300 Subject: eathena: add partial support for packet SMSG_BUYINGSTORE_OPEN 0x0810. --- src/net/eathena/buyingstorehandler.cpp | 11 +++++++++++ src/net/eathena/buyingstorehandler.h | 3 +++ src/net/eathena/packets.h | 2 +- src/net/eathena/protocol.h | 2 ++ 4 files changed, 17 insertions(+), 1 deletion(-) (limited to 'src/net/eathena') 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 -- cgit v1.2.3-70-g09d2