summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.txt5
-rw-r--r--conf-tmpl/battle_athena.conf3
-rw-r--r--db/Changelog.txt3
-rw-r--r--db/skill_nocast_db.txt16
-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
8 files changed, 42 insertions, 17 deletions
diff --git a/Changelog.txt b/Changelog.txt
index d355302f0..f26946cd1 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,5 +1,10 @@
Date Added
12/5
+ * Added allow_atcommand_when_mute - Change this to set whether muted players
+ can use gm commands [celest]
+ * Temporarily leaving the changing guild emblems requiring Glory of Guild
+ feature only for TXT until the SQL char-server supports guild skills fully[celest]
+ * Modified battle_range again to check if src's type is a player first [celest]
* Corrected typo in battle_range [celest]
* Fixed a crash where party chats can be sent to a
partially disconnected player [MouseJstr]
diff --git a/conf-tmpl/battle_athena.conf b/conf-tmpl/battle_athena.conf
index 4a338b256..a950720d3 100644
--- a/conf-tmpl/battle_athena.conf
+++ b/conf-tmpl/battle_athena.conf
@@ -723,6 +723,9 @@ packet_ver_flag: 511
// Allow GMs to mute players or not?
muting_players: no
+// Allow GM commands to be used when muted?
+allow_atcommand_when_mute: yes
+
// Mail system - Only function in sql version
mail_system: no
diff --git a/db/Changelog.txt b/db/Changelog.txt
index 46945588a..dc6e134f3 100644
--- a/db/Changelog.txt
+++ b/db/Changelog.txt
@@ -5,6 +5,9 @@
Ayathoya items == Added but no effect ( all are "ect" itens)
Skill databases == celest working on them i believe.
+12/5 * Edited skill_nocast_db - the skills should be useable outside GvG maps even
+ if woe is on [celest]
+
12/3 * corrected Spider Web's maximum level [celest]
* Removed Soul Drain from Professor's skill tree [celest]
* Updated Stunner's job - Acolytes and monks should be able to use it too! [celest]
diff --git a/db/skill_nocast_db.txt b/db/skill_nocast_db.txt
index 158cfbe3b..5669d9235 100644
--- a/db/skill_nocast_db.txt
+++ b/db/skill_nocast_db.txt
@@ -7,11 +7,11 @@
// 8 - Cannot be used when WoE is on
// 16 - Cannot be used in PK Mode maps
// Example: 8,6 = Endure cannot be used in PvP and GvG maps (2+4)
-8,12
-26,12
-27,12
-87,12
-150,12
-214,12
-361,12
-362,12 \ No newline at end of file
+8,4 //SM_ENDURE
+26,4 //AL_TELEPORT
+27,4 //AL_WARP
+87,4 //WZ_ICEWALL
+150,4 //TF_BACKSLIDING
+214,4 //RG_RAID
+361,4 //HP_ASSUMPTIO
+362,4 //HP_BASILICA \ No newline at end of file
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)