summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map/battle.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index ce861aa7e..e9e17708c 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -5415,11 +5415,12 @@ void battle_reflect_damage(struct block_list *target, struct block_list *src, st
if( ssc->data[SC_INSPIRATION] ) {
NORMALIZE_RDAMAGE(damage / 100);
- rdelay = clif->delay_damage(tick+delay,src, src, status_get_amotion(src), status_get_dmotion(src), rdamage, 1, 4);
+ rdelay = clif->delay_damage(tick+delay,target, target, status_get_amotion(target), status_get_dmotion(target), rdamage, 1, 4);
/* is this right? rdamage as both left and right? */
- battle->drain(tsd, src, rdamage, rdamage, status_get_race(src), 0);
- battle->delay_damage(tick, wd->amotion,target,src,0,CR_REFLECTSHIELD,0,rdamage,ATK_DEF,rdelay,true);
+ if( sd )
+ battle->drain(sd, target, rdamage, rdamage, status_get_race(target), 0);
+ battle->delay_damage(tick, wd->amotion,src,target,0,CR_REFLECTSHIELD,0,rdamage,ATK_DEF,rdelay,true);
delay += 100;/* gradual increase so the numbers don't clip in the client */
}