diff --git a/code/datums/trading/misc.dm b/code/datums/trading/misc.dm index 903673274ff..b98be73595c 100644 --- a/code/datums/trading/misc.dm +++ b/code/datums/trading/misc.dm @@ -144,7 +144,6 @@ /obj/item/clothing/glasses/monocle = TRADER_THIS_TYPE, /obj/item/clothing/mask/smokable/pipe = TRADER_THIS_TYPE, /obj/item/clothing/mask/gas/plaguedoctor = TRADER_THIS_TYPE, - /obj/item/clothing/suit/hastur = TRADER_THIS_TYPE, /obj/item/clothing/suit/imperium_monk = TRADER_THIS_TYPE, /obj/item/clothing/suit/judgerobe = TRADER_THIS_TYPE, /obj/item/clothing/suit/wizrobe/magusred = TRADER_THIS_TYPE, diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm index e21815376ab..9dac634e270 100644 --- a/code/game/objects/effects/landmarks.dm +++ b/code/game/objects/effects/landmarks.dm @@ -135,7 +135,7 @@ /obj/effect/landmark/costume/madscientist/New() new /obj/item/clothing/under/gimmick/rank/captain/suit(src.loc) new /obj/item/clothing/head/flatcap(src.loc) - new /obj/item/clothing/suit/storage/toggle/labcoat/mad(src.loc) + new /obj/item/clothing/suit/storage/toggle/labcoat(src.loc) new /obj/item/clothing/glasses/regular(src.loc) delete_me = 1 diff --git a/code/game/objects/structures/coathanger.dm b/code/game/objects/structures/coathanger.dm index c79a22f2c3c..86dc703e9d3 100644 --- a/code/game/objects/structures/coathanger.dm +++ b/code/game/objects/structures/coathanger.dm @@ -53,7 +53,5 @@ if (coat) if(istype(coat, /obj/item/clothing/suit/storage/toggle)) var/obj/item/clothing/suit/storage/toggle/T = coat - if(T.icon_state == T.icon_open) // avoid icon conflicts - T.icon_state = T.icon_closed - T.item_state = T.icon_closed + T.icon_state = initial(T.icon_state) add_overlay("coat_[coat.icon_state]") diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 6bf2ea4213f..95c45dfbdf5 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -348,7 +348,7 @@ /obj/structure/closet/secure_closet/detective/fill() //Appearance - new /obj/item/clothing/suit/storage/toggle/det_jacket(src) + new /obj/item/clothing/suit/storage/det_jacket(src) new /obj/item/clothing/under/det(src) new /obj/item/clothing/under/det/black(src) new /obj/item/clothing/under/det/classic(src) diff --git a/code/modules/client/preference_setup/loadout/loadout_suit.dm b/code/modules/client/preference_setup/loadout/loadout_suit.dm index 85938bfd899..88bcd6cb527 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit.dm @@ -163,7 +163,6 @@ var/coat = list() coat["brown trenchcoat (Detective)"] = /obj/item/clothing/suit/storage/toggle/det_trench coat["black trenchcoat (Detective)"] = /obj/item/clothing/suit/storage/toggle/det_trench/black - coat["technicolor trenchcoat (Detective)"] = /obj/item/clothing/suit/storage/toggle/det_trench/technicolor gear_tweaks += new/datum/gear_tweak/path(coat) diff --git a/code/modules/clothing/factions/dominia.dm b/code/modules/clothing/factions/dominia.dm index 3337c448fb9..3c777da2934 100644 --- a/code/modules/clothing/factions/dominia.dm +++ b/code/modules/clothing/factions/dominia.dm @@ -55,23 +55,17 @@ icon = 'icons/clothing/suits/coats/dominia_noble_red.dmi' icon_state = "dominia_noble_red" item_state = "dominia_noble_red" - icon_open = "dominia_noble_red_open" - icon_closed = "dominia_noble_red" contained_sprite = TRUE /obj/item/clothing/suit/storage/toggle/dominia/gold icon = 'icons/clothing/suits/coats/dominia_noble_gold.dmi' icon_state = "dominia_noble_gold" item_state = "dominia_noble_gold" - icon_open = "dominia_noble_gold_open" - icon_closed = "dominia_noble_gold" /obj/item/clothing/suit/storage/toggle/dominia/black icon = 'icons/clothing/suits/coats/dominia_noble_black.dmi' icon_state = "dominia_noble_black" item_state = "dominia_noble_black" - icon_open = "dominia_noble_black_open" - icon_closed = "dominia_noble_black" /obj/item/clothing/suit/storage/toggle/dominia/bomber name = "dominia bomber jacket" @@ -79,8 +73,6 @@ icon = 'icons/clothing/suits/coats/dominia_bomber.dmi' icon_state = "dominia_bomber" item_state = "dominia_bomber" - icon_open = "dominia_bomber_open" - icon_closed = "dominia_bomber" /obj/item/clothing/under/dominia name = "dominia suit" diff --git a/code/modules/clothing/factions/himeo.dm b/code/modules/clothing/factions/himeo.dm index 055c4a233ce..8c2dd8ba97f 100644 --- a/code/modules/clothing/factions/himeo.dm +++ b/code/modules/clothing/factions/himeo.dm @@ -5,8 +5,6 @@ icon = 'icons/clothing/suits/coats/himeo_coat.dmi' icon_state = "coat_himeo" item_state = "coat_himeo" - icon_open = "coat_himeo_open" - icon_closed = "coat_himeo" contained_sprite = TRUE /obj/item/clothing/head/soft/himeo @@ -17,4 +15,4 @@ icon = 'icons/clothing/head/himeo_cap.dmi' icon_state = "cap_himeo" item_state = "cap_himeo" - contained_sprite = TRUE \ No newline at end of file + contained_sprite = TRUE diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 10e3dec7750..e5eb333acc4 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -199,29 +199,3 @@ /obj/item/clothing/head/det/grey icon_state = "grey_fedora" desc = "A grey fedora - either the cornerstone of a detective's style or a poor attempt at looking cool, depending on the person wearing it." - -/obj/item/clothing/head/det/technicolor - desc = "A 23rd-century fedora. It's fibres are hyper-absorbent." - icon = 'icons/obj/clothing/coloured_detective_hats.dmi' - icon_state = "hat_detective_black" - item_state = "hat_detective_black" - var/hat_color - contained_sprite = 1 - -/obj/item/clothing/head/det/technicolor/Initialize() - if(prob(5)) - var/list/colors = list("yellow"=2,"red"=1,"white"=1,"orange"=1,"purple"=1,"green"=1,"blue"=1 ) - var/color = pickweight(colors) - icon_state = "hat_detective_[color]" - item_state = "hat_detective_[color]" - . = ..() - -/obj/item/clothing/head/det/technicolor/attackby(obj/item/O as obj, mob/user as mob) - if(istype(O, /obj/item/reagent_containers/glass/paint)) - var/obj/item/reagent_containers/glass/paint/P = O - hat_color = P.paint_type - name = "[hat_color] fedora" - user.visible_message("[user] soaks \the [src] into [P]!") - icon_state = "hat_detective_[hat_color]" - item_state = "hat_detective_[hat_color]" - ..() diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index 84efb6c0987..593a1e7996c 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -105,8 +105,6 @@ desc = "A trenchcoat lined with a protective alloy and some slick leather." icon_state = "jensencoat" item_state = "jensencoat" - icon_open = "jensencoat_open" - icon_closed = "jensencoat" body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS armor = list(melee = 65, bullet = 30, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0) allowed = list(/obj/item/gun/energy, /obj/item/reagent_containers/spray/pepper, /obj/item/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/handcuffs, /obj/item/device/flashlight) @@ -205,7 +203,6 @@ body_parts_covered = UPPER_TORSO|LOWER_TORSO armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0) - //Reactive armor //When the wearer gets hit, this armor will teleport the user a short distance away (to safety or to more danger, no one knows. That's the fun of it!) /obj/item/clothing/suit/armor/reactive @@ -413,8 +410,6 @@ desc = "A sturdy high-visibility vest intended for in training security personnel." icon_state = "hazard_cadet" item_state = "hazard_cadet" - icon_open = "hazard_cadet_open" - icon_closed = "hazard_cadet" allowed = list(/obj/item/gun,/obj/item/reagent_containers/spray/pepper,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/handcuffs,/obj/item/device/flashlight) armor = list(melee = 10, bullet = 0, laser = 10, energy = 10, bomb = 10, bio = 0, rad = 0) siemens_coefficient = 0.5 diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index d6ec63322e1..0910afbe949 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -29,7 +29,7 @@ obj/item/clothing/suit/apron/colored /obj/item/clothing/suit/apron/overalls/random/Initialize() . = ..() color = get_random_colour(lower = 150) - + obj/item/clothing/suit/apron/overalls/blue color = "#3429d1" @@ -123,10 +123,9 @@ obj/item/clothing/suit/apron/overalls/blue //Detective -/obj/item/clothing/suit/storage/toggle/det_jacket +/obj/item/clothing/suit/storage/det_jacket name = "detective's jacket" - desc = "Stylish yet comfortable professional jacket manufactured by CL corporation for NT detectives. Unique fiber structure will offer moderate protection from various hazards investigators may encounter in the line of duty" - icon = 'icons/obj/clothing/detective.dmi' + desc = "Stylish yet comfortable professional jacket manufactured by CL corporation for NT detectives. Unique fiber structure will offer moderate protection from various hazards investigators may encounter in the line of duty." icon_state = "det" item_state = "det" blood_overlay_type = "coat" @@ -142,8 +141,6 @@ obj/item/clothing/suit/apron/overalls/blue icon_state = "detective" item_state = "detective" blood_overlay_type = "coat" - icon_open = "detective_open" - icon_closed = "detective" body_parts_covered = UPPER_TORSO|ARMS allowed = list(/obj/item/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/gun/energy,/obj/item/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/handcuffs,/obj/item/storage/box/fancy/cigarettes,/obj/item/flame/lighter,/obj/item/device/taperecorder) armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0) @@ -153,40 +150,6 @@ obj/item/clothing/suit/apron/overalls/blue /obj/item/clothing/suit/storage/toggle/det_trench/black name = "black trenchcoat" icon_state = "detective2" - icon_open = "detective2_open" - icon_closed = "detective2" - -/obj/item/clothing/suit/storage/toggle/det_trench/technicolor - name = "black trenchcoat" - desc = "A 23rd-century multi-purpose trenchcoat. It's fibres are hyper-absorbent." - icon_state = "suit_detective_black" - item_state = "suit_detective_black" - icon_open = "suit_detective_black_open" - icon_closed = "suit_detective_black" - var/suit_color - -/obj/item/clothing/suit/storage/toggle/det_trench/technicolor/Initialize() - if(prob(5)) - var/list/colors = list("yellow"=2,"red"=1,"white"=1,"orange"=1,"purple"=1,"green"=1,"blue"=1 ) - var/color = pickweight(colors) - name = "[color] trenchcoat" - icon_state = "suit_detective_[color]" - item_state = "suit_detective_[color]" - icon_open = "suit_detective_[color]_open" - icon_closed = "suit_detective_[color]" - . = ..() - -/obj/item/clothing/suit/storage/toggle/det_trench/technicolor/attackby(obj/item/O as obj, mob/user as mob) - if(istype(O, /obj/item/reagent_containers/glass/paint)) - var/obj/item/reagent_containers/glass/paint/P = O - suit_color = P.paint_type - name = "[suit_color] trenchcoat" // Added name change, why was it never here?! - user.visible_message("[user] soaks \the [src] into [P]!") - icon_state = "suit_detective_[suit_color]" - item_state = "suit_detective_[suit_color]" - icon_open = "suit_detective_[suit_color]_open" - icon_closed = "suit_detective_[suit_color]" - . = ..() //Forensics /obj/item/clothing/suit/storage/forensics @@ -213,31 +176,26 @@ obj/item/clothing/suit/apron/overalls/blue desc = "A high-visibility vest used in work zones." icon_state = "hazard" item_state = "hazard" - var/icon_open = "hazard_open" - var/icon_closed = "hazard" blood_overlay_type = "armor" allowed = list (/obj/item/device/analyzer, /obj/item/device/flashlight, /obj/item/device/multitool, /obj/item/device/pipe_painter, /obj/item/device/radio, /obj/item/device/t_scanner, \ /obj/item/crowbar, /obj/item/screwdriver, /obj/item/weldingtool, /obj/item/wirecutters, /obj/item/wrench, /obj/item/tank/emergency_oxygen, \ /obj/item/clothing/mask/gas, /obj/item/taperoll/engineering) body_parts_covered = UPPER_TORSO + var/opened /obj/item/clothing/suit/storage/hazardvest/verb/Toggle() //copied from storage toggle set name = "Toggle Hazard Vest" set category = "Object" set src in usr + if(use_check_and_message(usr)) - return FALSE - if(icon_state == icon_open) - item_state = icon_closed - icon_state = icon_closed - to_chat(usr, SPAN_NOTICE("You zip up the hazard vest.")) - else if(icon_state == icon_closed) - item_state = icon_open - icon_state = icon_open - to_chat(usr, SPAN_NOTICE("You unzip the hazard vest.")) - else - to_chat(usr, SPAN_NOTICE("You attempt to zip up your [src], before promptly realising how silly you are.")) - return + return 0 + + opened = !opened + to_chat(usr, SPAN_NOTICE("You [opened ? "unzip" : "zip"] \the [src].")) + playsound(src, 'sound/items/zip.ogg', EQUIP_SOUND_VOLUME, TRUE) + icon_state = "[initial(icon_state)][opened ? "_open" : ""]" + item_state = icon_state update_clothing_icon() /obj/item/clothing/suit/storage/hazardvest/blue @@ -245,8 +203,6 @@ obj/item/clothing/suit/apron/overalls/blue desc = "A high-visibility vest used in work zones. This one is blue." icon_state = "hazard_b" item_state = "hazard_b" - icon_open = "hazard_b_open" - icon_closed = "hazard_b" /obj/item/clothing/suit/storage/hazardvest/blue/atmos name = "atmospheric hazard vest" @@ -257,88 +213,76 @@ obj/item/clothing/suit/apron/overalls/blue desc = "A high-visibility vest used in work zones. This one is white." icon_state = "hazard_w" item_state = "hazard_w" - icon_open = "hazard_w_open" - icon_closed = "hazard_w" /obj/item/clothing/suit/storage/hazardvest/green name = "green hazard vest" desc = "A high-visibility vest used in work zones. This one is green." icon_state = "hazard_g" item_state = "hazard_g" - icon_open = "hazard_g_open" - icon_closed = "hazard_g" //Lawyer /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket - name = "blue suit Jacket" + name = "blue suit jacket" desc = "A snappy dress jacket." - icon_state = "suitjacket_blue_open" - item_state = "suitjacket_blue_open" - icon_open = "suitjacket_blue_open" - icon_closed = "suitjacket_blue" + icon_state = "suitjacket_blue" + item_state = "suitjacket_blue" blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS + opened = TRUE /obj/item/clothing/suit/storage/lawyer/purpjacket - name = "blue suit Jacket" + name = "purple suit jacket" desc = "A snappy dress jacket." icon_state = "suitjacket_purp" item_state = "suitjacket_purp" blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS - //Internal Affairs /obj/item/clothing/suit/storage/toggle/liaison name = "liaison jacket" desc = "A smooth black jacket." - icon_state = "ia_jacket_open" + icon_state = "ia_jacket" item_state = "ia_jacket" - icon_open = "ia_jacket_open" - icon_closed = "ia_jacket" blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS + opened = TRUE //Resprited from IAA jacket /obj/item/clothing/suit/storage/toggle/suitjacket name = "suit jacket" desc = "A snappy dress jacket." - icon_state = "suitjacket_open" - item_state = "suitjacket_open" - icon_open = "suitjacket_open" - icon_closed = "suitjacket" + icon_state = "suitjacket" + item_state = "suitjacket" blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS + opened = TRUE /obj/item/clothing/suit/storage/toggle/suitjacket/blazer name = "blazer" desc = "A charming jacket." desc_fluff = "for when you want to play ball sports like an aristocrat." - icon_state = "blazer_open" - item_state = "blazer_open" - icon_open = "blazer_open" - icon_closed = "blazer" + icon_state = "blazer" + item_state = "blazer" + opened = TRUE //Medical /obj/item/clothing/suit/storage/toggle/fr_jacket name = "first responder jacket" desc = "A high-visibility jacket worn by medical first responders." - icon_state = "fr_jacket_open" + icon_state = "fr_jacket" item_state = "fr_jacket" - icon_open = "fr_jacket_open" - icon_closed = "fr_jacket" blood_overlay_type = "armor" allowed = list(/obj/item/stack/medical, /obj/item/reagent_containers/dropper, /obj/item/reagent_containers/hypospray, /obj/item/reagent_containers/syringe, \ /obj/item/device/healthanalyzer, /obj/item/device/flashlight, /obj/item/device/radio, /obj/item/tank/emergency_oxygen, /obj/item/device/breath_analyzer, /obj/item/reagent_containers/blood) body_parts_covered = UPPER_TORSO|ARMS + opened = TRUE /obj/item/clothing/suit/storage/toggle/fr_jacket/ems name = "\improper EMS jacket" desc = "A dark blue, martian-pattern, EMS jacket. It sports high-visibility reflective stripes and a star of life on the back." - icon_state = "ems_jacket_closed" - item_state = "ems_jacket_closed" - icon_open = "ems_jacket_open" - icon_closed = "ems_jacket_closed" + icon_state = "ems_jacket" + item_state = "ems_jacket" /obj/item/clothing/suit/storage/medical_chest_rig name = "medic chest-rig" @@ -374,5 +318,3 @@ obj/item/clothing/suit/apron/overalls/blue contained_sprite = TRUE icon_state = "emtjacket" item_state = "emtjacket" - icon_open = "emtjacket-open" - icon_closed = "emtjacket" \ No newline at end of file diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index 4e62bae6900..fb8b9148e19 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -1,154 +1,83 @@ /obj/item/clothing/suit/storage/toggle/labcoat name = "labcoat" desc = "A suit that protects against minor chemical spills." - icon_state = "labcoat_open" - item_state = "labcoat" //Is this even used for anything? - icon_open = "labcoat_open" - icon_closed = "labcoat" + icon_state = "labcoat" + item_state = "labcoat" // used for inhands and onmobs. ESPECIALLY FOR CONTAINED SPRITES blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/dnainjector,/obj/item/reagent_containers/dropper,/obj/item/reagent_containers/syringe,/obj/item/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/reagent_containers/glass/bottle,/obj/item/reagent_containers/glass/beaker,/obj/item/reagent_containers/pill,/obj/item/storage/pill_bottle,/obj/item/paper, /obj/item/device/breath_analyzer) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) - -/obj/item/clothing/suit/storage/toggle/labcoat/red - name = "red labcoat" - desc = "A suit that protects against minor chemical spills. This one is red." - icon_state = "red_labcoat_open" - item_state = "red_labcoat" - icon_open = "red_labcoat_open" - icon_closed = "red_labcoat" - -/obj/item/clothing/suit/storage/toggle/labcoat/blue - name = "blue labcoat" - desc = "A suit that protects against minor chemical spills. This one is blue." - icon_state = "blue_labcoat_open" - item_state = "blue_labcoat" - icon_open = "blue_labcoat_open" - icon_closed = "blue_labcoat" - -/obj/item/clothing/suit/storage/toggle/labcoat/purple - name = "purple labcoat" - desc = "A suit that protects against minor chemical spills. This one is purple." - icon_state = "purple_labcoat_open" - item_state = "purple_labcoat" - icon_open = "purple_labcoat_open" - icon_closed = "purple_labcoat" - -/obj/item/clothing/suit/storage/toggle/labcoat/orange - name = "orange labcoat" - desc = "A suit that protects against minor chemical spills. This one is orange." - icon_state = "orange_labcoat_open" - item_state = "orange_labcoat" - icon_open = "orange_labcoat_open" - icon_closed = "orange_labcoat" - -/obj/item/clothing/suit/storage/toggle/labcoat/green - name = "green labcoat" - desc = "A suit that protects against minor chemical spills. This one is green." - icon_state = "green_labcoat_open" - item_state = "green_labcoat" - icon_open = "green_labcoat_open" - icon_closed = "green_labcoat" + opened = TRUE // spawns opened /obj/item/clothing/suit/storage/toggle/labcoat/cmo name = "chief medical officer's labcoat" desc = "Bluer than the standard model." - icon_state = "labcoat_cmo_open" + icon_state = "labcoat_cmo" item_state = "labcoat_cmo" - icon_open = "labcoat_cmo_open" - icon_closed = "labcoat_cmo" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt name = "chief medical officer labcoat" desc = "A labcoat with command blue highlights." - icon_state = "labcoat_cmoalt_open" - icon_open = "labcoat_cmoalt_open" - icon_closed = "labcoat_cmoalt" + icon_state = "labcoat_cmoalt" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt2 name = "chief medical officer labcoat" desc = "A labcoat with command gold highlights." - icon_state = "labcoat_cmoalt2_open" - icon_open = "labcoat_cmoalt2_open" - icon_closed = "labcoat_cmoalt2" + icon_state = "labcoat_cmoalt2" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) -/obj/item/clothing/suit/storage/toggle/labcoat/mad - name = "the mad's labcoat" - desc = "It makes you look capable of konking someone on the noggin and shooting them into space." - icon_state = "labgreen_open" - item_state = "labgreen" - icon_open = "labgreen_open" - icon_closed = "labgreen" - /obj/item/clothing/suit/storage/toggle/labcoat/genetics name = "geneticist labcoat" desc = "A suit that protects against minor chemical spills. Has a blue stripe on the shoulder." - icon_state = "labcoat_gen_open" - icon_open = "labcoat_gen_open" - icon_closed = "labcoat_gen" + icon_state = "labcoat_gen" /obj/item/clothing/suit/storage/toggle/labcoat/medical name = "medical labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has a green stripe on the shoulder." - icon_state = "labcoat_med_open" - icon_open = "labcoat_med_open" - icon_closed = "labcoat_med" + icon_state = "labcoat_med" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/pharmacist name = "pharmacist labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has an orange stripe on the shoulder." - icon_state = "labcoat_chem_open" - icon_open = "labcoat_chem_open" - icon_closed = "labcoat_chem" + icon_state = "labcoat_chem" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/biochemist name = "protective labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has a red stripe on the shoulder." - icon_state = "labcoat_vir_open" - icon_open = "labcoat_vir_open" - icon_closed = "labcoat_vir" + icon_state = "labcoat_vir" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/psych name = "psychiatrist labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has a teal stripe on the shoulder." - icon_state = "labcoat_psych_open" - icon_open = "labcoat_psych_open" - icon_closed = "labcoat_psych" + icon_state = "labcoat_psych" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/surgeon name = "surgeon labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has a light blue stripe on the shoulder." - icon_state = "labcoat_surgeon_open" - icon_open = "labcoat_surgeon_open" - icon_closed = "labcoat_surgeon" + icon_state = "labcoat_surgeon" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/trauma name = "trauma physician labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Has a black stripe on the shoulder." - icon_state = "labcoat_trauma_open" - icon_open = "labcoat_trauma_open" - icon_closed = "labcoat_trauma" + icon_state = "labcoat_trauma" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/science name = "scientist labcoat" desc = "A suit that protects against minor chemical spills. Has a purple stripe on the shoulder." - icon_state = "labcoat_tox_open" - icon_open = "labcoat_tox_open" - icon_closed = "labcoat_tox" + icon_state = "labcoat_tox" /obj/item/clothing/suit/storage/iacvest desc = "It's a lightweight vest. Made of a dark, navy mesh with highly-reflective white material, designed to be worn by the Interstellar Aid Corps as a high-visibility vest, over any other clothing. The I.A.C. logo is prominently displayed on the back of the vest, between the shoulders." name = "IAC vest" - icon_state = "iac_vest_s" + icon_state = "iac_vest" item_state = "iac_vest" permeability_coefficient = 0.50 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 5, rad = 0) @@ -156,23 +85,17 @@ /obj/item/clothing/suit/storage/toggle/labcoat/zeng name = "zeng-hu labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Comes in Zeng-Hu colours." - icon_state = "labcoat_zeng_open" - icon_open = "labcoat_zeng_open" - icon_closed = "labcoat_zeng" + icon_state = "labcoat_zeng" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/zavodskoi name = "Zavodskoi Interstellar labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Comes in Zavodskoi Interstellar colours." - icon_state = "labcoat_necro_open" - icon_open = "labcoat_necro_open" - icon_closed = "labcoat_necro" + icon_state = "labcoat_necro" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) /obj/item/clothing/suit/storage/toggle/labcoat/heph name = "hephaestus labcoat" desc = "A suit that protects against minor chemical spills. Offers slightly more protection against biohazards than the standard model. Comes in Hephaestus colours." - icon_state = "labcoat_heph_open" - icon_open = "labcoat_heph_open" - icon_closed = "labcoat_heph" + icon_state = "labcoat_heph" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 0) diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 3b535b72178..bde567292a4 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -99,15 +99,6 @@ flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET -/obj/item/clothing/suit/hastur - name = "hastur's robes" - desc = "Robes not meant to be worn by man" - icon_state = "hastur" - item_state = "hastur" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS - flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT - - /obj/item/clothing/suit/imperium_monk name = "imperium monk" desc = "Have YOU killed a xenos today?" @@ -213,8 +204,6 @@ desc = "A thick, well-worn WW2 leather bomber jacket." icon_state = "bomber" item_state = "bomber" - icon_open = "bomber_open" - icon_closed = "bomber" body_parts_covered = UPPER_TORSO|ARMS cold_protection = UPPER_TORSO|ARMS min_cold_protection_temperature = T0C - 20 @@ -225,23 +214,17 @@ desc = "A black leather coat." icon_state = "leather_jacket" item_state = "leather_jacket" - icon_open = "leather_jacket_open" - icon_closed = "leather_jacket" body_parts_covered = UPPER_TORSO|ARMS /obj/item/clothing/suit/storage/toggle/leather_jacket/nanotrasen desc = "A black leather coat. A corporate logo is proudly displayed on the back." icon_state = "leather_jacket_nt" - icon_open = "leather_jacket_nt_open" - icon_closed = "leather_jacket_nt" /obj/item/clothing/suit/storage/toggle/leather_vest name = "leather vest" desc = "A black leather vest." icon_state = "leather_jacket_sleeveless" item_state = "leather_jacket_sleeveless" - icon_open = "leather_jacket_sleeveless_open" - icon_closed = "leather_jacket_sleeveless" body_parts_covered = UPPER_TORSO /obj/item/clothing/suit/storage/toggle/leather_jacket/biker @@ -249,56 +232,40 @@ desc = "A thick, black leather jacket with silver zippers and buttons, crafted to evoke the image of rebellious space-biker gangs." icon_state = "biker" item_state = "biker" - icon_open = "biker_open" - icon_closed = "biker" /obj/item/clothing/suit/storage/toggle/leather_jacket/designer name = "designer leather jacket" desc = "A sophisticated, stylish leather jacket. It doesn't look cheap." icon_state = "designer_jacket" item_state = "designer_jacket" - icon_open = "designer_jacket_open" - icon_closed = "designer_jacket" /obj/item/clothing/suit/storage/toggle/leather_jacket/designer/black icon_state = "blackdesigner_jacket" item_state = "blackdesigner_jacket" - icon_open = "blackdesigner_jacket_open" - icon_closed = "blackdesigner_jacket" /obj/item/clothing/suit/storage/toggle/leather_jacket/designer/red icon_state = "reddesigner_jacket" item_state = "reddesigner_jacket" - icon_open = "reddesigner_jacket_open" - icon_closed = "reddesigner_jacket" /obj/item/clothing/suit/storage/toggle/leather_jacket/flight name = "flight jacket" desc = "A modern pilot's jacket made from a silky, shiny nanonylon material. Not to be confused with the vintage stylings of a bomber jacket." icon_state = "flight" item_state = "flight" - icon_open = "flight_open" - icon_closed = "flight" /obj/item/clothing/suit/storage/toggle/leather_jacket/flight/green icon_state = "gflight" item_state = "gflight" - icon_open = "gflight_open" - icon_closed = "gflight" /obj/item/clothing/suit/storage/toggle/leather_jacket/flight/white icon_state = "wflight" item_state = "wflight" - icon_open = "wflight_open" - icon_closed = "wflight" /obj/item/clothing/suit/storage/toggle/leather_jacket/flight/legion name = "tcfl flight jacket" desc = "A Tau Ceti Foreign Legion pilot's jacket. This is the more common, less durable variety, which typically finds itself percolating amongst all ranks of the TCFL." icon_state = "lflight" item_state = "lflight" - icon_open = "lflight_open" - icon_closed = "lflight" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) siemens_coefficient = 0.75 @@ -312,15 +279,11 @@ desc = "A military-styled jacket made from thick, distressed canvas. Popular among Martian punks. Patches not included." icon_state = "mgreen" item_state = "mgreen" - icon_open = "mgreen_open" - icon_closed = "mgreen" allowed = list (/obj/item/pen, /obj/item/paper, /obj/item/device/flashlight, /obj/item/tank/emergency_oxygen, /obj/item/storage/box/fancy/matches, /obj/item/reagent_containers/food/drinks/flask) /obj/item/clothing/suit/storage/toggle/leather_jacket/military/tan icon_state = "mtan" item_state = "mtan" - icon_open = "mtan_open" - icon_closed = "mtan" /obj/item/clothing/suit/storage/toggle/leather_jacket/military/old name = "old military jacket" @@ -338,8 +301,6 @@ desc = "A brown leather coat." icon_state = "brown_jacket" item_state = "brown_jacket" - icon_open = "brown_jacket_open" - icon_closed = "brown_jacket" body_parts_covered = UPPER_TORSO|ARMS /obj/item/clothing/suit/storage/toggle/brown_jacket/sleeveless @@ -347,67 +308,49 @@ desc = "A brown leather vest." icon_state = "brown_jacket_sleeveless" item_state = "brown_jacket_sleeveless" - icon_open = "brown_jacket_sleeveless_open" - icon_closed = "brown_jacket_sleeveless" body_parts_covered = UPPER_TORSO /obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen desc = "A brown leather coat. A corporate logo is proudly displayed on the back." icon_state = "brown_jacket_nt" - icon_open = "brown_jacket_nt_open" - icon_closed = "brown_jacket_nt" /obj/item/clothing/suit/storage/toggle/flannel name = "green flannel shirt" desc = "A flannel shirt, for all your space hipster needs." icon_state = "flannel_green" item_state = "flannel_green" - icon_open = "flannel_green_open" - icon_closed = "flannel_green" body_parts_covered = UPPER_TORSO|ARMS /obj/item/clothing/suit/storage/toggle/flannel/red name = "red flannel shirt" icon_state = "flannel_red" item_state = "flannel_red" - icon_open = "flannel_red_open" - icon_closed = "flannel_red" /obj/item/clothing/suit/storage/toggle/flannel/blue name = "blue flannel shirt" icon_state = "flannel_blue" item_state = "flannel_blue" - icon_open = "flannel_blue_open" - icon_closed = "flannel_blue" /obj/item/clothing/suit/storage/toggle/flannel/gray name = "grey flannel shirt" icon_state = "flannel_gray" item_state = "flannel_gray" - icon_open = "flannel_gray_open" - icon_closed = "flannel_gray" /obj/item/clothing/suit/storage/toggle/flannel/purple name = "purple flannel shirt" icon_state = "flannel_purple" item_state = "flannel_purple" - icon_open = "flannel_purple_open" - icon_closed = "flannel_purple" /obj/item/clothing/suit/storage/toggle/flannel/yellow name = "yellow flannel shirt" icon_state = "flannel_yellow" item_state = "flannel_yellow" - icon_open = "flannel_yellow_open" - icon_closed = "flannel_yellow" /obj/item/clothing/suit/storage/toggle/trench name = "brown trenchcoat" desc = "A rugged canvas trenchcoat." icon_state = "trench" item_state = "trench" - icon_open = "trench_open" - icon_closed = "trench" blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS @@ -415,8 +358,6 @@ name = "grey trenchcoat" icon_state = "trench2" item_state = "trench2" - icon_open = "trench2_open" - icon_closed = "trench2" blood_overlay_type = "coat" /obj/item/clothing/suit/storage/toggle/trench/alt @@ -424,24 +365,18 @@ desc = "A sleek canvas trenchcoat" icon_state = "trenchcoat_brown" item_state = "trenchcoat_brown" - icon_open = "trenchcoat_brown_open" - icon_closed = "trenchcoat_brown" /obj/item/clothing/suit/storage/toggle/trench/grey_alt name = "grey trenchcoat" desc = "A sleek canvas trenchcoat" icon_state = "trenchcoat_grey" item_state = "trenchcoat_grey" - icon_open = "trenchcoat_grey_open" - icon_closed = "trenchcoat_grey" /obj/item/clothing/suit/storage/toggle/trench/colorable name = "trenchcoat" desc = "A sleek canvas trenchcoat" icon_state = "trench_colorable" item_state = "trench_colorable" - icon_open = "trench_colorable_open" - icon_closed = "trench_colorable" /obj/item/clothing/suit/storage/toggle/trench/colorable/random/Initialize() . = ..() @@ -453,91 +388,64 @@ icon = 'icons/obj/tracksuit.dmi' icon_state = "trackjacket" item_state = "trackjacket" - icon_open = "trackjacket_open" - icon_closed = "trackjacket" allowed = list (/obj/item/pen, /obj/item/paper, /obj/item/device/flashlight, /obj/item/tank/emergency_oxygen, /obj/item/storage/box/fancy/cigarettes, /obj/item/storage/box/fancy/matches, /obj/item/reagent_containers/food/drinks/flask) - contained_sprite = 1 + contained_sprite = TRUE /obj/item/clothing/suit/storage/toggle/track/blue name = "blue track jacket" icon = 'icons/obj/tracksuit.dmi' icon_state = "trackjacketblue" item_state = "trackjacketblue" - icon_open = "trackjacketblue_open" - icon_closed = "trackjacketblue" - contained_sprite = 1 /obj/item/clothing/suit/storage/toggle/track/green name = "green track jacket" icon = 'icons/obj/tracksuit.dmi' icon_state = "trackjacketgreen" item_state = "trackjacketgreen" - icon_open = "trackjacketgreen_open" - icon_closed = "trackjacketgreen" - contained_sprite = 1 /obj/item/clothing/suit/storage/toggle/track/red name = "red track jacket" icon = 'icons/obj/tracksuit.dmi' icon_state = "trackjacketred" item_state = "trackjacketred" - icon_open = "trackjacketred_open" - icon_closed = "trackjacketred" - contained_sprite = 1 /obj/item/clothing/suit/storage/toggle/track/white name = "white track jacket" icon = 'icons/obj/tracksuit.dmi' icon_state = "trackjacketwhite" item_state = "trackjacketwhite" - icon_open = "trackjacketwhite_open" - icon_closed = "trackjacketwhite" - contained_sprite = 1 /obj/item/clothing/suit/storage/toggle/varsity name = "black varsity jacket" desc = "A favorite of jocks everywhere from Sol to the Coalition." icon_state = "varsity" item_state = "varsity" - icon_open = "varsity_open" - icon_closed = "varsity" allowed = list (/obj/item/pen, /obj/item/paper, /obj/item/device/flashlight, /obj/item/tank/emergency_oxygen, /obj/item/storage/box/fancy/matches, /obj/item/reagent_containers/food/drinks/flask) /obj/item/clothing/suit/storage/toggle/varsity/red name = "red varsity jacket" icon_state = "varsity_red" item_state = "varsity_red" - icon_open = "varsity_red_open" - icon_closed = "varsity_red" /obj/item/clothing/suit/storage/toggle/varsity/purple name = "purple varsity jacket" icon_state = "varsity_purple" item_state = "varsity_purple" - icon_open = "varsity_purple_open" - icon_closed = "varsity_purple" /obj/item/clothing/suit/storage/toggle/varsity/green name = "green varsity jacket" icon_state = "varsity_green" item_state = "varsity_green" - icon_open = "varsity_green_open" - icon_closed = "varsity_green" /obj/item/clothing/suit/storage/toggle/varsity/blue name = "blue varsity jacket" icon_state = "varsity_blue" item_state = "varsity_blue" - icon_open = "varsity_blue_open" - icon_closed = "varsity_blue" /obj/item/clothing/suit/storage/toggle/varsity/brown name = "brown varsity jacket" icon_state = "varsity_brown" item_state = "varsity_brown" - icon_open = "varsity_brown_open" - icon_closed = "varsity_brown" - /obj/item/clothing/suit/storage/legion name = "tcfl jacket" desc = "A pale blue canvas jacket embossed with the insignia of the Tau Ceti Foreign Legion." @@ -561,8 +469,6 @@ desc = "A well-tailored, stylish peacoat." icon_state = "peacoat" item_state = "peacoat" - icon_open = "peacoat_open" - icon_closed = "peacoat" /* * Department Jackets @@ -572,48 +478,36 @@ desc = "A cozy jacket in engineering's colors, featuring spacious pockets you won't even use." icon_state = "engi_dep_jacket" item_state = "engi_dep_jacket" - icon_open = "engi_dep_jacket_open" - icon_closed = "engi_dep_jacket" /obj/item/clothing/suit/storage/toggle/supply_dep_jacket name = "supply department jacket" desc = "A cozy jacket in supply's colors, perfect for folding up and forgetting bounty lists." icon_state = "supply_dep_jacket" item_state = "supply_dep_jacket" - icon_open = "supply_dep_jacket_open" - icon_closed = "supply_dep_jacket" /obj/item/clothing/suit/storage/toggle/sci_dep_jacket name = "science department jacket" desc = "A cozy jacket in science's colors, offering the latest in a complete lack of protection against chemical spills." icon_state = "sci_dep_jacket" item_state = "sci_dep_jacket" - icon_open = "sci_dep_jacket_open" - icon_closed = "sci_dep_jacket" /obj/item/clothing/suit/storage/toggle/med_dep_jacket name = "medical department jacket" desc = "A cozy jacket in medical's colors, guaranteed not to leak the latest gossip." icon_state = "med_dep_jacket" item_state = "med_dep_jacket" - icon_open = "med_dep_jacket_open" - icon_closed = "med_dep_jacket" /obj/item/clothing/suit/storage/toggle/sec_dep_jacket name = "security department jacket" desc = "A cozy jacket in security's colors, luckily able to be easily cleaned of blood stains" icon_state = "sec_dep_jacket" item_state = "sec_dep_jacket" - icon_open = "sec_dep_jacket_open" - icon_closed = "sec_dep_jacket" /obj/item/clothing/suit/storage/toggle/serv_dep_jacket name = "service department jacket" desc = "A cozy jacket in service's colors, reminding many employees that even service has colors." icon_state = "serv_dep_jacket" item_state = "serv_dep_jacket" - icon_open = "serv_dep_jacket_open" - icon_closed = "serv_dep_jacket" /obj/item/clothing/suit/storage/fib name = "\improper FIB agent jacket" @@ -629,8 +523,6 @@ desc_fluff = "Only slightly worse than a blanket." icon_state = "cardigan" item_state = "cardigan" - icon_open = "cardigan_open" - icon_closed = "cardigan" /obj/item/clothing/suit/storage/toggle/cardigan/sweater name = "sweater cardigan" @@ -638,8 +530,6 @@ desc_fluff = "Half as warm as a sweater, and half as fashionable as a cardigan. Not like it matters for coffee-house dwelling beatniks like yourself." icon_state = "cardigansweater" item_state = "cardigansweater" - icon_open = "cardigansweater_open" - icon_closed = "cardigansweater" /obj/item/clothing/suit/storage/toggle/cardigan/argyle name = "argyle cardigan" @@ -647,9 +537,6 @@ desc_fluff = "You'll never get dumped if you never get in a relationship in the first place. With this, you'll never have to worry again." icon_state = "cardiganargyle" item_state = "cardiganargyle" - icon_open = "cardiganargyle_open" - icon_closed = "cardiganargyle" - /obj/item/clothing/suit/fake_cultrobes name = "occultist robes" diff --git a/code/modules/clothing/suits/storage.dm b/code/modules/clothing/suits/storage.dm index 81f4b82067e..765d07c11ca 100644 --- a/code/modules/clothing/suits/storage.dm +++ b/code/modules/clothing/suits/storage.dm @@ -37,29 +37,31 @@ //Jackets with buttons /obj/item/clothing/suit/storage/toggle - var/icon_open - var/icon_closed + var/opened = FALSE /obj/item/clothing/suit/storage/toggle/verb/toggle() set name = "Toggle Coat Buttons" set category = "Object" set src in usr - if(!usr.canmove || usr.stat || usr.restrained()) + + if(use_check_and_message(usr)) return 0 - if(icon_state == icon_open) //Will check whether icon state is currently set to the "open" or "closed" state and switch it around with a message to the user - icon_state = icon_closed - item_state = icon_closed - to_chat(usr, "You button up \the [src].") - else if(icon_state == icon_closed) - icon_state = icon_open - item_state = icon_open - to_chat(usr, "You unbutton \the [src].") - else //in case some goofy admin switches icon states around without switching the icon_open or icon_closed - to_chat(usr, "You attempt to button-up the velcro on \the [src], before promptly realising how silly you are.") - return - update_clothing_icon() //so our overlays update + toggle_open() +/obj/item/clothing/suit/storage/toggle/proc/toggle_open() + opened = !opened + to_chat(usr, SPAN_NOTICE("You [opened ? "unbutton" : "button up"] \the [src].")) + playsound(src, /decl/sound_category/rustle_sound, EQUIP_SOUND_VOLUME, TRUE) + icon_state = "[initial(icon_state)][opened ? "_open" : ""]" + item_state = icon_state + update_clothing_icon() + +/obj/item/clothing/suit/storage/toggle/Initialize() + . = ..() + if(opened) // for stuff that's supposed to spawn opened, like labcoats. + icon_state = "[initial(icon_state)][opened ? "_open" : ""]" + item_state = icon_state /obj/item/clothing/suit/storage/vest/merc/Initialize() . = ..() diff --git a/code/modules/clothing/suits/wiz_robe.dm b/code/modules/clothing/suits/wiz_robe.dm index 1dc90e985c8..e251011badb 100644 --- a/code/modules/clothing/suits/wiz_robe.dm +++ b/code/modules/clothing/suits/wiz_robe.dm @@ -107,8 +107,6 @@ desc = "A heavy threaded tweed gray jacket. For a different sort of Gentleman." icon_state = "gentlecoat" item_state = "gentlecoat" - icon_open = "gentlecoat_open" - icon_closed = "gentlecoat" gas_transfer_coefficient = 0.01 // IT'S MAGICAL OKAY JEEZ +1 TO NOT DIE permeability_coefficient = 0.01 armor = list(melee = 30, bullet = 20, laser = 20,energy = 20, bomb = 20, bio = 20, rad = 20) diff --git a/code/modules/clothing/suits/xeno/tajara.dm b/code/modules/clothing/suits/xeno/tajara.dm index 82716a419ac..1da100292d7 100644 --- a/code/modules/clothing/suits/xeno/tajara.dm +++ b/code/modules/clothing/suits/xeno/tajara.dm @@ -4,8 +4,6 @@ icon = 'icons/obj/tajara_items.dmi' icon_state = "medcoat" item_state = "medcoat" - icon_open = "medcoat_open" - icon_closed = "medcoat" contained_sprite = TRUE desc_fluff = "Today the fashion that dominates Adhomai shares few similarities to the clothing of old Furs, linen, hemp, silk and other such fabrics were traded for \ synthetic versions, creating a massive boom in the nylon industry and textile industry in the cities. Jeans, overcoats, army uniforms, parade uniforms, flags, pants, shirts, ties, \ @@ -46,8 +44,6 @@ icon = 'icons/obj/tajara_items.dmi' icon_state = "navalcoat" item_state = "navalcoat" - icon_open = "navalcoat_open" - icon_closed = "navalcoat" contained_sprite = TRUE desc_fluff = "Today the fashion that dominates Adhomai shares few similarities to the clothing of old Furs, linen, hemp, silk and other such fabrics were traded for \ synthetic versions, creating a massive boom in the nylon industry and textile industry in the cities. Jeans, overcoats, army uniforms, parade uniforms, flags, pants, shirts, ties, \ diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index cb8d4355503..65832fe379a 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -313,8 +313,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/ryan_jacket.dmi' icon_state = "ryan_jacket" item_state = "ryan_jacket" - icon_open = "ryan_jacket_open" - icon_closed = "ryan_jacket" contained_sprite = TRUE @@ -380,14 +378,12 @@ All custom items with worn sprites must follow the contained sprite system: http item_state = "leo_hat" contained_sprite = TRUE -/obj/item/clothing/suit/storage/toggle/det_trench/fluff/leo_coat //Tagged brown coat - Leo Wyatt - keinto +/obj/item/clothing/suit/storage/det_trench/fluff/leo_coat //Tagged brown coat - Leo Wyatt - keinto name = "tagged brown coat" desc = "A worn mid 20th century brown trenchcoat. If you look closely at bottom of the back, you can see an embedded tag from the \"Museum of Terran Culture and Technology\"." icon = 'icons/obj/custom_items/leo_coat.dmi' icon_state = "leo_coat" item_state = "leo_coat" - icon_open = "leo_coat" - icon_closed = "leo_coat" contained_sprite = TRUE @@ -782,8 +778,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/nelson_jacket.dmi' icon_state = "nelson_jacket" item_state = "nelson_jacket" - icon_open = "nelson_jacket_open" - icon_closed = "nelson_jacket" contained_sprite = TRUE @@ -899,8 +893,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/volvalaad_items.dmi' icon_state = "volvalaad_jacket" item_state = "volvalaad_jacket" - icon_open = "volvalaad_jacket_open" - icon_closed = "volvalaad_jacket" contained_sprite = TRUE /obj/item/clothing/suit/storage/toggle/fluff/volvalaad_coat //Dominian Noble Coat - Richard Volvalaad - t1gws @@ -909,8 +901,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/volvalaad_items.dmi' icon_state = "volvalaad_coat" item_state = "volvalaad_coat" - icon_open = "volvalaad_coat_open" - icon_closed = "volvalaad_coat" contained_sprite = TRUE @@ -1269,8 +1259,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/talon_coat.dmi' icon_state = "talon_coat" item_state = "talon_coat" - icon_open = "talon_coat_open" - icon_closed = "talon_coat" contained_sprite = TRUE @@ -1431,8 +1419,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/mira_clothing.dmi' icon_state = "mira_robes" item_state = "mira_robes" - icon_open = "mira_robes_open" - icon_closed = "mira_robes" contained_sprite = TRUE /obj/item/clothing/shoes/fluff/mira_boots //Mira Boots - Mira Akhandi - drwago @@ -1775,8 +1761,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/likho_labcoat.dmi' icon_state = "likho_labcoat" item_state = "likho_labcoat" - icon_open = "likho_labcoat_open" - icon_closed = "likho_labcoat" contained_sprite = TRUE @@ -1786,8 +1770,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/ramit_jacket.dmi' icon_state = "ramit_jacket" item_state = "ramit_jacket" - icon_open = "ramit_jacket_open" - icon_closed = "ramit_jacket" contained_sprite = TRUE @@ -1806,8 +1788,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/takahashi_uniform.dmi' icon_state = "takahashi_coat" item_state = "takahashi_coat" - icon_open = "takahashi_coat_open" - icon_closed = "takahashi_coat" contained_sprite = TRUE @@ -2198,8 +2178,6 @@ All custom items with worn sprites must follow the contained sprite system: http icon = 'icons/obj/custom_items/mekesatis_holocoat.dmi' icon_state = "mekesatis_labcoat" item_state = "mekesatis_labcoat" - icon_open = "mekesatis_labcoat_open" - icon_closed = "mekesatis_labcoat" contained_sprite = TRUE var/changed = FALSE var/changing = FALSE @@ -2221,31 +2199,30 @@ All custom items with worn sprites must follow the contained sprite system: http graduation. - Teremun A. M.")) return +/obj/item/clothing/suit/storage/toggle/labcoat/fluff/mekesatis_labcoat/toggle_open() + if(!changing) + opened = !opened + to_chat(usr, SPAN_NOTICE("You [opened ? "unbutton" : "button up"] \the [src].")) + playsound(src, /decl/sound_category/rustle_sound, EQUIP_SOUND_VOLUME, TRUE) + icon_state = "mekesatis_[changed ? "holocoat" : "labcoat"][opened ? "_open" : ""]" + item_state = icon_state + update_clothing_icon() + /obj/item/clothing/suit/storage/toggle/labcoat/fluff/mekesatis_labcoat/verb/activate_holocoat() set name = "Toggle Holocoat" set category = "Object" set src in usr - if (use_check_and_message(usr)) + if(use_check_and_message(usr)) return if(changing) return - if(!changed) - usr.visible_message("With a subtle gesture, the labcoat flickers activate!") - icon_state = "mekesatis_holocoat_t" - item_state = "mekesatis_holocoat_t" - icon_open = "mekesatis_holocoat_t_open" - icon_closed = "mekesatis_holocoat_t" - flick("mekesatis_holocoat_t", src) - - else - usr.visible_message("With a subtle gesture, the holocoat fades to a normal labcoat.") - icon_state = "mekesatis_labcoat_r" - item_state = "mekesatis_labcoat_r" - icon_open = "mekesatis_labcoat_r_open" - icon_closed = "mekesatis_labcoat_r" + usr.visible_message("With a subtle gesture, [changed ? "the holocoat fades to a normal labcoat." : "the labcoat flickers in activity!"]") + icon_state = "mekesatis_[changed ? "labcoat_r" : "holocoat_t"][opened ? "_open" : ""]" + item_state = icon_state + flick("mekesatis_[changed ? "labcoat_r" : "holocoat_t"][opened ? "_open" : ""]", src) update_icon() usr.update_inv_wear_suit() @@ -2253,24 +2230,13 @@ All custom items with worn sprites must follow the contained sprite system: http addtimer(CALLBACK(src, .proc/finish_toggle, usr), 10 SECONDS) /obj/item/clothing/suit/storage/toggle/labcoat/fluff/mekesatis_labcoat/proc/finish_toggle(mob/user) - if(!changed) - icon_state = "mekesatis_holocoat" - item_state = "mekesatis_holocoat" - icon_open = "mekesatis_holocoat_open" - icon_closed = "mekesatis_holocoat" - - else - icon_state = "mekesatis_labcoat" - item_state = "mekesatis_labcoat" - icon_open = "mekesatis_labcoat_open" - icon_closed = "mekesatis_labcoat" - + changed = !changed + icon_state = "mekesatis_[changed ? "holocoat" : "labcoat"][opened ? "_open" : ""]" + item_state = icon_state update_icon() user.update_inv_wear_suit() - changed = !changed changing = FALSE - /obj/item/device/megaphone/fluff/akinyi_mic //Resonance Microphone - Akinyi Idowu - kyres1 name = "resonance microphone" desc = "A rather costly voice amplifier disguised as a microphone. A button on the side permits the user to dial their vocal volume with ease." diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm index 9edcd529456..0f80b8b17a3 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm @@ -75,9 +75,6 @@ var/obj/machinery/light/L = O L.brightness_color = color L.update() - else if(istype(O, /obj/item/clothing/suit/storage/toggle/det_trench/technicolor) || istype(O, /obj/item/clothing/head/det/technicolor)) - return - else if(istype(O)) O.color = color diff --git a/html/changelogs/wezzy_buttonfix.yml b/html/changelogs/wezzy_buttonfix.yml new file mode 100644 index 00000000000..9c041cd65a9 --- /dev/null +++ b/html/changelogs/wezzy_buttonfix.yml @@ -0,0 +1,47 @@ +################################ +# 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: Wowzewow (Wezzy) + +# 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: "Refactors how button toggling on coats work." + - bugfix: "You can now unbutton/button your coats while buckled to a chair." + - tweak: "Labcoat open/close item states have been aligned." + - rscdel: "Detective technicolor trenchcoat has been removed for being criminally unused and outclassed by other trenchcoats." + - rscdel: "Detective technicolor hat has been removed as well for the same reasons." + - rscdel: "Hastur hood has been removed." + - rscdel: "Paint buckets have been removed for being practically unused." diff --git a/icons/clothing/kit/emt.dmi b/icons/clothing/kit/emt.dmi index 1ddeab11c8e..ca1a21dbdc5 100644 Binary files a/icons/clothing/kit/emt.dmi and b/icons/clothing/kit/emt.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 53458b4cdeb..0d1c63f8caa 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/obj/clothing/coloured_detective_hats.dmi b/icons/obj/clothing/coloured_detective_hats.dmi deleted file mode 100644 index 82f50f062e2..00000000000 Binary files a/icons/obj/clothing/coloured_detective_hats.dmi and /dev/null differ diff --git a/icons/obj/clothing/detective.dmi b/icons/obj/clothing/detective.dmi deleted file mode 100644 index 1b58bcf0e28..00000000000 Binary files a/icons/obj/clothing/detective.dmi and /dev/null differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 20b16874c48..573b165dbfc 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/custom_items/leo_coat.dmi b/icons/obj/custom_items/leo_coat.dmi index 569630b8916..ef48e99ac0a 100644 Binary files a/icons/obj/custom_items/leo_coat.dmi and b/icons/obj/custom_items/leo_coat.dmi differ