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.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 75ae90425..671dce936 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -1877,8 +1877,11 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds
tsd = (bl->type == BL_PC)?(TBL_PC*)bl:NULL;
if (sc && !sc->count)
sc = NULL; //Don't need it.
- if (sc && sc->data[SC_SPIRIT].timer != -1 && sc->data[SC_SPIRIT].val2 == SL_WIZARD)
- { //Spirit of Wizard blocks bounced back spells.
+ //Spirit of Wizard blocks bounced back spells.
+ if (sc && sc->data[SC_SPIRIT].timer != -1 && sc->data[SC_SPIRIT].val2 == SL_WIZARD
+ && !(tsd && (type = pc_search_inventory (tsd, 7321)) < 0))
+ {
+ if (tsd) pc_delitem(tsd, type, 1, 0);
dmg.damage = dmg.damage2 = 0;
dmg.dmg_lv = ATK_FLEE;
}