From 44fd3098a52556602c966303b224bd1496c3c0db Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 17 Apr 2018 23:13:10 +0300 Subject: Add packet CMSG_WINDOW_OPEN_REQUEST2 0x0a68. --- src/net/attendancehandler.h | 2 ++ src/net/eathena/attendancehandler.cpp | 9 +++++++++ src/net/eathena/attendancehandler.h | 2 ++ src/net/eathena/packetsout.inc | 12 ++++++++++++ src/net/tmwa/attendancehandler.cpp | 4 ++++ src/net/tmwa/attendancehandler.h | 2 ++ 6 files changed, 31 insertions(+) diff --git a/src/net/attendancehandler.h b/src/net/attendancehandler.h index 8f956eca2..f78b5b402 100644 --- a/src/net/attendancehandler.h +++ b/src/net/attendancehandler.h @@ -36,6 +36,8 @@ class AttendanceHandler notfinal virtual ~AttendanceHandler() { } + + virtual void openAttendanceWindow() const = 0; }; } // namespace Net diff --git a/src/net/eathena/attendancehandler.cpp b/src/net/eathena/attendancehandler.cpp index 0eef7ea1d..ea53b71ab 100644 --- a/src/net/eathena/attendancehandler.cpp +++ b/src/net/eathena/attendancehandler.cpp @@ -25,6 +25,8 @@ #include "debug.h" +extern int packetVersion; + namespace EAthena { @@ -38,5 +40,12 @@ AttendanceHandler::~AttendanceHandler() attendanceHandler = nullptr; } +void AttendanceHandler::openAttendanceWindow() const +{ + if (packetVersion < 20160323) + return; + createOutPacket(CMSG_WINDOW_OPEN_REQUEST2); + outMsg.writeInt8(5, "window type"); +} } // namespace EAthena diff --git a/src/net/eathena/attendancehandler.h b/src/net/eathena/attendancehandler.h index 363c1198c..458f97db1 100644 --- a/src/net/eathena/attendancehandler.h +++ b/src/net/eathena/attendancehandler.h @@ -33,6 +33,8 @@ class AttendanceHandler final : public Net::AttendanceHandler A_DELETE_COPY(AttendanceHandler) ~AttendanceHandler() override final; + + void openAttendanceWindow() const override final; }; } // namespace EAthena diff --git a/src/net/eathena/packetsout.inc b/src/net/eathena/packetsout.inc index 744a90955..174e4571d 100644 --- a/src/net/eathena/packetsout.inc +++ b/src/net/eathena/packetsout.inc @@ -331,6 +331,7 @@ packet(CMSG_MAIL2_OPEN_MAILBOX, 0x0000, 0, nullptr); packet(CMSG_MAIL2_CLOSE_MAILBOX, 0x0000, 0, nullptr); packet(CMSG_MAIL2_CANCEL_WRITE_MAIL, 0x0000, 0, nullptr); packet(CMSG_CLAN_MESSAGE, 0x0000, 0, nullptr); +packet(CMSG_WINDOW_OPEN_REQUEST2, 0x0000, 0, nullptr); #else // 20040713 if (packetVersion >= 20040713) @@ -1267,6 +1268,7 @@ if (packetVersion >= 20140326) packet(CMSG_MAIL2_CANCEL_WRITE_MAIL, 0x0a03, 2, clif->pRodexCancelWriteMail); } +// 20140416 if (packetVersion >= 20140416) { packet(CMSG_MAIL2_OPEN_WRITE_MAIL, 0x0a08, 26, clif->pRodexOpenWriteMail); @@ -1288,6 +1290,7 @@ if (packetVersion >= 20140605) packet(CMSG_ROULETTE_CLOSE, 0x0a1d, 14, clif->pRouletteClose); } +// 20140611 if (packetVersion >= 20140611) { // new packets @@ -1298,6 +1301,7 @@ if (packetVersion >= 20140611) packet(CMSG_ROULETTE_CLOSE, 0x0a1d, 2, clif->pRouletteClose); } +// 20140618 if (packetVersion >= 20140618) { packet(CMSG_ROULETTE_RECV_ITEM, 0x0a21, 3, clif->pRouletteRecvItem); @@ -1309,11 +1313,19 @@ if (packetVersion >= 20141119) packet(CMSG_QUICK_IDENTIFY_ITEM, 0x0a35, 4, clif->pOneClick_ItemIdentify); } +// 20151001 if (packetVersion >= 20151001) { packet(CMSG_CHAR_CREATE, 0x0a39, 36, chr->parse_char_create_new_char); } +// 20160323 +if (packetVersion >= 20160323) +{ + packet(CMSG_WINDOW_OPEN_REQUEST2, 0x0a68, 3, clif->pOpenUIRequest); +} + +// 20160330 if (packetVersion >= 20160330) { packet(CMSG_MAIL2_SEND_MAIL, 0x0a6e, -1, clif->pRodexSendMail); diff --git a/src/net/tmwa/attendancehandler.cpp b/src/net/tmwa/attendancehandler.cpp index 12749d325..b15a4ee31 100644 --- a/src/net/tmwa/attendancehandler.cpp +++ b/src/net/tmwa/attendancehandler.cpp @@ -35,4 +35,8 @@ AttendanceHandler::~AttendanceHandler() attendanceHandler = nullptr; } +void AttendanceHandler::openAttendanceWindow() const +{ +} + } // namespace TmwAthena diff --git a/src/net/tmwa/attendancehandler.h b/src/net/tmwa/attendancehandler.h index 3ec9d4b62..0434933d1 100644 --- a/src/net/tmwa/attendancehandler.h +++ b/src/net/tmwa/attendancehandler.h @@ -33,6 +33,8 @@ class AttendanceHandler final : public Net::AttendanceHandler A_DELETE_COPY(AttendanceHandler) ~AttendanceHandler() override final; + + void openAttendanceWindow() const override final; }; } // namespace TmwAthena -- cgit v1.2.3-70-g09d2