From d9467cf2772464a05c08baabd3ffa3d9d396f2d6 Mon Sep 17 00:00:00 2001
From: Andrei Karas <akaras@inbox.ru>
Date: Tue, 6 Jan 2015 13:56:17 +0300
Subject: eathena: add partial support for packet SMSG_AUCTION_MESSAGE 0x0250.

---
 src/net/eathena/auctionhandler.cpp | 10 ++++++++++
 src/net/eathena/auctionhandler.h   |  2 ++
 src/net/eathena/packets.h          |  2 +-
 src/net/eathena/protocol.h         |  1 +
 4 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/src/net/eathena/auctionhandler.cpp b/src/net/eathena/auctionhandler.cpp
index bcdc94aea..bbc6258bb 100644
--- a/src/net/eathena/auctionhandler.cpp
+++ b/src/net/eathena/auctionhandler.cpp
@@ -42,6 +42,7 @@ AuctionHandler::AuctionHandler() :
         SMSG_AUCTION_OPEN_WINDOW,
         SMSG_AUCTION_RESULTS,
         SMSG_AUCTION_SET_ITEM,
+        SMSG_AUCTION_MESSAGE,
         0
     };
     handledMessages = _messages;
@@ -64,6 +65,10 @@ void AuctionHandler::handleMessage(Net::MessageIn &msg)
             processAuctionSetItem(msg);
             break;
 
+        case SMSG_AUCTION_MESSAGE:
+            processAuctionMessage(msg);
+            break;
+
         default:
             break;
     }
@@ -104,6 +109,11 @@ void AuctionHandler::processAuctionSetItem(Net::MessageIn &msg)
     msg.readUInt8("flag");
 }
 
+void AuctionHandler::processAuctionMessage(Net::MessageIn &msg)
+{
+    msg.readUInt8("message");
+}
+
 void AuctionHandler::cancelRequest() const
 {
     createOutPacket(CMSG_AUCTION_CANCEL_REQUEST);
diff --git a/src/net/eathena/auctionhandler.h b/src/net/eathena/auctionhandler.h
index d1c4a2b53..d784b5cf9 100644
--- a/src/net/eathena/auctionhandler.h
+++ b/src/net/eathena/auctionhandler.h
@@ -47,6 +47,8 @@ class AuctionHandler final : public MessageHandler, public Net::AuctionHandler
         static void processAuctionResults(Net::MessageIn &msg);
 
         static void processAuctionSetItem(Net::MessageIn &msg);
+
+        static void processAuctionMessage(Net::MessageIn &msg);
 };
 
 }  // namespace EAthena
diff --git a/src/net/eathena/packets.h b/src/net/eathena/packets.h
index 1cfb4c94b..305c5a945 100644
--- a/src/net/eathena/packets.h
+++ b/src/net/eathena/packets.h
@@ -89,7 +89,7 @@ int16_t packet_lengths[] =
  12,   0,   0,   0,   0,  -1,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
 // #0x0240
   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
-  0,   0,  -1,   0,   0,   0,   5,   0,   0,   0,   0,   0,   0,   0,   0,   6,
+  3,   0,  -1,   0,   0,   0,   5,   0,   0,   0,   0,   0,   0,   0,   0,   6,
   6,   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,   0,   0,   0,
 // #0x0280
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index e57cfd197..dc2061607 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -303,6 +303,7 @@
 #define SMSG_AUCTION_OPEN_WINDOW     0x025f
 #define SMSG_AUCTION_RESULTS         0x0252
 #define SMSG_AUCTION_SET_ITEM        0x0256
+#define SMSG_AUCTION_MESSAGE         0x0250
 
 #define SMSG_ELEMENTAL_UPDATE_STATUS 0x081e
 #define SMSG_ELEMENTAL_INFO          0x081d
-- 
cgit v1.2.3-70-g09d2