diff options
Diffstat (limited to 'src/map/pc.c')
-rw-r--r-- | src/map/pc.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index 47efd18c0..d2d73acb5 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -6255,13 +6255,17 @@ int pc_unequipitem(struct map_session_data *sd,int n,int flag) clif_changelook(&sd->bl,LOOK_SHOES,0);
clif_unequipitemack(sd,n,sd->status.inventory[n].equip,1);
+
+ if((sd->status.inventory[n].equip&0x0022) &&
+ sd->weapontype1 == 0 && sd->weapontype2 == 0)
+ skill_enchant_elemental_end(&sd->bl,-1);
+
sd->status.inventory[n].equip=0;
- if(flag&1)
+
+ if(flag&1) {
pc_checkallowskill(sd);
- if(sd->weapontype1 == 0 && sd->weapontype2 == 0)
- skill_enchant_elemental_end(&sd->bl,-1); //武器持ち誓えは無?件で?性付?解除
- if(flag&1)
status_calc_pc(sd,0);
+ }
if(sd->sc.count && sd->sc.data[SC_SIGNUMCRUCIS].timer != -1 && !battle_check_undead(RC_DEMIHUMAN,sd->def_ele))
status_change_end(&sd->bl,SC_SIGNUMCRUCIS,-1);
|