diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 440bd644adb..1ba06c3b5aa 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -70,6 +70,8 @@ var/worn_overlay = null // used similarly as above, except for inhands. var/worn_overlay_color = null // When you want your worn overlay to have colors. So you can have more than one modular coloring. var/alpha_mask // when you want to slice out a chunk from a sprite + var/has_accents = FALSE // determines whether accent colour is applied or not + var/accent_color = COLOR_GRAY // used for accents which are coloured differently to the main body of the sprite //ITEM_ICONS ARE DEPRECATED. USE CONTAINED SPRITES IN FUTURE // Used to specify the icon file to be used when the item is worn. If not set the default icon for that slot will be used. @@ -124,10 +126,12 @@ return ..() /obj/item/update_icon() + cut_overlays() . = ..() if(build_from_parts) - cut_overlays() add_overlay(overlay_image(icon,"[icon_state]_[worn_overlay]", flags=RESET_COLOR)) //add the overlay w/o coloration of the original sprite + if(accent_color && has_accents) + add_overlay(overlay_image(icon,"[icon_state]_acc",accent_color, RESET_COLOR)) /obj/item/device icon = 'icons/obj/device.dmi' diff --git a/code/game/objects/items/items_icon.dm b/code/game/objects/items/items_icon.dm index 8566e2bf9cf..b4c136850f3 100644 --- a/code/game/objects/items/items_icon.dm +++ b/code/game/objects/items/items_icon.dm @@ -40,7 +40,8 @@ var/list/mob_icon_icon_states = list() var/image/additional_parts = build_additional_parts(H, mob_icon, slot) if(additional_parts) I.add_overlay(additional_parts) - + if(has_accents) + I.add_overlay(overlay_image(icon,"[item_state][contained_sprite ? slot_str_to_contained_flag(slot) : ""]_acc",accent_color, RESET_COLOR)) return I /obj/item/proc/get_image_key_mod() diff --git a/code/modules/client/preference_setup/loadout/_defines.dm b/code/modules/client/preference_setup/loadout/_defines.dm index fc01db100c9..3450b5212bb 100644 --- a/code/modules/client/preference_setup/loadout/_defines.dm +++ b/code/modules/client/preference_setup/loadout/_defines.dm @@ -1,7 +1,7 @@ #define GEAR_NO_SELECTION BITFLAG(0) #define GEAR_HAS_COLOR_SELECTION BITFLAG(1) #define GEAR_HAS_ALPHA_SELECTION BITFLAG(2) -#define GEAR_HAS_ADDITIONAL_COLOR_SELECTION BITFLAG(3) +#define GEAR_HAS_ACCENT_COLOR_SELECTION BITFLAG(3) #define GEAR_HAS_NAME_SELECTION BITFLAG(4) #define GEAR_HAS_DESC_SELECTION BITFLAG(5) #define GEAR_HAS_COLOR_ROTATION_SELECTION BITFLAG(6) diff --git a/code/modules/client/preference_setup/loadout/gear_tweaks.dm b/code/modules/client/preference_setup/loadout/gear_tweaks.dm index 15cbf1656dd..e930bd7b1ef 100644 --- a/code/modules/client/preference_setup/loadout/gear_tweaks.dm +++ b/code/modules/client/preference_setup/loadout/gear_tweaks.dm @@ -68,19 +68,18 @@ Alpha adjustment item.alpha = metadata /* - Additional Color adjustment + Accent colour */ -var/datum/gear_tweak/color/additional/gear_tweak_additional_color = new() +var/datum/gear_tweak/color/accent/gear_tweak_accent_color = new() -/datum/gear_tweak/color/additional/get_contents(var/metadata) - return "Additional Color: " +/datum/gear_tweak/color/accent/get_contents(var/metadata) + return "Accent Color: " -/datum/gear_tweak/color/additional/tweak_item(var/obj/item/I, var/metadata, var/mob/living/carbon/human/H) +/datum/gear_tweak/color/accent/tweak_item(var/obj/item/I, var/metadata, var/mob/living/carbon/human/H) if(valid_colors && !(metadata in valid_colors)) return - if(I.vars["additional_color"]) // set var/additional_color = COLOR_GREY on item - I.vars["additional_color"] = metadata + I.accent_color = metadata I.update_icon() /* diff --git a/code/modules/client/preference_setup/loadout/loadout.dm b/code/modules/client/preference_setup/loadout/loadout.dm index 2bc6e2b75ea..69a484e96aa 100644 --- a/code/modules/client/preference_setup/loadout/loadout.dm +++ b/code/modules/client/preference_setup/loadout/loadout.dm @@ -390,8 +390,8 @@ var/list/gear_datums = list() gear_tweaks += list(gear_tweak_free_color_choice) if(flags & GEAR_HAS_ALPHA_SELECTION) gear_tweaks += list(gear_tweak_alpha_choice) - if(flags & GEAR_HAS_ADDITIONAL_COLOR_SELECTION) - gear_tweaks += list(gear_tweak_additional_color) + if(flags & GEAR_HAS_ACCENT_COLOR_SELECTION) + gear_tweaks += list(gear_tweak_accent_color) if(flags & GEAR_HAS_NAME_SELECTION) gear_tweaks += list(gear_tweak_free_name) if(flags & GEAR_HAS_DESC_SELECTION) diff --git a/code/modules/client/preference_setup/loadout/loadout_eyes.dm b/code/modules/client/preference_setup/loadout/loadout_eyes.dm index afd6781bec7..5bf4f712482 100644 --- a/code/modules/client/preference_setup/loadout/loadout_eyes.dm +++ b/code/modules/client/preference_setup/loadout/loadout_eyes.dm @@ -165,4 +165,4 @@ /datum/gear/eyes/colorable display_name = "colorable glasses" path = /obj/item/clothing/glasses/colorable - flags = GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ALPHA_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION + flags = GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ALPHA_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION diff --git a/code/modules/client/preference_setup/loadout/loadout_suit.dm b/code/modules/client/preference_setup/loadout/loadout_suit.dm index 0a8c241b8fa..baf36b254da 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit.dm @@ -89,9 +89,19 @@ path = /obj/item/clothing/suit/storage/hooded/wintercoat/mars /datum/gear/suit/labcoat - display_name = "labcoat" + display_name = "labcoat selection" + description = "A selection of recolourable labcoats." path = /obj/item/clothing/suit/storage/toggle/labcoat - flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION + flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION + +/datum/gear/suit/labcoat/New() + ..() + var/list/labcoats = list() + labcoats["plain labcoat"] = /obj/item/clothing/suit/storage/toggle/labcoat + labcoats["accent labcoat"] = /obj/item/clothing/suit/storage/toggle/labcoat/accent + labcoats["accent labcoat, alt"] = /obj/item/clothing/suit/storage/toggle/labcoat/accent/alt + labcoats["long labcoat"] = /obj/item/clothing/suit/storage/toggle/longcoat + gear_tweaks += new /datum/gear_tweak/path(labcoats) /datum/gear/suit/cmo_labcoats display_name = "chief medical officer labcoats selection" @@ -158,6 +168,18 @@ poncho["poncho, operations"] = /obj/item/clothing/accessory/poncho/roles/cargo gear_tweaks += new /datum/gear_tweak/path(poncho) +/datum/gear/suit/poncho_colorable + display_name = "poncho selection, colourable" + path = /obj/item/clothing/accessory/poncho/colorable + flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION + +/datum/gear/suit/poncho_colorable/New() + ..() + var/list/col_poncho = list() + col_poncho["poncho"] = /obj/item/clothing/accessory/poncho/colorable + col_poncho["poncho, alt"] = /obj/item/clothing/accessory/poncho/colorable/alt + col_poncho["poncho, gradient"] = /obj/item/clothing/accessory/poncho/colorable/gradient + gear_tweaks += new /datum/gear_tweak/path(col_poncho) /datum/gear/suit/suitjacket display_name = "suit jacket" @@ -194,16 +216,18 @@ gear_tweaks += new /datum/gear_tweak/path(coat) /datum/gear/suit/trenchcoat_colorable - display_name = "colorable trenchcoat" + display_name = "colorable trenchcoat selection" description = "A sleek canvas trenchcoat in 167,777,216 designer colors." path = /obj/item/clothing/suit/storage/toggle/trench/colorable - flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION + flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION -/datum/gear/suit/trenchcoat_colorable_alt - display_name = "colorable trenchcoat, alt" - description = "A sleek canvas trenchcoat in 167,777,216 designer colors." - path = /obj/item/clothing/suit/storage/toggle/trench/colorable/alt - flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION +/datum/gear/suit/trenchcoat_colorable/New() + ..() + var/list/trenches = list() + trenches["trenchcoat"] = /obj/item/clothing/suit/storage/toggle/trench/colorable + trenches["trenchcoat, alt"] = /obj/item/clothing/suit/storage/toggle/trench/colorable/alt + + gear_tweaks += new /datum/gear_tweak/path(trenches) /datum/gear/suit/ian display_name = "worn shirt" diff --git a/code/modules/client/preference_setup/loadout/loadout_xeno/diona.dm b/code/modules/client/preference_setup/loadout/loadout_xeno/diona.dm index ff57a688547..dc07677ced9 100644 --- a/code/modules/client/preference_setup/loadout/loadout_xeno/diona.dm +++ b/code/modules/client/preference_setup/loadout/loadout_xeno/diona.dm @@ -59,7 +59,7 @@ cost = 1 whitelisted = list(SPECIES_DIONA, SPECIES_DIONA_COEUS) sort_category = "Xenowear - Diona" - flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION + flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION /datum/gear/suit/diona/carp display_name = "carp hide poncho" diff --git a/code/modules/client/preference_setup/loadout/loadout_xeno/skrell.dm b/code/modules/client/preference_setup/loadout/loadout_xeno/skrell.dm index 83053ebc4a8..402cecebece 100644 --- a/code/modules/client/preference_setup/loadout/loadout_xeno/skrell.dm +++ b/code/modules/client/preference_setup/loadout/loadout_xeno/skrell.dm @@ -101,7 +101,7 @@ whitelisted = list(SPECIES_SKRELL, SPECIES_SKRELL_AXIORI) sort_category = "Xenowear - Skrell" flags = GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION - + /datum/gear/head/skrell/skrell_bandana display_name = "skrell bandana" path = /obj/item/clothing/head/skrell/skrell_bandana @@ -400,7 +400,7 @@ var/datum/gear_tweak/social_credit/social_credit_tweak = new() path = /obj/item/clothing/under/skrell/wetsuit whitelisted = list(SPECIES_SKRELL, SPECIES_SKRELL_AXIORI) sort_category = "Xenowear - Skrell" - flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION + flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION /datum/gear/ears/skrell/tailband display_name = "SCS tailband" diff --git a/code/modules/client/preference_setup/loadout/loadout_xeno/unathi.dm b/code/modules/client/preference_setup/loadout/loadout_xeno/unathi.dm index 4a915138e10..971c9a52a5c 100644 --- a/code/modules/client/preference_setup/loadout/loadout_xeno/unathi.dm +++ b/code/modules/client/preference_setup/loadout/loadout_xeno/unathi.dm @@ -154,7 +154,7 @@ display_name = "himation cloak" path = /obj/item/clothing/under/unathi/himation cost = 1 - flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION + flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION /datum/gear/head/sinta_ronin display_name = "straw hat" @@ -275,7 +275,7 @@ path = /obj/item/clothing/under/unathi/zazali whitelisted = list(SPECIES_UNATHI, SPECIES_VAURCA_WORKER, SPECIES_VAURCA_WARRIOR) sort_category = "Xenowear - Unathi" - flags = GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION + flags = GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION /datum/gear/uniform/unathi/huytai display_name = "huytai outfit" @@ -392,7 +392,7 @@ whitelisted = list(SPECIES_UNATHI) origin_restriction = list(/singleton/origin_item/origin/heartland_upper, /singleton/origin_item/origin/trad_nobles, , /singleton/origin_item/origin/tza_upper, /singleton/origin_item/origin/southlands_upper, /singleton/origin_item/origin/zazalai_upper, /singleton/origin_item/origin/broken_nobles) sort_category = "Xenowear - Unathi" - flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ADDITIONAL_COLOR_SELECTION + flags = GEAR_HAS_NAME_SELECTION | GEAR_HAS_DESC_SELECTION | GEAR_HAS_COLOR_SELECTION | GEAR_HAS_ACCENT_COLOR_SELECTION /datum/gear/wrists/noble_bracers display_name = "jeweled bracers" diff --git a/code/modules/clothing/glasses/colorable.dm b/code/modules/clothing/glasses/colorable.dm index 4cde56988a1..6b29a553149 100644 --- a/code/modules/clothing/glasses/colorable.dm +++ b/code/modules/clothing/glasses/colorable.dm @@ -7,23 +7,4 @@ icon_override = null contained_sprite = TRUE update_icon_on_init = TRUE - var/additional_color = COLOR_GRAY // The default color. - -/obj/item/clothing/glasses/colorable/update_icon() - cut_overlays() - var/image/frame = image(icon, null, "colorable_glasses_frame") - frame.appearance_flags = RESET_COLOR|RESET_ALPHA - frame.color = additional_color - add_overlay(frame) - -/obj/item/clothing/glasses/colorable/build_additional_parts(mob/living/carbon/human/H, mob_icon, slot) - var/image/image = ..() - if(slot == slot_glasses_str) - var/image/frame = image(mob_icon, null, "colorable_glasses_ey_frame") - frame.appearance_flags = RESET_COLOR|RESET_ALPHA - frame.color = additional_color - if(image) - image.add_overlay(frame) - else - image = frame - return image + has_accents = TRUE diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index ee9da5b9ec6..c5a31368d90 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -1,7 +1,7 @@ /obj/item/clothing/suit/storage/toggle/labcoat name = "labcoat" desc = "A suit that protects against minor chemical spills." - icon = 'icons/mob/clothing/suit/labcoat.dmi' + icon = 'icons/obj/item/clothing/suit/storage/toggle/labcoat.dmi' contained_sprite = TRUE icon_state = "labcoat" item_state = "labcoat" // used for inhands and onmobs. ESPECIALLY FOR CONTAINED SPRITES @@ -16,7 +16,7 @@ /obj/item/clothing/suit/storage/toggle/longcoat name = "long labcoat" desc = "A long, victorian styled labcoat that protects against minor chemical spills." - icon = 'icons/mob/clothing/suit/labcoat.dmi' + icon = 'icons/obj/item/clothing/suit/storage/toggle/labcoat.dmi' contained_sprite = TRUE icon_state = "labcoat_long" item_state = "labcoat_long" // used for inhands and onmobs. ESPECIALLY FOR CONTAINED SPRITES @@ -171,3 +171,12 @@ /obj/item/clothing/suit/storage/toggle/labcoat/iac name = "iac labcoat" icon_state = "labcoat_iac" + +/obj/item/clothing/suit/storage/toggle/labcoat/accent + has_accents = TRUE + icon_state = "labcoat_accent" + item_state = "labcoat_accent" + +/obj/item/clothing/suit/storage/toggle/labcoat/accent/alt + icon_state = "labcoat_accent_alt" + item_state = "labcoat_accent_alt" diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index e7c9e5a2d01..9e101456e92 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -348,8 +348,10 @@ /obj/item/clothing/suit/storage/toggle/trench name = "brown trenchcoat" desc = "A rugged canvas trenchcoat." + icon = 'icons/obj/item/clothing/suit/storage/toggle/trenchcoat.dmi' icon_state = "trench" item_state = "trench" + contained_sprite = TRUE blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS @@ -390,23 +392,7 @@ /obj/item/clothing/suit/storage/toggle/trench/colorable/alt icon_state = "trench_colorable2" item_state = "trench_colorable2" - var/additional_color = COLOR_GRAY - -/obj/item/clothing/suit/storage/toggle/trench/colorable/alt/update_icon() - cut_overlays() - var/image/belt = image(icon, null, "trench_colorable2_belt[opened ? "_open" : null]") - belt.appearance_flags = RESET_COLOR - belt.color = additional_color - add_overlay(belt) - -/obj/item/clothing/suit/storage/toggle/trench/colorable/alt/get_mob_overlay(mob/living/carbon/human/H, mob_icon, mob_state, slot) - var/image/I = ..() - if(slot == slot_wear_suit_str) - var/image/belt = image(mob_icon, null, "trench_colorable2_belt[opened ? "_open" : null]") - belt.appearance_flags = RESET_COLOR - belt.color = additional_color - I.add_overlay(belt) - return I + has_accents = TRUE /obj/item/clothing/suit/storage/toggle/highvis name = "high visibility jacket" diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 50f661569f3..511b2ab29a9 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -420,15 +420,17 @@ /obj/item/clothing/accessory/poncho name = "poncho" desc = "A simple, comfortable poncho." + icon = 'icons/obj/item/clothing/accessory/poncho/poncho.dmi' icon_state = "classicponcho" item_state = "classicponcho" - icon_override = 'icons/mob/ties.dmi' + icon_override = 'icons/obj/item/clothing/accessory/poncho/poncho.dmi' allowed = list(/obj/item/tank/emergency_oxygen,/obj/item/storage/bible,/obj/item/nullrod,/obj/item/reagent_containers/food/drinks/bottle/holywater) slot_flags = SLOT_OCLOTHING | SLOT_TIE body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS siemens_coefficient = 0.9 w_class = ITEMSIZE_NORMAL slot = ACCESSORY_SLOT_CAPE + contained_sprite = TRUE var/allow_tail_hiding = TRUE //in case if you want to allow someone to switch the HIDETAIL var or not /obj/item/clothing/accessory/poncho/verb/toggle_hide_tail() @@ -512,6 +514,21 @@ icon_state = "cargoponcho" item_state = "cargoponcho" +/obj/item/clothing/accessory/poncho/colorable + name = "poncho" + desc = "A simple, comfortable cloak without sleeves." + icon_state = "colourponcho" + item_state = "colourponcho" + has_accents = TRUE + +/obj/item/clothing/accessory/poncho/colorable/alt + icon_state = "trimponcho" + item_state = "trimponcho" + +/obj/item/clothing/accessory/poncho/colorable/gradient + icon_state = "gradponcho" + item_state = "gradponcho" + /* * Sashes */ diff --git a/code/modules/clothing/under/accessories/xeno/diona.dm b/code/modules/clothing/under/accessories/xeno/diona.dm index bfcbb32b936..684216c1b8d 100644 --- a/code/modules/clothing/under/accessories/xeno/diona.dm +++ b/code/modules/clothing/under/accessories/xeno/diona.dm @@ -15,7 +15,7 @@ drop_sound = 'sound/items/drop/card.ogg' pickup_sound = 'sound/items/pickup/card.ogg' - + /obj/item/clothing/accessory/poncho/eumponcho name = "adorned poncho" desc = "A poncho made of some sort of mesh weave material adorned by a piece of colored fabric wrapped around it." @@ -24,37 +24,6 @@ item_state = "eumponcho" icon_override = null contained_sprite = TRUE - var/additional_color = COLOR_GRAY - -/obj/item/clothing/accessory/poncho/eumponcho/update_icon() - cut_overlays() - var/image/gem = image(icon, null, "eumponcho_gem") - gem.appearance_flags = RESET_COLOR - gem.color = additional_color - add_overlay(gem) - var/image/chain = image(icon, null, "eumponcho_chain") - chain.appearance_flags = RESET_COLOR - add_overlay(chain) - -/obj/item/clothing/accessory/poncho/eumponcho/get_mob_overlay(var/mob/living/carbon/human/H, var/mob_icon, var/mob_state, var/slot) - var/image/I = ..() - if(slot == slot_wear_suit_str) - var/image/gem = image(mob_icon, null, "eumponcho_un_gem") - gem.appearance_flags = RESET_COLOR - gem.color = additional_color - I.add_overlay(gem) - var/image/chain = image(mob_icon, null, "eumponcho_un_chain") - chain.appearance_flags = RESET_COLOR - I.add_overlay(chain) - return I - -/obj/item/clothing/accessory/poncho/eumponcho/get_accessory_mob_overlay(mob/living/carbon/human/H, force) - var/image/base = ..() - var/image/gem = image(icon, null, "eumponcho_un_gem") - gem.appearance_flags = RESET_COLOR - gem.color = additional_color - base.add_overlay(gem) - var/image/chain = image(icon, null, "eumponcho_un_chain") - chain.appearance_flags = RESET_COLOR - base.add_overlay(chain) - return base + build_from_parts = TRUE + worn_overlay = "chain" + has_accents = TRUE diff --git a/code/modules/clothing/under/accessories/xeno/unathi.dm b/code/modules/clothing/under/accessories/xeno/unathi.dm index 361701afc18..b3b2781ce3f 100644 --- a/code/modules/clothing/under/accessories/xeno/unathi.dm +++ b/code/modules/clothing/under/accessories/xeno/unathi.dm @@ -193,37 +193,6 @@ item_state = "rockstone" icon_override = null contained_sprite = TRUE - var/additional_color = COLOR_GRAY - -/obj/item/clothing/accessory/poncho/rockstone/update_icon() - cut_overlays() - var/image/gem = image(icon, null, "rockstone_gem") - gem.appearance_flags = RESET_COLOR - gem.color = additional_color - add_overlay(gem) - var/image/chain = image(icon, null, "rockstone_chain") - chain.appearance_flags = RESET_COLOR - add_overlay(chain) - -/obj/item/clothing/accessory/poncho/rockstone/get_mob_overlay(var/mob/living/carbon/human/H, var/mob_icon, var/mob_state, var/slot) - var/image/I = ..() - if(slot == slot_wear_suit_str) - var/image/gem = image(mob_icon, null, "rockstone_un_gem") - gem.appearance_flags = RESET_COLOR - gem.color = additional_color - I.add_overlay(gem) - var/image/chain = image(mob_icon, null, "rockstone_un_chain") - chain.appearance_flags = RESET_COLOR - I.add_overlay(chain) - return I - -/obj/item/clothing/accessory/poncho/rockstone/get_accessory_mob_overlay(mob/living/carbon/human/H, force) - var/image/base = ..() - var/image/gem = image(icon, null, "rockstone_un_gem") - gem.appearance_flags = RESET_COLOR - gem.color = additional_color - base.add_overlay(gem) - var/image/chain = image(icon, null, "rockstone_un_chain") - chain.appearance_flags = RESET_COLOR - base.add_overlay(chain) - return base + build_from_parts = TRUE + worn_overlay = "chain" + has_accents = TRUE diff --git a/code/modules/clothing/under/xenos/skrell.dm b/code/modules/clothing/under/xenos/skrell.dm index a35c09a84db..bb55cb74a9d 100644 --- a/code/modules/clothing/under/xenos/skrell.dm +++ b/code/modules/clothing/under/xenos/skrell.dm @@ -318,23 +318,7 @@ icon = 'icons/obj/item/clothing/under/skrell/wetsuit.dmi' icon_state = "wetsuit" item_state = "wetsuit" - var/additional_color = COLOR_GRAY - -/obj/item/clothing/under/skrell/wetsuit/update_icon() - cut_overlays() - var/image/accent = image(icon, null, "wetsuit_un_accent") - accent.appearance_flags = RESET_COLOR - accent.color = additional_color - add_overlay(accent) - -/obj/item/clothing/under/skrell/wetsuit/get_mob_overlay(var/mob/living/carbon/human/H, var/mob_icon, var/mob_state, var/slot) - var/image/I = ..() - if(slot == slot_w_uniform_str) - var/image/accent = image(mob_icon, null, "wetsuit_un_accent") - accent.appearance_flags = RESET_COLOR - accent.color = additional_color - I.add_overlay(accent) - return I + has_accents = TRUE /obj/item/clothing/suit/storage/toggle/skrell/starcoat name = "star coat" diff --git a/code/modules/clothing/under/xenos/unathi.dm b/code/modules/clothing/under/xenos/unathi.dm index d5da46fbd59..35ccc91c42a 100644 --- a/code/modules/clothing/under/xenos/unathi.dm +++ b/code/modules/clothing/under/xenos/unathi.dm @@ -61,29 +61,9 @@ worn by those in the warrior caste or those with something to prove." icon_state = "zazali" item_state = "zazali" - var/additional_color = COLOR_GRAY // The default color. - -/obj/item/clothing/under/unathi/zazali/update_icon() - cut_overlays() - var/image/top = image(icon, null, "zazali_top") - top.appearance_flags = RESET_COLOR - top.color = additional_color - add_overlay(top) - var/image/belt = image(icon, null, "zazali_belt") - belt.appearance_flags = RESET_COLOR - add_overlay(belt) - -/obj/item/clothing/under/unathi/zazali/get_mob_overlay(var/mob/living/carbon/human/H, var/mob_icon, var/mob_state, var/slot) - var/image/I = ..() - if(slot == slot_w_uniform_str) - var/image/top = image(mob_icon, null, "zazali_un_top") - top.appearance_flags = RESET_COLOR - top.color = additional_color - I.add_overlay(top) - var/image/belt = image(mob_icon, null, "zazali_un_belt") - belt.appearance_flags = RESET_COLOR - I.add_overlay(belt) - return I + build_from_parts = TRUE + worn_overlay = "belt" + has_accents = TRUE /obj/item/clothing/under/unathi/huytai name = "huytai outfit" @@ -107,26 +87,6 @@ for simple noble wear (the cloth can be embroidered), and practical for labor!" icon_state = "himation" item_state = "himation" - var/additional_color = COLOR_GRAY - -/obj/item/clothing/under/unathi/himation/update_icon() - cut_overlays() - var/image/skirt = image(icon, null, "himation_skirt") - skirt.appearance_flags = RESET_COLOR - skirt.color = additional_color - add_overlay(skirt) - var/image/belt = image(icon, null, "himation_belt") - belt.appearance_flags = RESET_COLOR - add_overlay(belt) - -/obj/item/clothing/under/unathi/himation/get_mob_overlay(var/mob/living/carbon/human/H, var/mob_icon, var/mob_state, var/slot) - var/image/I = ..() - if(slot == slot_w_uniform_str) - var/image/skirt = image(mob_icon, null, "himation_un_skirt") - skirt.appearance_flags = RESET_COLOR - skirt.color = additional_color - I.add_overlay(skirt) - var/image/belt = image(mob_icon, null, "himation_un_belt") - belt.appearance_flags = RESET_COLOR - I.add_overlay(belt) - return I + build_from_parts = TRUE + worn_overlay = "belt" + has_accents = TRUE diff --git a/html/changelogs/accent_items.yml b/html/changelogs/accent_items.yml new file mode 100644 index 00000000000..805b300be9e --- /dev/null +++ b/html/changelogs/accent_items.yml @@ -0,0 +1,8 @@ +author: Sparky_hotdog + +delete-after: True + +changes: + - rscadd: "Added two new labcoats to the loadout with colourable accents." + - rscadd: "Added three new ponchos to the loadout with colourable accents." + - tweak: "Merged the colourable trenchcoats into one loadout selection." diff --git a/icons/mob/clothing/suit/labcoat.dmi b/icons/mob/clothing/suit/labcoat.dmi deleted file mode 100644 index 6ebef186696..00000000000 Binary files a/icons/mob/clothing/suit/labcoat.dmi and /dev/null differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 18aaef68e5a..8a77b0383a6 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/mob/ties.dmi b/icons/mob/ties.dmi index f82f24b94d3..06ca1907c81 100644 Binary files a/icons/mob/ties.dmi and b/icons/mob/ties.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index d1bbc0ceca2..9c9250c79f3 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/clothing/ties.dmi b/icons/obj/clothing/ties.dmi index cf8b8dfd15c..01fc9a830c8 100644 Binary files a/icons/obj/clothing/ties.dmi and b/icons/obj/clothing/ties.dmi differ diff --git a/icons/obj/diona_items.dmi b/icons/obj/diona_items.dmi index cbffa7bf861..cbc63c514cd 100644 Binary files a/icons/obj/diona_items.dmi and b/icons/obj/diona_items.dmi differ diff --git a/icons/obj/item/clothing/accessory/poncho/poncho.dmi b/icons/obj/item/clothing/accessory/poncho/poncho.dmi new file mode 100644 index 00000000000..af8c45f1871 Binary files /dev/null and b/icons/obj/item/clothing/accessory/poncho/poncho.dmi differ diff --git a/icons/obj/item/clothing/eyes/colorable_glasses.dmi b/icons/obj/item/clothing/eyes/colorable_glasses.dmi index 9211cfab652..3631258f907 100644 Binary files a/icons/obj/item/clothing/eyes/colorable_glasses.dmi and b/icons/obj/item/clothing/eyes/colorable_glasses.dmi differ diff --git a/icons/obj/item/clothing/suit/storage/toggle/labcoat.dmi b/icons/obj/item/clothing/suit/storage/toggle/labcoat.dmi new file mode 100644 index 00000000000..c58c2f959c6 Binary files /dev/null and b/icons/obj/item/clothing/suit/storage/toggle/labcoat.dmi differ diff --git a/icons/obj/item/clothing/suit/storage/toggle/trenchcoat.dmi b/icons/obj/item/clothing/suit/storage/toggle/trenchcoat.dmi new file mode 100644 index 00000000000..99679aa7f0e Binary files /dev/null and b/icons/obj/item/clothing/suit/storage/toggle/trenchcoat.dmi differ diff --git a/icons/obj/item/clothing/under/skrell/wetsuit.dmi b/icons/obj/item/clothing/under/skrell/wetsuit.dmi index 7dcf5ae8dab..1dd67b318e0 100644 Binary files a/icons/obj/item/clothing/under/skrell/wetsuit.dmi and b/icons/obj/item/clothing/under/skrell/wetsuit.dmi differ diff --git a/icons/obj/unathi_items.dmi b/icons/obj/unathi_items.dmi index 988b4045012..38f0fd44d8b 100644 Binary files a/icons/obj/unathi_items.dmi and b/icons/obj/unathi_items.dmi differ