… | |
… | |
2687 | break; |
2687 | break; |
2688 | |
2688 | |
2689 | case SKILL: |
2689 | case SKILL: |
2690 | if (who->contr) |
2690 | if (who->contr) |
2691 | { |
2691 | { |
|
|
2692 | if (IS_COMBAT_SKILL (op->subtype)) |
|
|
2693 | who->change_weapon (who->contr->combat_ob = 0); |
|
|
2694 | else if (IS_RANGED_SKILL (op->subtype)) |
|
|
2695 | who->change_weapon (who->contr->ranged_ob = 0); |
|
|
2696 | |
2692 | if (!op->invisible) |
2697 | if (op->invisible) |
|
|
2698 | who->statusmsg (format ("You can no longer use the skill: %s.", &op->skill)); |
|
|
2699 | else |
2693 | who->statusmsg (format ("You stop using the %s.", query_name (op))); |
2700 | who->statusmsg (format ("You stop using the %s.", query_name (op))); |
2694 | else |
|
|
2695 | who->statusmsg (format ("You can no longer use the skill: %s.", &op->skill)); |
|
|
2696 | } |
2701 | } |
2697 | |
2702 | |
2698 | change_abil (who, op); |
2703 | change_abil (who, op); |
2699 | CLEAR_FLAG (who, FLAG_READY_SKILL); |
2704 | CLEAR_FLAG (who, FLAG_READY_SKILL); |
2700 | break; |
2705 | break; |
… | |
… | |
3091 | return 1; |
3096 | return 1; |
3092 | } |
3097 | } |
3093 | |
3098 | |
3094 | return unapply_special (who, op, aflags); |
3099 | return unapply_special (who, op, aflags); |
3095 | } |
3100 | } |
3096 | |
|
|
3097 | if (basic_flag == AP_UNAPPLY) |
3101 | else if (basic_flag == AP_UNAPPLY) |
3098 | return 0; |
3102 | return 0; |
3099 | |
3103 | |
3100 | // if the item is combat/ranged, wield the relevant slot first |
3104 | // if the item is combat/ranged, wield the relevant slot first |
3101 | // to resolve conflicts. |
3105 | // to resolve conflicts. |
3102 | if (player *pl = who->contr) |
3106 | if (player *pl = who->contr) |