summaryrefslogtreecommitdiff
path: root/src/net/eathena
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-09-09 00:41:19 +0300
committerAndrei Karas <akaras@inbox.ru>2014-09-09 00:41:19 +0300
commit3d1770d40bb11292d79bbdf0a6c9e628509632d5 (patch)
tree3e3bf62a1821fb67dc59fd29d35e7d462be54714 /src/net/eathena
parentdf01c98c8a7c0b45de0b67cf484994e5886fef4d (diff)
downloadmanaverse-3d1770d40bb11292d79bbdf0a6c9e628509632d5.tar.gz
manaverse-3d1770d40bb11292d79bbdf0a6c9e628509632d5.tar.bz2
manaverse-3d1770d40bb11292d79bbdf0a6c9e628509632d5.tar.xz
manaverse-3d1770d40bb11292d79bbdf0a6c9e628509632d5.zip
eathena: add packet CMSG_SET_SHORTCUTS 0x02ba.
Diffstat (limited to 'src/net/eathena')
-rw-r--r--src/net/eathena/playerhandler.cpp12
-rw-r--r--src/net/eathena/playerhandler.h4
-rw-r--r--src/net/eathena/protocol.h1
3 files changed, 17 insertions, 0 deletions
diff --git a/src/net/eathena/playerhandler.cpp b/src/net/eathena/playerhandler.cpp
index 35759bfd6..d6ae04585 100644
--- a/src/net/eathena/playerhandler.cpp
+++ b/src/net/eathena/playerhandler.cpp
@@ -234,6 +234,18 @@ void PlayerHandler::updateStatus(const uint8_t status) const
outMsg.writeInt8(0);
}
+void PlayerHandler::setShortcut(const int idx,
+ const uint8_t type,
+ const int id,
+ const int level) const
+{
+ MessageOut outMsg(CMSG_SET_SHORTCUTS);
+ outMsg.writeInt16(idx, "index");
+ outMsg.writeInt8(type, "type");
+ outMsg.writeInt32(id, "id");
+ outMsg.writeInt16(level, "level");
+}
+
void PlayerHandler::processPlayerShortcuts(Net::MessageIn &msg)
{
for (int f = 0; f < 27; f ++)
diff --git a/src/net/eathena/playerhandler.h b/src/net/eathena/playerhandler.h
index cc6804164..38a6b3d25 100644
--- a/src/net/eathena/playerhandler.h
+++ b/src/net/eathena/playerhandler.h
@@ -59,6 +59,10 @@ class PlayerHandler final : public MessageHandler, public Ea::PlayerHandler
void requestOnlineList() const override final;
void respawn() const override final;
+ void setShortcut(const int idx,
+ const uint8_t type,
+ const int id,
+ const int level) const override final;
protected:
void processPlayerStatUpdate5(Net::MessageIn &msg);
diff --git a/src/net/eathena/protocol.h b/src/net/eathena/protocol.h
index db7ed985e..27e6d250d 100644
--- a/src/net/eathena/protocol.h
+++ b/src/net/eathena/protocol.h
@@ -306,6 +306,7 @@
#define CMSG_SOLVE_CHAR_NAME 0x0368
#define CMSG_IGNORE_ALL 0x00d0
#define CMSG_REQUEST_RANKS 0x097c
+#define CMSG_SET_SHORTCUTS 0x02ba
#define SMSG_SOLVE_CHAR_NAME 0x0194
#define SMSG_SKILL_CASTING 0x07fb