summaryrefslogtreecommitdiff
path: root/src/map/battle.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/battle.c')
-rw-r--r--src/map/battle.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index 91563d939..1e1c16c7f 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -3133,6 +3133,14 @@ int battle_weapon_attack( struct block_list *src,struct block_list *target,
if (tsd && sd->sp_drain_type)
pc_heal(tsd, 0, -sp);
+
+ if (target && target->type == BL_PC && rand()%1000 < sd->sp_vanish_rate)
+ {
+ sp = tsd->status.hp * sd->sp_vanish_per/100;
+ if (sp > 0)
+ pc_heal(tsd, 0, -sp);
+
+ }
}
}
if (rdamage > 0) //By sending attack type "none" skill_additional_effect won't be invoked. [Skotlex]