diff options
-rw-r--r-- | Changelog-Trunk.txt | 3 | ||||
-rw-r--r-- | src/map/skill.c | 30 |
2 files changed, 19 insertions, 14 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index ed29711d4..0536cbfa7 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,9 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/09/25
+ * 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) [Skotlex]
* Disabled again client-self-muting since it's causing too much trouble.
[Skotlex]
* Merged FlavioJS's script patch which should fix stuff like "mes ();"
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; |