diff options
author | Andrei Karas <akaras@inbox.ru> | 2019-03-29 22:17:06 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2019-04-07 22:38:35 +0300 |
commit | 0a5ee140c74989d5fb2cbc9a22150ff66bbcfb07 (patch) | |
tree | 642ca0bab8388ed480c4e78e9ced7d631f6c10fc /src | |
parent | 83a26970a7e314872a360bac8d4c5408d5120c51 (diff) | |
download | hercules-0a5ee140c74989d5fb2cbc9a22150ff66bbcfb07.tar.gz hercules-0a5ee140c74989d5fb2cbc9a22150ff66bbcfb07.tar.bz2 hercules-0a5ee140c74989d5fb2cbc9a22150ff66bbcfb07.tar.xz hercules-0a5ee140c74989d5fb2cbc9a22150ff66bbcfb07.zip |
Add chat command /resetcooltime
Add packet CZ_COOLDOWN_RESET.
Diffstat (limited to 'src')
-rw-r--r-- | src/map/clif.c | 9 | ||||
-rw-r--r-- | src/map/clif.h | 1 | ||||
-rw-r--r-- | src/map/packets.h | 5 | ||||
-rw-r--r-- | src/map/packets_struct.h | 7 |
4 files changed, 22 insertions, 0 deletions
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 |