summaryrefslogtreecommitdiff
path: root/src/net
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-03-11 00:03:53 +0300
committerAndrei Karas <akaras@inbox.ru>2015-03-11 00:03:53 +0300
commit42995dce106291da04f0e23c00668e0d2afccb08 (patch)
tree93ce0823a22e2ff3ac9c72a86e53529e64641201 /src/net
parentab0224bbddaa1aef3303f9955356e0b4be40f5b0 (diff)
downloadmv-42995dce106291da04f0e23c00668e0d2afccb08.tar.gz
mv-42995dce106291da04f0e23c00668e0d2afccb08.tar.bz2
mv-42995dce106291da04f0e23c00668e0d2afccb08.tar.xz
mv-42995dce106291da04f0e23c00668e0d2afccb08.zip
eathena: add partial support for packet SMSG_PLAYER_IDENTIFY_LIST 0x0177.
Diffstat (limited to 'src/net')
-rw-r--r--src/net/eathena/inventoryhandler.cpp15
-rw-r--r--src/net/eathena/inventoryhandler.h2
-rw-r--r--src/net/eathena/protocol.h1
3 files changed, 18 insertions, 0 deletions
diff --git a/src/net/eathena/inventoryhandler.cpp b/src/net/eathena/inventoryhandler.cpp
index 28518eb85..e936955e1 100644
--- a/src/net/eathena/inventoryhandler.cpp
+++ b/src/net/eathena/inventoryhandler.cpp
@@ -104,6 +104,7 @@ InventoryHandler::InventoryHandler() :
SMSG_PLAYER_CART_EQUIP,
SMSG_PLAYER_CART_ITEMS,
SMSG_PLAYER_CART_REMOVE,
+ SMSG_PLAYER_IDENTIFY_LIST,
0
};
handledMessages = _messages;
@@ -228,6 +229,10 @@ void InventoryHandler::handleMessage(Net::MessageIn &msg)
processPlayerCartRemove(msg);
break;
+ case SMSG_PLAYER_IDENTIFY_LIST:
+ processPlayerIdentifyList(msg);
+ break;
+
default:
break;
}
@@ -944,4 +949,14 @@ void InventoryHandler::processPlayerCartRemove(Net::MessageIn &msg)
BLOCK_END("InventoryHandler::processPlayerCartRemove")
}
+void InventoryHandler::processPlayerIdentifyList(Net::MessageIn &msg)
+{
+ UNIMPLIMENTEDPACKET;
+
+ menu = MenuType::Identify;
+ const int count = msg.readInt16("len") - 4;
+ for (int f = 0; f < count; f ++)
+ msg.readInt16("inv index");
+}
+
} // namespace EAthena
diff --git a/src/net/eathena/inventoryhandler.h b/src/net/eathena/inventoryhandler.h
index b25c8992c..b65ebdba9 100644
--- a/src/net/eathena/inventoryhandler.h
+++ b/src/net/eathena/inventoryhandler.h
@@ -115,6 +115,8 @@ class InventoryHandler final : public MessageHandler,
static void processPlayerCartRemove(Net::MessageIn &msg);
+ static void processPlayerIdentifyList(Net::MessageIn &msg);
+
static Ea::InventoryItems mCartItems;
};
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index 5994e8e11..e9f045341 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -72,6 +72,7 @@
#define SMSG_PLAYER_INVENTORY_REMOVE 0x00af
#define SMSG_PLAYER_INVENTORY_REMOVE2 0x07fa
#define SMSG_PLAYER_INVENTORY_USE 0x01c8
+#define SMSG_PLAYER_IDENTIFY_LIST 0x0177
#define SMSG_PLAYER_CART_ADD 0x01c5
#define SMSG_PLAYER_CART_ITEMS 0x0993
#define SMSG_PLAYER_CART_EQUIP 0x0994