diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-01-07 14:12:55 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-01-07 14:12:55 +0300 |
commit | f52847a08113f09459d620cc5d91193b38d7a064 (patch) | |
tree | 277e94c02fb0f25f9db64bba18db352919a572b7 | |
parent | 9d195207af67df767233ff6128f5b1df0421f83e (diff) | |
download | manaplus-f52847a08113f09459d620cc5d91193b38d7a064.tar.gz manaplus-f52847a08113f09459d620cc5d91193b38d7a064.tar.bz2 manaplus-f52847a08113f09459d620cc5d91193b38d7a064.tar.xz manaplus-f52847a08113f09459d620cc5d91193b38d7a064.zip |
eathena: add packet CMSG_VENDING_LIST_REQ 0x0130.
-rw-r--r-- | src/net/eathena/protocol.h | 1 | ||||
-rw-r--r-- | src/net/eathena/vendinghandler.cpp | 11 | ||||
-rw-r--r-- | src/net/eathena/vendinghandler.h | 2 | ||||
-rw-r--r-- | src/net/tmwa/vendinghandler.cpp | 4 | ||||
-rw-r--r-- | src/net/tmwa/vendinghandler.h | 2 | ||||
-rw-r--r-- | src/net/vendinghandler.h | 4 |
6 files changed, 24 insertions, 0 deletions
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index a6f14c109..ff985053b 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -534,5 +534,6 @@ #define CMSG_AUCTION_BUY_SELL 0x025c #define CMSG_VENDING_CLOSE 0x012e +#define CMSG_VENDING_LIST_REQ 0x0130 #endif // NET_EATHENA_PROTOCOL_H diff --git a/src/net/eathena/vendinghandler.cpp b/src/net/eathena/vendinghandler.cpp index dd1d7e7cc..0b145e3e7 100644 --- a/src/net/eathena/vendinghandler.cpp +++ b/src/net/eathena/vendinghandler.cpp @@ -20,6 +20,8 @@ #include "net/eathena/vendinghandler.h" +#include "being/being.h" + #include "net/eathena/messageout.h" #include "net/eathena/protocol.h" @@ -157,4 +159,13 @@ void VendingHandler::close() const createOutPacket(CMSG_VENDING_CLOSE); } +void VendingHandler::open(const Being *const being) const +{ + if (!being) + return; + + createOutPacket(CMSG_VENDING_LIST_REQ); + outMsg.writeInt32(being->getId(), "account id"); +} + } // namespace EAthena diff --git a/src/net/eathena/vendinghandler.h b/src/net/eathena/vendinghandler.h index cf451e8fa..7e0bb8368 100644 --- a/src/net/eathena/vendinghandler.h +++ b/src/net/eathena/vendinghandler.h @@ -39,6 +39,8 @@ class VendingHandler final : public MessageHandler, void close() const override final; + void open(const Being *const being) const override final; + protected: static void processOpenReq(Net::MessageIn &msg); diff --git a/src/net/tmwa/vendinghandler.cpp b/src/net/tmwa/vendinghandler.cpp index 459acfaa5..b32238c1f 100644 --- a/src/net/tmwa/vendinghandler.cpp +++ b/src/net/tmwa/vendinghandler.cpp @@ -46,4 +46,8 @@ void VendingHandler::close() const { } +void VendingHandler::open(const Being *const being A_UNUSED) const +{ +} + } // namespace TmwAthena diff --git a/src/net/tmwa/vendinghandler.h b/src/net/tmwa/vendinghandler.h index 961f3c8df..1bbc42d06 100644 --- a/src/net/tmwa/vendinghandler.h +++ b/src/net/tmwa/vendinghandler.h @@ -39,6 +39,8 @@ class VendingHandler final : public MessageHandler, void handleMessage(Net::MessageIn &msg) override final; void close() const override final; + + void open(const Being *const being) const override final; }; } // namespace TmwAthena diff --git a/src/net/vendinghandler.h b/src/net/vendinghandler.h index e07e2c246..fb3ef4b4a 100644 --- a/src/net/vendinghandler.h +++ b/src/net/vendinghandler.h @@ -25,6 +25,8 @@ #include "localconsts.h" +class Being; + namespace Net { @@ -35,6 +37,8 @@ class VendingHandler notfinal { } virtual void close() const = 0; + + virtual void open(const Being *const being) const = 0; }; } // namespace Net |