From d45cf975aab39d04bd43dabaa455fde35b61b8da Mon Sep 17 00:00:00 2001 From: Michieru Date: Thu, 7 Aug 2014 00:34:35 +0200 Subject: - Acid Demo is now reduce by Defender (bug: 8287) - Fix a behavior with Fog Wall --- src/map/battle.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/map/battle.c') diff --git a/src/map/battle.c b/src/map/battle.c index 82095b1cd..3a52769fc 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -2844,10 +2844,10 @@ int64 battle_calc_damage(struct block_list *src,struct block_list *bl,struct Dam else damage >>= 1; //Receive 50% damage } -#endif +#endif if(sc->data[SC_DEFENDER] && - (flag&(BF_LONG|BF_WEAPON)) == (BF_LONG|BF_WEAPON)) + ((flag&(BF_LONG|BF_WEAPON)) == (BF_LONG|BF_WEAPON) || skill_id == CR_ACIDDEMONSTRATION)) damage = damage * ( 100 - sc->data[SC_DEFENDER]->val2 ) / 100; if(sc->data[SC_GS_ADJUSTMENT] && @@ -2855,8 +2855,10 @@ int64 battle_calc_damage(struct block_list *src,struct block_list *bl,struct Dam damage -= damage * 20 / 100; if(sc->data[SC_FOGWALL]) { - if(flag&BF_SKILL) //25% reduction - damage -= damage * 25 / 100; + if(flag&BF_SKILL) { //25% reduction + if ( !(skill->get_inf(skill_id)&INF_GROUND_SKILL) && !(skill->get_nk(skill_id)&NK_SPLASH) ) + damage -= 25*damage/100; + } else if ((flag&(BF_LONG|BF_WEAPON)) == (BF_LONG|BF_WEAPON)) damage >>= 2; //75% reduction } -- cgit v1.2.3-60-g2f50