diff --git a/code/modules/clothing/clothing_accessories.dm b/code/modules/clothing/clothing_accessories.dm index a1a01d7feb7..0c39c7d053a 100644 --- a/code/modules/clothing/clothing_accessories.dm +++ b/code/modules/clothing/clothing_accessories.dm @@ -122,7 +122,6 @@ set name = "Remove Accessory" set category = "Object" set src in usr - if(!isliving(usr)) return @@ -133,10 +132,14 @@ if(!LAZYLEN(accessories)) return - + var/obj/item/clothing/accessory/A if(LAZYLEN(accessories) > 1) - A = input("Select an accessory to remove.") as null|anything in accessories + var/list/options = list() + for (var/obj/item/clothing/accessory/i in accessories) + var/image/radial_button = image(icon = i.icon, icon_state = i.icon_state) + options[i] = radial_button + A = show_radial_menu(M, M, options, radius = 42, tooltips = TRUE) else A = accessories[1] remove_accessory(usr,A) diff --git a/code/modules/mob/living/carbon/human/stripping.dm b/code/modules/mob/living/carbon/human/stripping.dm index c703057088e..97f297e0c19 100644 --- a/code/modules/mob/living/carbon/human/stripping.dm +++ b/code/modules/mob/living/carbon/human/stripping.dm @@ -49,7 +49,16 @@ var/obj/item/clothing/under/suit = w_uniform if(!istype(suit) || !LAZYLEN(suit.accessories)) return 0 - var/obj/item/clothing/accessory/A = suit.accessories[1] + var/obj/item/clothing/accessory/A + if(LAZYLEN(suit.accessories) > 1) + var/list/options = list() + for (var/obj/item/clothing/accessory/i in suit.accessories) + var/image/radial_button = image(icon = i.icon, icon_state = i.icon_state) + options[i] = radial_button + A = show_radial_menu(user, user, options, radius = 42, tooltips = TRUE) + else + A = suit.accessories[1] + if(!istype(A)) return 0 visible_message("\The [usr] is trying to remove \the [src]'s [A.name]!") diff --git a/html/changelogs/RadialAccessory.yml b/html/changelogs/RadialAccessory.yml new file mode 100644 index 00000000000..40374fe8eac --- /dev/null +++ b/html/changelogs/RadialAccessory.yml @@ -0,0 +1,6 @@ +author: TheGreyWolf + +delete-after: True + +changes: + - rscadd: "Removing accessories is now a radial menu, and it is now also possible to pick which accessory to remove from another person."