From ff2496a2e6ebeb37b7c3e9723c850c36c6efd4f4 Mon Sep 17 00:00:00 2001 From: Anewbe Date: Sat, 24 Feb 2018 17:39:16 -0600 Subject: [PATCH] Should be able to attach accessories by clicking the target item again --- code/modules/clothing/clothing_accessories.dm | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/code/modules/clothing/clothing_accessories.dm b/code/modules/clothing/clothing_accessories.dm index 85496ee48d..8f9b94a193 100644 --- a/code/modules/clothing/clothing_accessories.dm +++ b/code/modules/clothing/clothing_accessories.dm @@ -1,21 +1,20 @@ /obj/item/clothing/proc/can_attach_accessory(obj/item/clothing/accessory/A) - if(valid_accessory_slots && istype(A) && (A.slot in valid_accessory_slots)) - if(accessories.len && restricted_accessory_slots && (A.slot in restricted_accessory_slots)) + var/obj/item/clothing/accessory/attach = A + if(src.valid_accessory_slots && (attach.slot in src.valid_accessory_slots)) + if(accessories.len && restricted_accessory_slots && (attach.slot in restricted_accessory_slots)) for(var/obj/item/clothing/accessory/AC in accessories) - if (AC.slot == A.slot) - return 0 - return 1 - return 0 - - if(accessories.len && restricted_accessory_slots && (A.slot in restricted_accessory_slots)) - for(var/obj/item/clothing/accessory/AC in accessories) - if (AC.slot == A.slot) - return 0 - return 1 + if (AC.slot == attach.slot) + return FALSE + return TRUE + return TRUE + else + return FALSE /obj/item/clothing/attackby(var/obj/item/I, var/mob/user) if(istype(I, /obj/item/clothing/accessory)) - attempt_attach_accessory(I, user) + var/obj/item/clothing/accessory/A = I + if(attempt_attach_accessory(user, A)) + return if(accessories.len) for(var/obj/item/clothing/accessory/A in accessories) @@ -81,6 +80,7 @@ to_chat(user, "You cannot attach more accessories of this type to [src].") return FALSE + /obj/item/clothing/proc/attach_accessory(mob/user, obj/item/clothing/accessory/A) accessories += A A.on_attached(src, user)