diff options
author | epoque11 <epoque11@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2011-12-14 14:25:32 +0000 |
---|---|---|
committer | epoque11 <epoque11@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2011-12-14 14:25:32 +0000 |
commit | 30e0ef795cd29ff387e77135c07595f4d389388e (patch) | |
tree | 664a368f190e3810497b57157c29564159be7ede /src/map | |
parent | c0d762eba9f73c6eb239cd100e32270e44b5fb2d (diff) | |
download | hercules-30e0ef795cd29ff387e77135c07595f4d389388e.tar.gz hercules-30e0ef795cd29ff387e77135c07595f4d389388e.tar.bz2 hercules-30e0ef795cd29ff387e77135c07595f4d389388e.tar.xz hercules-30e0ef795cd29ff387e77135c07595f4d389388e.zip |
- Fixed Sky Deleter Card (and similar items) not healing when killing a monster when in Berserk status
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15106 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/skill.c | 4 | ||||
-rw-r--r-- | src/map/status.c | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 137af795f..c8de8e07b 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1473,7 +1473,9 @@ int skill_counter_additional_effect (struct block_list* src, struct block_list * hp += sd->magic_hp_gain_value; } if( hp || sp ) - status_heal(src, hp, sp, battle_config.show_hp_sp_gain?2:0); + {// updated to force healing to allow healing through berserk + status_heal(src, hp, sp, battle_config.show_hp_sp_gain ? 3 : 1); + } } // Trigger counter-spells to retaliate against damage causing skills. diff --git a/src/map/status.c b/src/map/status.c index f90d9897d..8114362c4 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -1128,8 +1128,12 @@ int status_heal(struct block_list *bl,int hp,int sp, int flag) } if(hp) { - if (!(flag&1) && sc && sc->data[SC_BERSERK]) - hp = 0; + if( sc && sc->data[SC_BERSERK] ) { + if( flag&1 ) + flag &= ~2; + else + hp = 0; + } if((unsigned int)hp > status->max_hp - status->hp) hp = status->max_hp - status->hp; |