diff options
Diffstat (limited to 'src/net/eathena')
-rw-r--r-- | src/net/eathena/auctionhandler.cpp | 13 | ||||
-rw-r--r-- | src/net/eathena/auctionhandler.h | 3 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 1 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/net/eathena/auctionhandler.cpp b/src/net/eathena/auctionhandler.cpp index 679786bb6..bcdc94aea 100644 --- a/src/net/eathena/auctionhandler.cpp +++ b/src/net/eathena/auctionhandler.cpp @@ -20,6 +20,10 @@ #include "net/eathena/auctionhandler.h" +#include "item.h" + +#include "net/ea/eaprotocol.h" + #include "net/eathena/messageout.h" #include "net/eathena/protocol.h" @@ -106,4 +110,13 @@ void AuctionHandler::cancelRequest() const outMsg.writeInt16(0, "type"); // unused } +void AuctionHandler::setItem(const Item *const item, + const int amount) const +{ + createOutPacket(CMSG_AUCTION_SET_ITEM); + outMsg.writeInt16(static_cast<int16_t>( + item->getInvIndex() + INVENTORY_OFFSET), "index"); + outMsg.writeInt32(amount, "amount"); // always 1 +} + } // namespace EAthena diff --git a/src/net/eathena/auctionhandler.h b/src/net/eathena/auctionhandler.h index a4c166613..d1c4a2b53 100644 --- a/src/net/eathena/auctionhandler.h +++ b/src/net/eathena/auctionhandler.h @@ -38,6 +38,9 @@ class AuctionHandler final : public MessageHandler, public Net::AuctionHandler void cancelRequest() const override final; + void setItem(const Item *const item, + const int amount) const override final; + protected: static void processOpenWindow(Net::MessageIn &msg); diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h index b02b6e79c..e57cfd197 100644 --- a/src/net/eathena/protocol.h +++ b/src/net/eathena/protocol.h @@ -515,5 +515,6 @@ #define CMSG_FRIENDS_DELETE_PLAYER 0x020a #define CMSG_AUCTION_CANCEL_REQUEST 0x024b +#define CMSG_AUCTION_SET_ITEM 0x024c #endif // NET_EATHENA_PROTOCOL_H |