summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/net/eathena/inventoryrecv.cpp9
-rw-r--r--src/net/eathena/inventoryrecv.h1
-rw-r--r--src/net/eathena/packetsin.inc2
3 files changed, 11 insertions, 1 deletions
diff --git a/src/net/eathena/inventoryrecv.cpp b/src/net/eathena/inventoryrecv.cpp
index d282af05e..b67300fa2 100644
--- a/src/net/eathena/inventoryrecv.cpp
+++ b/src/net/eathena/inventoryrecv.cpp
@@ -1180,4 +1180,13 @@ int InventoryRecv::getSlot(const int eAthenaSlot)
return CAST_S32(EQUIP_POINTS[position]);
}
+void InventoryRecv::processMergeItem(Net::MessageIn &msg)
+{
+ UNIMPLIMENTEDPACKET;
+
+ const int count = (msg.readInt16("len") - 4) / 2;
+ for (int f = 0; f < count; f ++)
+ msg.readInt16("inv index");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/inventoryrecv.h b/src/net/eathena/inventoryrecv.h
index d024c8362..6f45bc1b7 100644
--- a/src/net/eathena/inventoryrecv.h
+++ b/src/net/eathena/inventoryrecv.h
@@ -71,6 +71,7 @@ namespace EAthena
void processBindItem(Net::MessageIn &msg);
void processPlayerInventoryRemove(Net::MessageIn &msg);
void processSelectCart(Net::MessageIn &msg);
+ void processMergeItem(Net::MessageIn &msg);
int getSlot(const int eAthenaSlot) A_WARN_UNUSED;
} // namespace InventoryRecv
diff --git a/src/net/eathena/packetsin.inc b/src/net/eathena/packetsin.inc
index e0a365019..1cba2a987 100644
--- a/src/net/eathena/packetsin.inc
+++ b/src/net/eathena/packetsin.inc
@@ -481,7 +481,7 @@ else
packet(SMSG_SELECT_CART, 0x0000, 0, nullptr);
}
-packet(SMSG_MERGE_ITEM, 0x096d, -1, nullptr);
+packet(SMSG_MERGE_ITEM, 0x096d, -1, &InventoryRecv::processMergeItem);
packet(SMSG_ACK_MERGE_ITEMS, 0x096f, 7, nullptr);
// unused or not implimented packets