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.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index 001da3edd..f7ac60031 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -3206,6 +3206,19 @@ int64 battle_calc_damage(struct block_list *src,struct block_list *bl,struct Dam
status_change_end(bl, SC_KYRIE, INVALID_TIMER);
}
+ if ((sce = sc->data[SC_TUNAPARTY]) != NULL && damage > 0) {
+ clif->specialeffect(bl, 336, AREA);
+ sce->val2 -= (int)cap_value(damage, INT_MIN, INT_MAX);
+ if (sce->val2 >= 0) {
+ damage = 0;
+ } else {
+ damage = -sce->val2;
+ }
+ if (sce->val2 <= 0) {
+ status_change_end(bl, SC_TUNAPARTY, INVALID_TIMER);
+ }
+ }
+
if( sc->data[SC_MEIKYOUSISUI] && rnd()%100 < 40 ) // custom value
damage = 0;