diff options
Diffstat (limited to 'src/map/battle.c')
-rw-r--r-- | src/map/battle.c | 45 |
1 files changed, 37 insertions, 8 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index 45524e5..c9f1b59 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -17,6 +17,7 @@ #include "mob.h" #include "pc.h" #include "skill.h" +#include "../common/socket.h" #ifdef MEMWATCH #include "memwatch.h" @@ -4520,9 +4521,14 @@ int battle_config_read(const char *cfgName) battle_config.chat_spam_ban = 1; battle_config.chat_spam_warn = 8; battle_config.chat_maxline = 255; + + battle_config.trade_spam_threshold = 10; + battle_config.trade_spam_flood = 10; + battle_config.trade_spam_ban = 1; + battle_config.trade_spam_warn = 8; } - fp = fopen(cfgName,"r"); + fp = fopen_(cfgName,"r"); if (fp == NULL) { printf("file not found: %s\n", cfgName); return 1; @@ -4722,12 +4728,16 @@ int battle_config_read(const char *cfgName) { "castrate_dex_scale", &battle_config.castrate_dex_scale }, // added by [MouseJstr] { "area_size", &battle_config.area_size }, // added by [MouseJstr] { "muting_players", &battle_config.muting_players}, // added by [Apple] - { "chat_lame_penalty", &battle_config.chat_lame_penalty }, - { "chat_spam_threshold", &battle_config.chat_spam_threshold }, - { "chat_spam_flood", &battle_config.chat_spam_flood }, - { "chat_spam_ban", &battle_config.chat_spam_ban }, - { "chat_spam_warn", &battle_config.chat_spam_warn }, - { "chat_maxline", &battle_config.chat_maxline } + { "chat_lame_penalty", &battle_config.chat_lame_penalty }, + { "chat_spam_threshold", &battle_config.chat_spam_threshold }, + { "chat_spam_flood", &battle_config.chat_spam_flood }, + { "chat_spam_ban", &battle_config.chat_spam_ban }, + { "chat_spam_warn", &battle_config.chat_spam_warn }, + { "chat_maxline", &battle_config.chat_maxline }, + { "trade_spam_threshold", &battle_config.trade_spam_threshold }, + { "trade_spam_flood", &battle_config.trade_spam_flood }, + { "trade_spam_ban", &battle_config.trade_spam_ban }, + { "trade_spam_warn", &battle_config.trade_spam_warn } }; if (line[0] == '/' && line[1] == '/') @@ -4741,7 +4751,7 @@ int battle_config_read(const char *cfgName) if (strcmpi(w1, "import") == 0) battle_config_read(w2); } - fclose(fp); + fclose_(fp); if (--count == 0) { if(battle_config.flooritem_lifetime < 1000) @@ -4868,6 +4878,25 @@ int battle_config_read(const char *cfgName) else if (battle_config.chat_maxline > 512) battle_config.chat_maxline = 512; + if (battle_config.trade_spam_ban < 0) + battle_config.trade_spam_ban = 0; + else if (battle_config.trade_spam_ban > 32767) + battle_config.trade_spam_ban = 32767; + + if (battle_config.trade_spam_flood < 0) + battle_config.trade_spam_flood = 0; + else if (battle_config.trade_spam_flood > 32767) + battle_config.trade_spam_flood = 32767; + + if (battle_config.trade_spam_warn < 0) + battle_config.trade_spam_warn = 0; + else if (battle_config.trade_spam_warn > 32767) + battle_config.trade_spam_warn = 32767; + + if (battle_config.trade_spam_threshold < 0) + battle_config.trade_spam_threshold = 0; + else if (battle_config.trade_spam_threshold > 32767) + battle_config.trade_spam_threshold = 32767; // at least 1 client must be accepted if ((battle_config.packet_ver_flag & 63) == 0) // added by [Yor] |