From 007912d74e1e067ddd1566429aabfa5970b0525a Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 26 Jun 2019 22:57:13 +0300 Subject: Update packet CMSG_SET_SHORTCUTS --- src/net/eathena/packetsout.inc | 4 +++- src/net/eathena/playerhandler.cpp | 6 ++++++ src/net/eathena/playerhandler.h | 1 + src/net/playerhandler.h | 1 + src/net/tmwa/playerhandler.cpp | 1 + src/net/tmwa/playerhandler.h | 1 + 6 files changed, 13 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/net/eathena/packetsout.inc b/src/net/eathena/packetsout.inc index f96c2563f..5b905d20c 100644 --- a/src/net/eathena/packetsout.inc +++ b/src/net/eathena/packetsout.inc @@ -181,7 +181,7 @@ packet(CMSG_SOLVE_CHAR_NAME, 0x0193, 6, clif->pSolveCharName); packet(CMSG_IGNORE_ALL, 0x00d0, 3, clif->pPMIgnoreAll); packet(CMSG_IGNORE_NICK, 0x00cf, 27, clif->pPMIgnore); packet(CMSG_REQUEST_IGNORE_LIST, 0x00d3, 2, clif->pPMIgnoreList); -packet(CMSG_SET_SHORTCUTS, 0x02ba, 11, clif->pHotkey); +packet(CMSG_SET_SHORTCUTS, 0x02ba, 11, clif->pHotkey1); packet(CMSG_NPC_COMPLETE_PROGRESS_BAR, 0x02f1, 2, clif->pProgressbar); packet(CMSG_NPC_PRODUCE_MIX, 0x018e, 10, clif->pProduceMix); packet(CMSG_NPC_COOKING, 0x025b, 6, clif->pCooking); @@ -1632,12 +1632,14 @@ if (packetVersionMain >= 20190227) // 20190508 re if (packetVersionRe >= 20190508) { + packet(CMSG_SET_SHORTCUTS, 0x0b21, 13, clif->pHotkey2); packet(CMSG_SHORTCUTS_ROW_SHIFT, 0x0b22, 3, clif->pHotkeyRowShift2); } // 20190522 main if (packetVersionMain >= 20190522) { + packet(CMSG_SET_SHORTCUTS, 0x0b21, 13, clif->pHotkey2); packet(CMSG_SHORTCUTS_ROW_SHIFT, 0x0b22, 3, clif->pHotkeyRowShift2); } diff --git a/src/net/eathena/playerhandler.cpp b/src/net/eathena/playerhandler.cpp index 551ab0144..d3b0e6803 100644 --- a/src/net/eathena/playerhandler.cpp +++ b/src/net/eathena/playerhandler.cpp @@ -449,11 +449,17 @@ void PlayerHandler::updateStatus(const uint8_t status) const } void PlayerHandler::setShortcut(const int idx, + const int tab, const uint8_t type, const int id, const int level) const { createOutPacket(CMSG_SET_SHORTCUTS); + if (packetVersionMain >= 20190522 || + packetVersionRe >= 20190508) + { + outMsg.writeInt16(CAST_S16(tab), "tab"); + } outMsg.writeInt16(CAST_S16(idx), "index"); outMsg.writeInt8(CAST_S8(type), "type"); outMsg.writeInt32(id, "id"); diff --git a/src/net/eathena/playerhandler.h b/src/net/eathena/playerhandler.h index 26bb21f85..8609a3372 100644 --- a/src/net/eathena/playerhandler.h +++ b/src/net/eathena/playerhandler.h @@ -57,6 +57,7 @@ class PlayerHandler final : public Ea::PlayerHandler void requestOnlineList() const override final; void respawn() const override final; void setShortcut(const int idx, + const int tab, const uint8_t type, const int id, const int level) const override final; diff --git a/src/net/playerhandler.h b/src/net/playerhandler.h index 20e0b8855..d44e14860 100644 --- a/src/net/playerhandler.h +++ b/src/net/playerhandler.h @@ -84,6 +84,7 @@ class PlayerHandler notfinal virtual void updateStatus(const uint8_t status) const = 0; virtual void setShortcut(const int idx, + const int tab, const uint8_t type, const int id, const int level) const = 0; diff --git a/src/net/tmwa/playerhandler.cpp b/src/net/tmwa/playerhandler.cpp index e172b5096..1569ba0ac 100644 --- a/src/net/tmwa/playerhandler.cpp +++ b/src/net/tmwa/playerhandler.cpp @@ -182,6 +182,7 @@ void PlayerHandler::updateStatus(const uint8_t status A_UNUSED) const } void PlayerHandler::setShortcut(const int idx A_UNUSED, + const int tab A_UNUSED, const uint8_t type A_UNUSED, const int id A_UNUSED, const int level A_UNUSED) const diff --git a/src/net/tmwa/playerhandler.h b/src/net/tmwa/playerhandler.h index 194faaa9d..0f7a394b9 100644 --- a/src/net/tmwa/playerhandler.h +++ b/src/net/tmwa/playerhandler.h @@ -58,6 +58,7 @@ class PlayerHandler final : public Ea::PlayerHandler void respawn() const override final; void setShortcut(const int idx, + const int tab, const uint8_t type, const int id, const int level) const override final; -- cgit v1.2.3-60-g2f50