summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
Diffstat (limited to 'src/map')
-rw-r--r--src/map/atcommand.c5
-rw-r--r--src/map/battle.c8
-rw-r--r--src/map/battle.h3
-rw-r--r--src/map/guild.c16
4 files changed, 23 insertions, 9 deletions
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index 7accfa639..da3faa97f 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -670,6 +670,11 @@ is_atcommand(const int fd, struct map_session_data* sd, const char* message, int
nullpo_retr(AtCommand_None, sd);
+ if (!battle_config.allow_atcommand_when_mute &&
+ sd->sc_count && sd->sc_data[SC_NOCHAT].timer != -1) {
+ return AtCommand_Unknown;
+ }
+
if (!message || !*message)
return AtCommand_None;
diff --git a/src/map/battle.c b/src/map/battle.c
index 6b1d68625..df8b583cf 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -4962,14 +4962,13 @@ int battle_check_range(struct block_list *src,struct block_list *bl,int range)
if( range>0 && range < arange ) {// 遠すぎる
// be lenient if the skill was cast before we have moved to the correct position [Celest]
- if (src->type != BL_PC)
- return 0;
- else if (src->type == BL_PC) {
+ if (src->type == BL_PC) {
struct map_session_data *sd;
nullpo_retr(0, (sd=(struct map_session_data *)bl));
if (sd->walktimer != -1 && !((arange-=battle_config.skill_range_leniency)<=range))
return 0;
}
+ else return 0;
}
if( arange<2 ) // 同じマスか隣接
@@ -5224,6 +5223,7 @@ static const struct {
{ "night_darkness_level", &battle_config.night_darkness_level}, // [celest]
{ "skill_range_leniency", &battle_config.skill_range_leniency}, // [celest]
{ "motd_type", &battle_config.motd_type}, // [celest]
+ { "allow_atcommand_when_mute", &battle_config.allow_atcommand_when_mute}, // [celest]
//SQL-only options start
#ifndef TXT_ONLY
@@ -5455,6 +5455,8 @@ void battle_set_defaults() {
battle_config.night_darkness_level = 9;
battle_config.skill_range_leniency = 1;
battle_config.motd_type = 0;
+ battle_config.allow_atcommand_when_mute = 0;
+
battle_config.castrate_dex_scale = 150;
diff --git a/src/map/battle.h b/src/map/battle.h
index 32dabb53e..2b901410f 100644
--- a/src/map/battle.h
+++ b/src/map/battle.h
@@ -323,7 +323,7 @@ extern struct Battle_Config {
int any_warp_GM_min_level; // added by [Yor]
int packet_ver_flag; // added by [Yor]
int muting_players; // added by [Apple]
-
+
int min_hair_style; // added by [MouseJstr]
int max_hair_style; // added by [MouseJstr]
int min_hair_color; // added by [MouseJstr]
@@ -342,6 +342,7 @@ extern struct Battle_Config {
int night_darkness_level; // [celest]
int skill_range_leniency; // [celest]
int motd_type; // [celest]
+ int allow_atcommand_when_mute; // [celest]
#ifndef TXT_ONLY /* SQL-only options */
int mail_system; // [Valaris]
diff --git a/src/map/guild.c b/src/map/guild.c
index 0943b4b6d..32aa2434c 100644
--- a/src/map/guild.c
+++ b/src/map/guild.c
@@ -874,11 +874,17 @@ int guild_change_emblem(struct map_session_data *sd,int len,const char *data)
nullpo_retr(0, sd);
- if ((g = guild_search(sd->status.guild_id)) && guild_checkskill(g, GD_GLORYGUILD)>0)
- return intif_guild_emblem(sd->status.guild_id,len,data);
-
- clif_skill_fail(sd,GD_GLORYGUILD,0,0);
- return 0;
+ /* Temporarily only for TXT until there's proper char server support [Celest] */
+ #ifdef TXT_ONLY
+ if ((g = guild_search(sd->status.guild_id)) && guild_checkskill(g, GD_GLORYGUILD)>0)
+ return intif_guild_emblem(sd->status.guild_id,len,data);
+
+ clif_skill_fail(sd,GD_GLORYGUILD,0,0);
+ #else
+ if ((g = guild_search(sd->status.guild_id)))
+ return intif_guild_emblem(sd->status.guild_id,len,data);
+ #endif
+ return 0;
}
// ギルドエンブレム変更通知
int guild_emblem_changed(int len,int guild_id,int emblem_id,const char *data)