diff --git a/doc/mapflags.txt b/doc/mapflags.txt index aa6cb665548..1e2edc6b090 100644 --- a/doc/mapflags.txt +++ b/doc/mapflags.txt @@ -265,6 +265,7 @@ because it does not necessarily require PvP mode to be set. *gvg *gvg_noparty +*gvg_noally *gvg_castle *gvg_dungeon *gvg_te @@ -272,6 +273,7 @@ because it does not necessarily require PvP mode to be set. Enables Guild vs. Guild mode on a map and applies the corresponding damage adjustments. 'gvg_noparty' will ignore party alliances. +'gvg_noally' will ignore guild alliances. 'gvg_castle' marks a guild castle. GvG mode will be active only during the War of Emperium. 'gvg_dungeon' marks a guild dungeon. Players will be warped out after two deaths. 'gvg_te' and 'gvg_te_castle' marks a WOE:TE area and special restrictions are applied. diff --git a/src/map/battle.cpp b/src/map/battle.cpp index 02e2c266518..ce426860301 100644 --- a/src/map/battle.cpp +++ b/src/map/battle.cpp @@ -7906,7 +7906,7 @@ int battle_check_target( struct block_list *src, struct block_list *target,int f { int s_guild = status_get_guild_id(s_bl); int t_guild = status_get_guild_id(t_bl); - if( !(mapdata->flag[MF_PVP] && mapdata->flag[MF_PVP_NOGUILD]) && s_guild && t_guild && (s_guild == t_guild || (!(flag&BCT_SAMEGUILD) && guild_isallied(s_guild, t_guild))) && (!mapdata->flag[MF_BATTLEGROUND] || sbg_id == tbg_id) ) + if( !(mapdata->flag[MF_PVP] && mapdata->flag[MF_PVP_NOGUILD]) && s_guild && t_guild && (s_guild == t_guild || (!(flag&BCT_SAMEGUILD) && !mapdata->flag[MF_GVG_NOALLY] && guild_isallied(s_guild, t_guild))) && (!mapdata->flag[MF_BATTLEGROUND] || sbg_id == tbg_id) ) state |= BCT_GUILD; else state |= BCT_ENEMY; diff --git a/src/map/map.hpp b/src/map/map.hpp index c98c3e9b414..ca00beb1782 100644 --- a/src/map/map.hpp +++ b/src/map/map.hpp @@ -589,6 +589,7 @@ enum e_mapflag : int16 { MF_PRIVATEAIRSHIP_SOURCE, MF_PRIVATEAIRSHIP_DESTINATION, MF_SKILL_DURATION, + MF_GVG_NOALLY, MF_MAX }; diff --git a/src/map/script_constants.hpp b/src/map/script_constants.hpp index c5fa3dd62da..01a5cb099ea 100644 --- a/src/map/script_constants.hpp +++ b/src/map/script_constants.hpp @@ -457,6 +457,7 @@ export_constant(MF_PRIVATEAIRSHIP_SOURCE); export_constant(MF_PRIVATEAIRSHIP_DESTINATION); export_constant(MF_SKILL_DURATION); + export_constant(MF_GVG_NOALLY); /* setcell types */ export_constant(CELL_WALKABLE);