From 0a5ee140c74989d5fb2cbc9a22150ff66bbcfb07 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 29 Mar 2019 22:17:06 +0300 Subject: Add chat command /resetcooltime Add packet CZ_COOLDOWN_RESET. --- src/map/clif.c | 9 +++++++++ src/map/clif.h | 1 + src/map/packets.h | 5 +++++ src/map/packets_struct.h | 7 +++++++ 4 files changed, 22 insertions(+) diff --git a/src/map/clif.c b/src/map/clif.c index 85e1a192b..605362fc5 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -22193,6 +22193,14 @@ static int clif_pingTimerSub(struct map_session_data *sd, va_list ap) return 0; } +static void clif_parse_ResetCooldown(int fd, struct map_session_data *sd) __attribute__((nonnull (2))); +static void clif_parse_ResetCooldown(int fd, struct map_session_data *sd) +{ + char cmd[15]; + sprintf(cmd,"%ccddebug reset", atcommand->at_symbol); + atcommand->exec(fd, sd, cmd, true); +} + /*========================================== * Main client packet processing function *------------------------------------------*/ @@ -23386,4 +23394,5 @@ void clif_defaults(void) clif->ping = clif_ping; clif->pingTimer = clif_pingTimer; clif->pingTimerSub = clif_pingTimerSub; + clif->pResetCooldown = clif_parse_ResetCooldown; } diff --git a/src/map/clif.h b/src/map/clif.h index a9413465b..241214e8b 100644 --- a/src/map/clif.h +++ b/src/map/clif.h @@ -1585,6 +1585,7 @@ struct clif_interface { void (*ping) (struct map_session_data *sd); int (*pingTimer) (int tid, int64 tick, int id, intptr_t data); int (*pingTimerSub) (struct map_session_data *sd, va_list ap); + void (*pResetCooldown) (int fd, struct map_session_data *sd); }; #ifdef HERCULES_CORE diff --git a/src/map/packets.h b/src/map/packets.h index 279c19d93..bf80d96c7 100644 --- a/src/map/packets.h +++ b/src/map/packets.h @@ -1798,6 +1798,11 @@ packet(0x96e,clif->ackmergeitems); packet(0x0a77,clif->pCameraInfo); // CZ_CAMERA_INFO #endif +// all 20160622+ +#if PACKETVER >= 20160622 + packet(0x0a88,clif->pResetCooldown); +#endif + // 2017-02-28aRagexeRE #if PACKETVER >= 20170228 // new packets diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h index b12193997..109532c3e 100644 --- a/src/map/packets_struct.h +++ b/src/map/packets_struct.h @@ -3174,6 +3174,13 @@ struct PACKET_ZC_PING { DEFINE_PACKET_HEADER(ZC_PING, 0x0b1d); #endif +#if PACKETVER >= 20160622 +struct PACKET_CZ_COOLDOWN_RESET { + int16 packetType; +} __attribute__((packed)); +DEFINE_PACKET_HEADER(CZ_COOLDOWN_RESET, 0x0a88); +#endif + #if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute #pragma pack(pop) #endif // not NetBSD < 6 / Solaris -- cgit v1.2.3-70-g09d2