diff options
author | shennetsind <ind@henn.et> | 2013-09-09 21:57:14 -0300 |
---|---|---|
committer | shennetsind <ind@henn.et> | 2013-09-09 21:57:14 -0300 |
commit | c1c3ef1e0b356aaa89d8fba6d63b86130e8aae9c (patch) | |
tree | 0376094ca0b4276df43ecba9b97e19bd779858fe /src/map/status.c | |
parent | 2ca326b3fa3853fbc06095dbbbfee537a0387b5f (diff) | |
download | hercules-c1c3ef1e0b356aaa89d8fba6d63b86130e8aae9c.tar.gz hercules-c1c3ef1e0b356aaa89d8fba6d63b86130e8aae9c.tar.bz2 hercules-c1c3ef1e0b356aaa89d8fba6d63b86130e8aae9c.tar.xz hercules-c1c3ef1e0b356aaa89d8fba6d63b86130e8aae9c.zip |
Fixed Bug #7335
Modified several gvg checks to include checking whether it is a guild castle ( map_flag_gvg2 does so and no it doesn't mean woe:se )
Special Thanks to kyeme.
http://hercules.ws/board/tracker/issue-7335-woe-castle-behavior/
Also follow up 24ced6fcef1a95a2abd0c60b4fe90cbbc3aea268 changed 512 with its constant, special thanks to EPuncker.
Signed-off-by: shennetsind <ind@henn.et>
Diffstat (limited to 'src/map/status.c')
-rw-r--r-- | src/map/status.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/map/status.c b/src/map/status.c index d656a8e3a..c280d80b8 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -1207,7 +1207,7 @@ int status_damage(struct block_list *src,struct block_list *target,int64 in_hp, if ((sce=sc->data[SC_ENDURE]) && !sce->val4 && !sc->data[SC_LKCONCENTRATION]) { //Endure count is only reduced by non-players on non-gvg maps. //val4 signals infinite endure. [Skotlex] - if (src && src->type != BL_PC && !map_flag_gvg(target->m) && !map[target->m].flag.battleground && --(sce->val2) < 0) + if (src && src->type != BL_PC && !map_flag_gvg2(target->m) && !map[target->m].flag.battleground && --(sce->val2) < 0) status_change_end(target, SC_ENDURE, INVALID_TIMER); } if ((sce=sc->data[SC_GRAVITATION]) && sce->val3 == BCT_SELF) { @@ -1301,7 +1301,7 @@ int status_damage(struct block_list *src,struct block_list *target,int64 in_hp, } } - if( sc && sc->data[SC_KAIZEL] && !map_flag_gvg(target->m) ) + if( sc && sc->data[SC_KAIZEL] && !map_flag_gvg2(target->m) ) { //flag&8 = disable Kaizel int time = skill->get_time2(SL_KAIZEL,sc->data[SC_KAIZEL]->val1); //Look for Osiris Card's bonus effect on the character and revive 100% or revive normally @@ -4786,7 +4786,7 @@ static signed short status_calc_flee(struct block_list *bl, struct status_change { if( bl->type == BL_PC ) { - if( map_flag_gvg(bl->m) ) + if( map_flag_gvg2(bl->m) ) flee -= flee * battle_config.gvg_flee_penalty/100; else if( map[bl->m].flag.battleground ) flee -= flee * battle_config.bg_flee_penalty/100; @@ -5593,7 +5593,7 @@ static short status_calc_aspd_rate(struct block_list *bl, struct status_change * static unsigned short status_calc_dmotion(struct block_list *bl, struct status_change *sc, int dmotion) { - if( !sc || !sc->count || map_flag_gvg(bl->m) || map[bl->m].flag.battleground ) + if( !sc || !sc->count || map_flag_gvg2(bl->m) || map[bl->m].flag.battleground ) return cap_value(dmotion,0,USHRT_MAX); /** * It has been confirmed on official servers that MvP mobs have no dmotion even without endure |