summaryrefslogtreecommitdiff
path: root/src/net/eathena/inventoryhandler.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-03-11 19:30:23 +0300
committerAndrei Karas <akaras@inbox.ru>2015-03-11 19:30:23 +0300
commitb4024f971a41efebff9bbe53f71e78be6eda46af (patch)
tree0bd54c4c3e10ac63f316bc8b4f24510895b08203 /src/net/eathena/inventoryhandler.cpp
parentb7f3032a97ab619df3f03f7c5828575a884ba635 (diff)
downloadmanaplus-b4024f971a41efebff9bbe53f71e78be6eda46af.tar.gz
manaplus-b4024f971a41efebff9bbe53f71e78be6eda46af.tar.bz2
manaplus-b4024f971a41efebff9bbe53f71e78be6eda46af.tar.xz
manaplus-b4024f971a41efebff9bbe53f71e78be6eda46af.zip
eathena: add partial support for packet SMSG_PLAYER_REPAIR_LIST 0x01fc.
Diffstat (limited to 'src/net/eathena/inventoryhandler.cpp')
-rw-r--r--src/net/eathena/inventoryhandler.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/net/eathena/inventoryhandler.cpp b/src/net/eathena/inventoryhandler.cpp
index ca354bf6c..0aa9f1af2 100644
--- a/src/net/eathena/inventoryhandler.cpp
+++ b/src/net/eathena/inventoryhandler.cpp
@@ -107,6 +107,7 @@ InventoryHandler::InventoryHandler() :
SMSG_PLAYER_IDENTIFY_LIST,
SMSG_PLAYER_IDENTIFIED,
SMSG_PLAYER_REFINE,
+ SMSG_PLAYER_REPAIR_LIST,
0
};
handledMessages = _messages;
@@ -243,6 +244,10 @@ void InventoryHandler::handleMessage(Net::MessageIn &msg)
processPlayerRefine(msg);
break;
+ case SMSG_PLAYER_REPAIR_LIST:
+ processPlayerRepairList(msg);
+ break;
+
default:
break;
}
@@ -986,4 +991,20 @@ void InventoryHandler::processPlayerRefine(Net::MessageIn &msg)
msg.readInt16("val");
}
+void InventoryHandler::processPlayerRepairList(Net::MessageIn &msg)
+{
+ UNIMPLIMENTEDPACKET;
+
+ const int count = (msg.readInt16("len" - 4)) / 13;
+ for (int f = 0; f < count; f ++)
+ {
+ msg.readInt16("index");
+ msg.readInt16("item id");
+ msg.readUInt8("refine");
+ for (int d = 0; d < 4; d ++)
+ msg.readInt16("card");
+ }
+ menu = MenuType::RepairWespon;
+}
+
} // namespace EAthena