From c4eae4b36196c83f4c5b386e0c87f33c555ab8f7 Mon Sep 17 00:00:00 2001 From: Aleos Date: Thu, 17 May 2018 23:10:27 -0400 Subject: [PATCH] Corrected reflected damage applying twice (#3115) * Fixes #2920. * Follow up to 333f0dd. * Corrected trap behavior reflect and slightly reverted previous commit. Thanks to @Badarosk0. --- src/map/battle.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/map/battle.cpp b/src/map/battle.cpp index 9e0a856a84..22c34c8704 100644 --- a/src/map/battle.cpp +++ b/src/map/battle.cpp @@ -6843,7 +6843,7 @@ int64 battle_calc_return_damage(struct block_list* bl, struct block_list *src, i ssc = status_get_sc(src); if (flag & BF_SHORT) {//Bounces back part of the damage. - if ( sd && sd->bonus.short_weapon_damage_return ) { + if ( (skill_get_inf2(skill_id)&INF2_TRAP || !status_reflect) && sd && sd->bonus.short_weapon_damage_return ) { rdamage += damage * sd->bonus.short_weapon_damage_return / 100; rdamage = i64max(rdamage,1); } else if( status_reflect && sc && sc->count ) {