diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories.dm b/code/modules/client/preference_setup/loadout/loadout_accessories.dm index 2c0cfdc2901..c29eb0d2287 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories.dm @@ -339,10 +339,24 @@ gear_tweaks += new /datum/gear_tweak/path(badge) /datum/gear/accessory/namepin - display_name = "pin tag (colourable)" + display_name = "pins selection" path = /obj/item/clothing/accessory/badge/namepin flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION +/datum/gear/accessory/namepin/New() + ..() + var/list/pin = list() + pin["pin, name tag"] = /obj/item/clothing/accessory/badge/namepin + pin["pin, any/all pronouns"] = /obj/item/clothing/accessory/pronoun + pin["pin, he/him pronouns"] = /obj/item/clothing/accessory/pronoun/hehim + pin["pin, he/they pronouns"] = /obj/item/clothing/accessory/pronoun/hethey + pin["pin, she/her pronouns"] = /obj/item/clothing/accessory/pronoun/sheher + pin["pin, she/they pronouns"] = /obj/item/clothing/accessory/pronoun/shethey + pin["pin, they/them pronouns"] = /obj/item/clothing/accessory/pronoun/theythem + pin["pin, it/its pronouns"] = /obj/item/clothing/accessory/pronoun/itits + pin["pin, please ask! pronouns"] = /obj/item/clothing/accessory/pronoun/ask + gear_tweaks += new /datum/gear_tweak/path(pin) + /datum/gear/accessory/ribbon display_name = "ribbon (colourable)" path = /obj/item/clothing/accessory/ribbon diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 269b656d4e0..ce9850b43a1 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -10,6 +10,7 @@ var/slot = ACCESSORY_SLOT_GENERIC var/obj/item/clothing/has_suit = null //the suit the tie may be attached to var/image/inv_overlay = null //overlay used when attached to clothing. + var/overlay_in_inventory = TRUE // Whether the worn_overlay should apply when attached to an item of clothing. var/image/accessory_mob_overlay = null var/flippable = 0 //whether it has an attack_self proc which causes the icon to flip horizontally var/flipped = 0 @@ -41,7 +42,7 @@ inv_overlay = image(icon = I, icon_state = tmp_icon_state, dir = SOUTH) if(color) inv_overlay.color = color - if(build_from_parts) + if(build_from_parts && overlay_in_inventory) inv_overlay.cut_overlays() inv_overlay.add_overlay(overlay_image(I, "[tmp_icon_state]_[worn_overlay]", flags=RESET_COLOR)) //add the overlay w/o coloration of the original sprite return inv_overlay @@ -1296,3 +1297,45 @@ icon_state = "overall_skirt_x" item_state = "overall_skirt_x" /********** Overalls End **********/ + +// Pronoun pins +/obj/item/clothing/accessory/pronoun + name = "any/all pronouns pin" + desc = "A pin denoting the wearer's pronouns: any/all." + icon = 'icons/clothing/accessories/pronoun_pin.dmi' + icon_state = "pronounpin" + item_state = "pronounpin" + worn_overlay = "over" + drop_sound = 'sound/items/drop/card.ogg' + pickup_sound = 'sound/items/pickup/card.ogg' + contained_sprite = TRUE + build_from_parts = TRUE + overlay_in_inventory = FALSE + +/obj/item/clothing/accessory/pronoun/hehim + name = "he/him pronouns pin" + desc = "A pin denoting the wearer's pronouns: he/him." + +/obj/item/clothing/accessory/pronoun/hethey + name = "he/they pronouns pin" + desc = "A pin denoting the wearer's pronouns: he/they." + +/obj/item/clothing/accessory/pronoun/sheher + name = "she/her pronouns pin" + desc = "A pin denoting the wearer's pronouns: she/her." + +/obj/item/clothing/accessory/pronoun/shethey + name = "she/they pronouns pin" + desc = "A pin denoting the wearer's pronouns: she/they." + +/obj/item/clothing/accessory/pronoun/theythem + name = "they/them pronouns pin" + desc = "A pin denoting the wearer's pronouns: they/them." + +/obj/item/clothing/accessory/pronoun/itits + name = "it/its pronouns pin" + desc = "A pin denoting the wearer's pronouns: it/its." + +/obj/item/clothing/accessory/pronoun/ask + name = "please ask! pronouns pin" + desc = "A pin asking others to ask for their pronouns." diff --git a/html/changelogs/llywelwyn-pins.yml b/html/changelogs/llywelwyn-pins.yml new file mode 100644 index 00000000000..133ab765d07 --- /dev/null +++ b/html/changelogs/llywelwyn-pins.yml @@ -0,0 +1,43 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: Llywelwyn + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Added a selection of (colourable) pronoun pins to the pins selection in the loadout." + - tweak: "Renamed 'pin tag (colorable)' in the loadout to 'pins selection', and made it a list. If you were using the name pin before, you may need to reselect it." + - backend: "Added a var to accessories to allow some more customisation with colourable overlays. Allows deciding if the overlay should apply to the item it's attached to or not." \ No newline at end of file diff --git a/icons/clothing/accessories/pronoun_pin.dmi b/icons/clothing/accessories/pronoun_pin.dmi new file mode 100644 index 00000000000..7f62e7a29c8 Binary files /dev/null and b/icons/clothing/accessories/pronoun_pin.dmi differ