summaryrefslogtreecommitdiff
path: root/src/net/eathena
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/eathena')
-rw-r--r--src/net/eathena/inventoryhandler.cpp10
-rw-r--r--src/net/eathena/inventoryhandler.h3
-rw-r--r--src/net/eathena/protocol.h1
3 files changed, 14 insertions, 0 deletions
diff --git a/src/net/eathena/inventoryhandler.cpp b/src/net/eathena/inventoryhandler.cpp
index 7666825de..610b27194 100644
--- a/src/net/eathena/inventoryhandler.cpp
+++ b/src/net/eathena/inventoryhandler.cpp
@@ -258,6 +258,16 @@ void InventoryHandler::insertCard(const int cardIndex,
"item index");
}
+void InventoryHandler::favoriteItem(const Item *const item,
+ const bool favorite) const
+{
+ MessageOut outMsg(CMSG_PLAYER_FAVORITE_ITEM);
+ outMsg.writeInt16(static_cast<int16_t>(item->getInvIndex()
+ + INVENTORY_OFFSET),
+ "item index");
+ outMsg.writeInt8(favorite, "favorite flag");
+}
+
void InventoryHandler::processPlayerEquipment(Net::MessageIn &msg)
{
BLOCK_START("InventoryHandler::processPlayerEquipment")
diff --git a/src/net/eathena/inventoryhandler.h b/src/net/eathena/inventoryhandler.h
index ae4f864d6..8f5280e2f 100644
--- a/src/net/eathena/inventoryhandler.h
+++ b/src/net/eathena/inventoryhandler.h
@@ -63,6 +63,9 @@ class InventoryHandler final : public MessageHandler,
void insertCard(const int cardIndex,
const int itemIndex) const override final;
+ void favoriteItem(const Item *const item,
+ const bool favorite) const override final;
+
protected:
void processPlayerEquipment(Net::MessageIn &msg);
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index 3889a2c1c..1a913b75d 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -259,6 +259,7 @@
#define CMSG_PLAYER_INSERT_CARD 0x017c
#define CMSG_PLAYER_VIEW_EQUIPMENT 0x02d6
#define CMSG_PLAYER_SET_EQUIPMENT_VISIBLE 0x02d8
+#define CMSG_PLAYER_FAVORITE_ITEM 0x0907
#define CMSG_ITEM_PICKUP 0x07e4
#define CMSG_PLAYER_CHANGE_DIR 0x0202