summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c30
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;