diff --git a/code/modules/clothing/neck/_neck.dm b/code/modules/clothing/neck/_neck.dm index d4cfbd1a84..c5231f3257 100644 --- a/code/modules/clothing/neck/_neck.dm +++ b/code/modules/clothing/neck/_neck.dm @@ -177,9 +177,12 @@ /obj/item/clothing/neck/petcollar name = "pet collar" - desc = "It's for pets. Though you probably could wear it yourself, you'd doubtless be the subject of ridicule." + desc = "It's for pets. Though you probably could wear it yourself, you'd doubtless be the subject of ridicule. It seems to be made out of a polychromic material." icon_state = "petcollar" + alternate_worn_icon = 'icons/mob/neck.dmi' item_color = "petcollar" + hasprimary = TRUE + primary_color = "#00BBBB" pocket_storage_component_path = /datum/component/storage/concrete/pockets/small/collar var/tagname = null @@ -187,6 +190,42 @@ tagname = copytext(sanitize(input(user, "Would you like to change the name on the tag?", "Name your new pet", "Spot") as null|text),1,MAX_NAME_LEN) name = "[initial(name)] - [tagname]" +/obj/item/clothing/neck/petcollar/worn_overlays(isinhands, icon_file) + . = ..() + if(hasprimary | hassecondary | hastertiary) + if(!isinhands) //prevents the worn sprites from showing up if you're just holding them + if(hasprimary) //checks if overlays are enabled + var/mutable_appearance/primary_worn = mutable_appearance(alternate_worn_icon, "[item_color]-primary") //automagical sprite selection + primary_worn.color = primary_color //colors the overlay + . += primary_worn //adds the overlay onto the buffer list to draw on the mob sprite. + if(hassecondary) + var/mutable_appearance/secondary_worn = mutable_appearance(alternate_worn_icon, "[item_color]-secondary") + secondary_worn.color = secondary_color + . += secondary_worn + if(hastertiary) + var/mutable_appearance/tertiary_worn = mutable_appearance(alternate_worn_icon, "[item_color]-tertiary") + tertiary_worn.color = tertiary_color + . += tertiary_worn + +/obj/item/clothing/neck/petcollar/leather + name = "leather pet collar" + icon_state = "leathercollar" + item_color = "leathercollar" + + hasprimary = TRUE + hassecondary = TRUE + primary_color = "#000000" + secondary_color = "#888888" + +/obj/item/clothing/neck/petcollar/choker + name = "choker" + icon_state = "choker" + item_color = "choker" + + hasprimary = TRUE + hassecondary = TRUE + primary_color = "#000000" + /obj/item/clothing/neck/petcollar/locked name = "locked collar" desc = "A collar that has a small lock on it to keep it from being removed." @@ -210,6 +249,25 @@ return ..() +/obj/item/clothing/neck/petcollar/locked/leather + name = "leather pet collar" + icon_state = "leathercollar" + item_color = "leathercollar" + + hasprimary = TRUE + hassecondary = TRUE + primary_color = "#000000" + secondary_color = "#888888" + +/obj/item/clothing/neck/petcollar/locked/choker + name = "choker" + icon_state = "choker" + item_color = "choker" + + hasprimary = TRUE + hassecondary = TRUE + primary_color = "#000000" + /obj/item/key/collar name = "Collar Key" desc = "A key for a tiny lock on a collar or bag." diff --git a/icons/mob/neck.dmi b/icons/mob/neck.dmi index b91c29e03f..3c126daba6 100644 Binary files a/icons/mob/neck.dmi and b/icons/mob/neck.dmi differ diff --git a/icons/obj/clothing/neck.dmi b/icons/obj/clothing/neck.dmi index 0f3668ce10..0bdaa36e62 100644 Binary files a/icons/obj/clothing/neck.dmi and b/icons/obj/clothing/neck.dmi differ