diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-30 19:28:41 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-30 19:28:41 +0000 |
commit | c8391c9c07abd235b2d40d8cfec39d62827706a7 (patch) | |
tree | d28df1f57382478a6b28f6a60f1f63bb44c44171 /src/map/clif.c | |
parent | de96c0071f2e9a2c0a97dca96a34620b9ca0473b (diff) | |
download | hercules-c8391c9c07abd235b2d40d8cfec39d62827706a7.tar.gz hercules-c8391c9c07abd235b2d40d8cfec39d62827706a7.tar.bz2 hercules-c8391c9c07abd235b2d40d8cfec39d62827706a7.tar.xz hercules-c8391c9c07abd235b2d40d8cfec39d62827706a7.zip |
- Fixed Absorb Spirit Spheres
- Added battle_config min_chat_delay (default 0) specifies in ms what is the min delay between player sent chats (whisper/global/party/guild). Messages that exceed this threshold are silently ignored for now (perhaps need to add a "DON'T SPAM" reply to the player?)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6859 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/clif.c')
-rw-r--r-- | src/map/clif.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 677bb3ddd..8fe61ae46 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -8623,6 +8623,13 @@ void clif_parse_GlobalMessage(int fd, struct map_session_data *sd) { // S 008c < (sd->sc.data[SC_BERSERK].timer != -1 || sd->sc.data[SC_NOCHAT].timer != -1 ))
return;
+ if (battle_config.min_chat_delay)
+ { //[Skotlex]
+ if (DIFF_TICK(sd->cantalk_tick, gettick()) > 0)
+ return;
+ sd->cantalk_tick = gettick() + battle_config.min_chat_delay;
+ }
+
if (RFIFOW(fd,2)+4 < 128)
buf = buf2; //Use a static buffer.
else
@@ -8961,6 +8968,13 @@ void clif_parse_Wis(int fd, struct map_session_data *sd) { // S 0096 <len>.w <ni (sd->sc.data[SC_BERSERK].timer!=-1 || sd->sc.data[SC_NOCHAT].timer != -1))
return;
+ if (battle_config.min_chat_delay)
+ { //[Skotlex]
+ if (DIFF_TICK(sd->cantalk_tick, gettick()) > 0)
+ return;
+ sd->cantalk_tick = gettick() + battle_config.min_chat_delay;
+ }
+
memcpy(&target,RFIFOP(fd, 4),NAME_LENGTH);
target[NAME_LENGTH]='\0';
@@ -10229,6 +10243,13 @@ void clif_parse_PartyMessage(int fd, struct map_session_data *sd) { ))
return;
+ if (battle_config.min_chat_delay)
+ { //[Skotlex]
+ if (DIFF_TICK(sd->cantalk_tick, gettick()) > 0)
+ return;
+ sd->cantalk_tick = gettick() + battle_config.min_chat_delay;
+ }
+
party_send_message(sd, (char*)RFIFOP(fd,4), RFIFOW(fd,2)-4);
}
@@ -10442,6 +10463,13 @@ void clif_parse_GuildMessage(int fd,struct map_session_data *sd) { ))
return;
+ if (battle_config.min_chat_delay)
+ { //[Skotlex]
+ if (DIFF_TICK(sd->cantalk_tick, gettick()) > 0)
+ return;
+ sd->cantalk_tick = gettick() + battle_config.min_chat_delay;
+ }
+
guild_send_message(sd, (char*)RFIFOP(fd,4), RFIFOW(fd,2)-4);
}
|