summaryrefslogtreecommitdiff
path: root/src/map/pc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/pc.c')
-rw-r--r--src/map/pc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/map/pc.c b/src/map/pc.c
index cfb3d86b7..75fc34b7e 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -3474,8 +3474,10 @@ int pc_checkallowskill(struct map_session_data *sd)
for (i = 0; i < sizeof(scw_list)/sizeof(scw_list[0]); i++)
{ // Skills requiring specific weapon types
- if(sd->sc.data[scw_list[i]].timer!=-1 && !(skill_get_weapontype(StatusSkillChangeTable[scw_list[i]])&(1<<sd->status.weapon)))
- status_change_end(&sd->bl,scw_list[i],-1);
+ if(sd->sc.data[scw_list[i]].timer!=-1 &&
+ !pc_check_weapontype(sd,
+ skill_get_weapontype(StatusSkillChangeTable[scw_list[i]])))
+ status_change_end(&sd->bl,scw_list[i],-1);
}
if(sd->sc.data[SC_SPURT].timer!=-1 && sd->status.weapon)