diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/atcommand.c | 5 | ||||
-rw-r--r-- | src/map/battle.c | 8 | ||||
-rw-r--r-- | src/map/battle.h | 3 | ||||
-rw-r--r-- | src/map/guild.c | 16 |
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) |