diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-09-25 21:40:02 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-09-25 21:40:02 +0000 |
commit | 0d353605525d2029de04d399edd9c37bfab7591f (patch) | |
tree | 430693c759328c4a1025c8b2dac5ff1deacf1504 /src | |
parent | a842a48f1de74a1652a211d27c86dd1b07ea927f (diff) | |
download | hercules-0d353605525d2029de04d399edd9c37bfab7591f.tar.gz hercules-0d353605525d2029de04d399edd9c37bfab7591f.tar.bz2 hercules-0d353605525d2029de04d399edd9c37bfab7591f.tar.xz hercules-0d353605525d2029de04d399edd9c37bfab7591f.zip |
- Added an ugly check so that Heal will display 0 when healing a berserked character (and it will again display full heal amount when healing a player who's at full life)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8869 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r-- | src/map/skill.c | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index e88c26829..8afdfbe64 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -3296,22 +3296,24 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in heal = heal*2; } - if (tsc && tsc->count && tsc->data[SC_KAITE].timer != -1 - && !(sstatus->mode&MD_BOSS) - ) { //Bounce back heal - if (--tsc->data[SC_KAITE].val2 <= 0) - status_change_end(bl, SC_KAITE, -1); - if (src == bl) - heal=0; //When you try to heal yourself under Kaite, the heal is voided. - else { - bl = src; - dstsd = sd; - } + if (tsc && tsc->count) + { + if (tsc->data[SC_KAITE].timer != -1 && !(sstatus->mode&MD_BOSS) + ) { //Bounce back heal + if (--tsc->data[SC_KAITE].val2 <= 0) + status_change_end(bl, SC_KAITE, -1); + if (src == bl) + heal=0; //When you try to heal yourself under Kaite, the heal is voided. + else { + bl = src; + dstsd = sd; + } + } else + if (tsc->data[SC_BERSERK].timer != -1) + heal = 0; //Needed so that it actually displays 0 when healing. } - heal_get_jobexp = status_heal(bl,heal,0,0); - //All or nothing check for LK_BERSERK. - clif_skill_nodamage (src, bl, skillid, heal_get_jobexp?heal:0, 1); + clif_skill_nodamage (src, bl, skillid, heal, 1); if(sd && dstsd && heal > 0 && sd != dstsd && battle_config.heal_exp > 0){ heal_get_jobexp = heal_get_jobexp * battle_config.heal_exp / 100; |