diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-03-11 00:03:53 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-03-11 00:03:53 +0300 |
commit | 42995dce106291da04f0e23c00668e0d2afccb08 (patch) | |
tree | 93ce0823a22e2ff3ac9c72a86e53529e64641201 | |
parent | ab0224bbddaa1aef3303f9955356e0b4be40f5b0 (diff) | |
download | plus-42995dce106291da04f0e23c00668e0d2afccb08.tar.gz plus-42995dce106291da04f0e23c00668e0d2afccb08.tar.bz2 plus-42995dce106291da04f0e23c00668e0d2afccb08.tar.xz plus-42995dce106291da04f0e23c00668e0d2afccb08.zip |
eathena: add partial support for packet SMSG_PLAYER_IDENTIFY_LIST 0x0177.
-rw-r--r-- | src/net/eathena/inventoryhandler.cpp | 15 | ||||
-rw-r--r-- | src/net/eathena/inventoryhandler.h | 2 | ||||
-rw-r--r-- | src/net/eathena/protocol.h | 1 |
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 |