From 0c99331676fc31cc040c78393d90b52f32128103 Mon Sep 17 00:00:00 2001 From: Kenpachi Developer Date: Thu, 5 Mar 2020 07:21:23 +0100 Subject: Fix conditions to call pc_itemskill_clear() function --- src/map/unit.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/map/unit.c') diff --git a/src/map/unit.c b/src/map/unit.c index 29a01aea7..ee6159959 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -1046,7 +1046,7 @@ static int unit_skilluse_id(struct block_list *src, int target_id, uint16 skill_ int ret = unit->skilluse_id2(src, target_id, skill_id, skill_lv, casttime, castcancel); struct map_session_data *sd = BL_CAST(BL_PC, src); - if (sd != NULL) + if (sd != NULL && (ret == 0 || !skill->is_item_skill(sd, skill_id, skill_lv))) pc->itemskill_clear(sd); return ret; @@ -1683,7 +1683,7 @@ static int unit_skilluse_pos(struct block_list *src, short skill_x, short skill_ int ret = unit->skilluse_pos2(src, skill_x, skill_y, skill_id, skill_lv, casttime, castcancel); struct map_session_data *sd = BL_CAST(BL_PC, src); - if (sd != NULL) + if (sd != NULL && (ret == 0 || !skill->is_item_skill(sd, skill_id, skill_lv))) pc->itemskill_clear(sd); return ret; -- cgit v1.2.3-70-g09d2