summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/net/eathena/protocol.h1
-rw-r--r--src/net/eathena/tradehandler.cpp12
-rw-r--r--src/net/eathena/tradehandler.h2
3 files changed, 15 insertions, 0 deletions
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index da630fae0..12381a15e 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -128,6 +128,7 @@
// Receiving a request to trade
#define SMSG_TRADE_REQUEST 0x01f4
#define SMSG_TRADE_RESPONSE 0x00e7
+#define SMSG_TRADE_RESPONSE2 0x01f5
#define SMSG_TRADE_ITEM_ADD 0x00e9
#define SMSG_TRADE_ITEM_ADD_RESPONSE 0x01b1 /**< Not standard eAthena! */
#define SMSG_TRADE_OK 0x00ec
diff --git a/src/net/eathena/tradehandler.cpp b/src/net/eathena/tradehandler.cpp
index 0e893caf9..f73584deb 100644
--- a/src/net/eathena/tradehandler.cpp
+++ b/src/net/eathena/tradehandler.cpp
@@ -46,6 +46,7 @@ TradeHandler::TradeHandler() :
{
SMSG_TRADE_REQUEST,
SMSG_TRADE_RESPONSE,
+ SMSG_TRADE_RESPONSE2,
SMSG_TRADE_ITEM_ADD,
SMSG_TRADE_ITEM_ADD_RESPONSE,
SMSG_TRADE_OK,
@@ -70,6 +71,10 @@ void TradeHandler::handleMessage(Net::MessageIn &msg)
processTradeResponse(msg);
break;
+ case SMSG_TRADE_RESPONSE2:
+ processTradeResponse2(msg);
+ break;
+
case SMSG_TRADE_ITEM_ADD:
processTradeItemAdd(msg);
break;
@@ -154,4 +159,11 @@ void TradeHandler::processTradeRequest(Net::MessageIn &msg) const
processTradeRequestContinue(partner);
}
+void TradeHandler::processTradeResponse2(Net::MessageIn &msg) const
+{
+ msg.readUInt8("type");
+ msg.readInt32("char id");
+ msg.readInt16("base level");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/tradehandler.h b/src/net/eathena/tradehandler.h
index eb50d65c0..f112c8426 100644
--- a/src/net/eathena/tradehandler.h
+++ b/src/net/eathena/tradehandler.h
@@ -56,6 +56,8 @@ class TradeHandler final : public MessageHandler, public Ea::TradeHandler
protected:
void processTradeRequest(Net::MessageIn &msg) const;
+
+ void processTradeResponse2(Net::MessageIn &msg) const;
};
} // namespace EAthena