summaryrefslogtreecommitdiff
path: root/src/net/tmwa
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/tmwa')
-rw-r--r--src/net/tmwa/buysellhandler.cpp19
-rw-r--r--src/net/tmwa/buysellhandler.h4
2 files changed, 23 insertions, 0 deletions
diff --git a/src/net/tmwa/buysellhandler.cpp b/src/net/tmwa/buysellhandler.cpp
index 7a8165c89..bbf5ca3e7 100644
--- a/src/net/tmwa/buysellhandler.cpp
+++ b/src/net/tmwa/buysellhandler.cpp
@@ -198,4 +198,23 @@ void BuySellHandler::sendBuyRequest(const std::string &nick,
chatWindow->addWhisper(nick, data, ChatMsgType::BY_PLAYER);
}
+void BuySellHandler::sendSellRequest(const std::string &nick,
+ const ShopItem *const item,
+ const int amount) const
+{
+ if (!chatWindow || nick.empty() || !item ||
+ amount < 1 || amount > item->getQuantity())
+ {
+ return;
+ }
+
+ const std::string data = strprintf("!sellitem %d %d %d",
+ item->getId(), item->getPrice(), amount);
+
+ if (config.getBoolValue("hideShopMessages"))
+ chatHandler->privateMessage(nick, data);
+ else
+ chatWindow->addWhisper(nick, data, ChatMsgType::BY_PLAYER);
+}
+
} // namespace TmwAthena
diff --git a/src/net/tmwa/buysellhandler.h b/src/net/tmwa/buysellhandler.h
index f32d85669..8730cab7e 100644
--- a/src/net/tmwa/buysellhandler.h
+++ b/src/net/tmwa/buysellhandler.h
@@ -49,6 +49,10 @@ class BuySellHandler final : public MessageHandler, public Ea::BuySellHandler
const ShopItem *const item,
const int amount) const override final;
+ void sendSellRequest(const std::string &nick,
+ const ShopItem *const item,
+ const int amount) const override final;
+
protected:
static void processNpcBuy(Net::MessageIn &msg);