diff options
author | shennetsind <ind@henn.et> | 2013-02-03 12:49:17 -0200 |
---|---|---|
committer | shennetsind <ind@henn.et> | 2013-02-03 12:49:17 -0200 |
commit | d6d49c43b4f742c7aaffd0a102e6019c9adb7438 (patch) | |
tree | 7dabb9a12f53626670a62ec08fe19587fced24e2 | |
parent | 654ba93647779819b64ba7920cedd73b45c0a419 (diff) | |
download | hercules-d6d49c43b4f742c7aaffd0a102e6019c9adb7438.tar.gz hercules-d6d49c43b4f742c7aaffd0a102e6019c9adb7438.tar.bz2 hercules-d6d49c43b4f742c7aaffd0a102e6019c9adb7438.tar.xz hercules-d6d49c43b4f742c7aaffd0a102e6019c9adb7438.zip |
Fixed Bug #7046
Updated Safety Wall Renewal behavior, when taking damage higher than the health of the safety wall, excess damage will no longer be passed to the player.
http://hercules.ws/board/tracker/issue-7046-safetywall-should-always-block-at-least-one-hit/
Signed-off-by: shennetsind <ind@henn.et>
-rw-r--r-- | src/map/battle.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index 2198b25ec..4505b6a63 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -808,13 +808,12 @@ int battle_calc_damage(struct block_list *src,struct block_list *bl,struct Damag * in RE, SW possesses a lifetime equal to 3 times the caster's health **/ #ifdef RENEWAL + d->dmg_lv = ATK_BLOCK; if ( ( group->val2 - damage) > 0 ) { group->val2 -= damage; - d->dmg_lv = ATK_BLOCK; - return 0; } else - damage -= group->val2; - skill_delunitgroup(group); + skill_delunitgroup(group); + return 0; #else if (--group->val2<=0) skill_delunitgroup(group); |