diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_syndidome.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_syndidome.dmm index 228c55292fb..e41c2db6863 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_syndidome.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_syndidome.dmm @@ -3503,7 +3503,7 @@ /area/ruin/syndibiodome) "Pw" = ( /obj/structure/table/reinforced/plastitaniumglass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/effect/turf_decal/siding/wideplating/dark{ dir = 5 }, diff --git a/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm b/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm index 52a288e64e6..42fa98704a3 100644 --- a/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm +++ b/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm @@ -98,7 +98,7 @@ /turf/open/floor/iron/white, /area/ruin/space/has_grav/dangerous_research/medical) "aZ" = ( -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/structure/table, /turf/open/floor/plating/rust, /area/ruin/space/has_grav/dangerous_research/medical) diff --git a/_maps/RandomRuins/SpaceRuins/interdyne.dmm b/_maps/RandomRuins/SpaceRuins/interdyne.dmm index 9c802b0be43..46e22d19fb6 100644 --- a/_maps/RandomRuins/SpaceRuins/interdyne.dmm +++ b/_maps/RandomRuins/SpaceRuins/interdyne.dmm @@ -1015,7 +1015,7 @@ /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/interdyne) "PD" = ( -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/structure/table/reinforced/rglass, /turf/open/floor/mineral/plastitanium, /area/ruin/space/has_grav/interdyne) diff --git a/_maps/RandomRuins/SpaceRuins/meatderelict.dmm b/_maps/RandomRuins/SpaceRuins/meatderelict.dmm index 3e4bece11e8..a4f95abdf0e 100644 --- a/_maps/RandomRuins/SpaceRuins/meatderelict.dmm +++ b/_maps/RandomRuins/SpaceRuins/meatderelict.dmm @@ -484,7 +484,7 @@ /obj/effect/turf_decal/siding/blue{ dir = 6 }, -/obj/item/surgery_tray/full/deployed, +/obj/effect/spawner/surgery_tray/full/deployed, /turf/open/indestructible/white, /area/ruin/space/has_grav/powered/biooutpost) "kh" = ( diff --git a/_maps/RandomRuins/SpaceRuins/the_outlet.dmm b/_maps/RandomRuins/SpaceRuins/the_outlet.dmm index 719088322f2..922715ca8d7 100644 --- a/_maps/RandomRuins/SpaceRuins/the_outlet.dmm +++ b/_maps/RandomRuins/SpaceRuins/the_outlet.dmm @@ -701,7 +701,7 @@ /area/ruin/space/has_grav/the_outlet/employeesection) "rF" = ( /obj/structure/table/reinforced/rglass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/reagent_containers/syringe/lethal/execution, /turf/open/floor/iron/freezer, /area/ruin/space/has_grav/the_outlet/researchrooms) diff --git a/_maps/deathmatch/species_warfare.dmm b/_maps/deathmatch/species_warfare.dmm index e80485c2b5e..66e7e9b2275 100644 --- a/_maps/deathmatch/species_warfare.dmm +++ b/_maps/deathmatch/species_warfare.dmm @@ -23,7 +23,7 @@ dir = 1 }, /obj/structure/table/glass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/indestructible/white, /area/deathmatch) "bX" = ( @@ -228,7 +228,7 @@ "iM" = ( /obj/effect/turf_decal/tile/blue/half/contrasted, /obj/structure/table/glass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/indestructible/white, /area/deathmatch) "iV" = ( diff --git a/_maps/map_files/Birdshot/birdshot.dmm b/_maps/map_files/Birdshot/birdshot.dmm index f18d092fd15..5777c1c5872 100644 --- a/_maps/map_files/Birdshot/birdshot.dmm +++ b/_maps/map_files/Birdshot/birdshot.dmm @@ -130,7 +130,7 @@ /obj/effect/turf_decal/siding/white, /obj/machinery/light/small/directional/south, /obj/structure/table/reinforced, -/obj/item/surgery_tray/full/morgue, +/obj/effect/spawner/surgery_tray/full/morgue, /turf/open/floor/iron/small, /area/station/medical/morgue) "adL" = ( @@ -10716,7 +10716,7 @@ /obj/machinery/camera/autoname/directional/north, /obj/structure/sign/poster/official/random/directional/north, /obj/machinery/status_display/ai/directional/west, -/obj/item/surgery_tray/full/deployed, +/obj/effect/spawner/surgery_tray/full/deployed, /turf/open/floor/iron/showroomfloor, /area/station/medical/surgery/theatre) "dZk" = ( @@ -34878,7 +34878,7 @@ /area/station/tcommsat/server) "lPO" = ( /obj/structure/table, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = -5 }, /obj/item/wirecutters{ diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 08d3aa51e9b..b2dcab7f2a5 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -75220,7 +75220,7 @@ /area/station/service/abandoned_gambling_den/gaming) "sOp" = ( /obj/structure/table/glass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/structure/window/reinforced/spawner/directional/west, /obj/item/clothing/gloves/latex, /obj/item/clothing/suit/apron/surgical, @@ -79128,7 +79128,7 @@ dir = 4 }, /obj/structure/table/reinforced, -/obj/item/surgery_tray/full/morgue, +/obj/effect/spawner/surgery_tray/full/morgue, /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 4 }, @@ -94584,7 +94584,7 @@ /area/station/cargo/storage) "xES" = ( /obj/structure/table/glass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/gloves/latex, /obj/item/clothing/suit/apron/surgical, /obj/effect/turf_decal/tile/neutral/fourcorners, diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index c0c55d2f95f..5c5129c900a 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -18953,7 +18953,7 @@ pixel_x = -4; pixel_y = 3 }, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 1 }, @@ -25910,7 +25910,7 @@ /area/station/science/xenobiology) "hvt" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/item/surgery_tray/full/morgue, +/obj/effect/spawner/surgery_tray/full/morgue, /obj/structure/table/reinforced, /obj/machinery/requests_console/auto_name/directional/north, /obj/effect/turf_decal/bot_white, @@ -42635,7 +42635,7 @@ pixel_x = -4; pixel_y = 3 }, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 1 }, diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 1bc583699ef..0063ca41fdd 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -9670,7 +9670,7 @@ /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/status_display/evac/directional/west, /obj/machinery/digital_clock/directional/south, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/white, /area/station/medical/surgery/theatre) "dyr" = ( @@ -12775,7 +12775,7 @@ /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 1 }, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/gloves/latex, /obj/item/clothing/suit/apron/surgical, /turf/open/floor/iron/white, @@ -15055,7 +15055,7 @@ /obj/structure/table/glass, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/status_display/evac/directional/west, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/white, /area/station/medical/surgery/theatre) "fpj" = ( @@ -61156,7 +61156,7 @@ dir = 8 }, /obj/machinery/light/small/directional/north, -/obj/item/surgery_tray/full/morgue, +/obj/effect/spawner/surgery_tray/full/morgue, /turf/open/floor/iron/dark/smooth_edge{ dir = 8 }, diff --git a/_maps/map_files/NebulaStation/NebulaStation.dmm b/_maps/map_files/NebulaStation/NebulaStation.dmm index ab7a83e643c..d75920f3ca7 100644 --- a/_maps/map_files/NebulaStation/NebulaStation.dmm +++ b/_maps/map_files/NebulaStation/NebulaStation.dmm @@ -423,7 +423,7 @@ "adt" = ( /obj/machinery/defibrillator_mount/directional/south, /obj/structure/table/glass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/effect/turf_decal/box/white/corners{ dir = 4 }, @@ -545,7 +545,7 @@ id = "cmoprivacy2"; req_access = list("cmo") }, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/white/herringbone, /area/station/command/heads_quarters/cmo) "aer" = ( @@ -56574,7 +56574,7 @@ "isM" = ( /obj/machinery/defibrillator_mount/directional/south, /obj/structure/table/glass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/effect/turf_decal/box/white/corners{ dir = 1 }, @@ -62233,7 +62233,7 @@ /obj/structure/table/reinforced, /obj/effect/turf_decal/trimline/red/corner, /obj/effect/turf_decal/siding/thinplating_new/dark/corner, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/dark/side{ dir = 9 }, @@ -62788,7 +62788,7 @@ /obj/structure/table/glass, /obj/structure/window/reinforced/spawner/directional/north, /obj/machinery/digital_clock/directional/east, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/dark/small, /area/station/science/robotics/augments) "jqo" = ( @@ -64543,7 +64543,7 @@ /area/station/engineering/supermatter/room/upper) "jBX" = ( /obj/structure/table/reinforced, -/obj/item/surgery_tray/full/morgue, +/obj/effect/spawner/surgery_tray/full/morgue, /obj/effect/turf_decal/siding/dark/corner{ dir = 8 }, @@ -120903,7 +120903,7 @@ /area/station/maintenance/fore/lesser) "rUg" = ( /obj/structure/table/reinforced, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/machinery/status_display/ai/directional/east, /obj/effect/turf_decal/trimline/dark_red/filled/corner{ dir = 1 diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index e730dea04bc..4aab72d4be6 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -9929,7 +9929,7 @@ /area/centcom/central_command_areas/armory) "Vh" = ( /obj/structure/table/reinforced, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = 10; pixel_x = 2 }, diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index 86f4db1976b..528a6dff60e 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -38898,7 +38898,7 @@ pixel_y = 8 }, /obj/structure/window/reinforced/spawner/directional/north, -/obj/item/surgery_tray/full/morgue, +/obj/effect/spawner/surgery_tray/full/morgue, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, /area/station/medical/morgue) @@ -62281,7 +62281,7 @@ /obj/structure/table/glass, /obj/effect/turf_decal/trimline/blue/filled/line, /obj/item/radio/intercom/directional/south, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/white, /area/station/medical/surgery/fore) "uPv" = ( @@ -70986,7 +70986,7 @@ dir = 1 }, /obj/item/radio/intercom/directional/north, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/white, /area/station/medical/surgery/aft) "yct" = ( diff --git a/_maps/map_files/wawastation/wawastation.dmm b/_maps/map_files/wawastation/wawastation.dmm index dafa2c4d1a0..25fd6043663 100644 --- a/_maps/map_files/wawastation/wawastation.dmm +++ b/_maps/map_files/wawastation/wawastation.dmm @@ -2165,9 +2165,7 @@ /area/station/commons/fitness/recreation) "aJM" = ( /obj/machinery/light/small/directional/north, -/obj/item/surgery_tray/full/morgue{ - is_portable = 0 - }, +/obj/effect/spawner/surgery_tray/full/morgue/deployed, /turf/open/floor/iron/dark/textured, /area/station/medical/morgue) "aJP" = ( @@ -34388,7 +34386,7 @@ "mhI" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, -/obj/item/surgery_tray/full/deployed, +/obj/effect/spawner/surgery_tray/full/deployed, /obj/effect/turf_decal/tile/blue/full, /obj/machinery/light_switch/directional/south, /turf/open/floor/iron/white, @@ -38134,7 +38132,7 @@ /turf/open/floor/glass/reinforced, /area/station/security/prison) "nvT" = ( -/obj/item/surgery_tray/full/deployed, +/obj/effect/spawner/surgery_tray/full/deployed, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -58322,7 +58320,7 @@ /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) "uxw" = ( -/obj/item/surgery_tray/full/deployed, +/obj/effect/spawner/surgery_tray/full/deployed, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/airalarm/directional/west, /obj/effect/decal/cleanable/dirt/dust, diff --git a/_maps/modular_generic/station_l_morgue.dmm b/_maps/modular_generic/station_l_morgue.dmm index 4b4eb63458d..3b5adf14d41 100644 --- a/_maps/modular_generic/station_l_morgue.dmm +++ b/_maps/modular_generic/station_l_morgue.dmm @@ -361,7 +361,7 @@ dir = 4 }, /obj/structure/table/reinforced/plastitaniumglass, -/obj/item/surgery_tray/full/morgue, +/obj/effect/spawner/surgery_tray/full/morgue, /obj/structure/railing{ dir = 4 }, diff --git a/_maps/shuttles/emergency_birdshot.dmm b/_maps/shuttles/emergency_birdshot.dmm index cdf903f0345..1cf44657848 100644 --- a/_maps/shuttles/emergency_birdshot.dmm +++ b/_maps/shuttles/emergency_birdshot.dmm @@ -749,7 +749,7 @@ /area/shuttle/escape) "Ko" = ( /obj/structure/table/optable, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/mask/surgical, /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/mineral/titanium/white, diff --git a/_maps/shuttles/emergency_donut.dmm b/_maps/shuttles/emergency_donut.dmm index f81c084e90b..27f9cd7f1ac 100644 --- a/_maps/shuttles/emergency_donut.dmm +++ b/_maps/shuttles/emergency_donut.dmm @@ -317,7 +317,7 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "ed" = ( -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/suit/apron/surgical, /obj/item/clothing/mask/surgical, /obj/structure/table/optable, diff --git a/_maps/shuttles/emergency_fish.dmm b/_maps/shuttles/emergency_fish.dmm index b99aa01b096..43ec2aa1620 100644 --- a/_maps/shuttles/emergency_fish.dmm +++ b/_maps/shuttles/emergency_fish.dmm @@ -844,7 +844,7 @@ /area/shuttle/escape) "VD" = ( /obj/structure/table/glass, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = 6 }, /obj/effect/turf_decal/tile/blue/anticorner/contrasted{ diff --git a/_maps/shuttles/emergency_humpback.dmm b/_maps/shuttles/emergency_humpback.dmm index 195f342cd3c..89ab755acbf 100644 --- a/_maps/shuttles/emergency_humpback.dmm +++ b/_maps/shuttles/emergency_humpback.dmm @@ -418,7 +418,7 @@ /area/shuttle/escape) "zn" = ( /obj/structure/table, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/iron/showroomfloor, /area/shuttle/escape) "zr" = ( diff --git a/_maps/shuttles/emergency_lance.dmm b/_maps/shuttles/emergency_lance.dmm index c17d1767b13..d83294d00ac 100644 --- a/_maps/shuttles/emergency_lance.dmm +++ b/_maps/shuttles/emergency_lance.dmm @@ -968,8 +968,8 @@ /obj/item/book/manual/wiki/surgery{ pixel_x = -15 }, -/obj/item/surgery_tray/full, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full{ pixel_x = 5 }, /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ diff --git a/_maps/shuttles/emergency_mini.dmm b/_maps/shuttles/emergency_mini.dmm index 73c5f42b38f..89579283e93 100644 --- a/_maps/shuttles/emergency_mini.dmm +++ b/_maps/shuttles/emergency_mini.dmm @@ -227,7 +227,7 @@ "W" = ( /obj/structure/table, /obj/item/clothing/suit/apron/surgical, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /turf/open/floor/mineral/titanium/white, /area/shuttle/escape) "X" = ( diff --git a/_maps/shuttles/emergency_nature.dmm b/_maps/shuttles/emergency_nature.dmm index 0f793c71475..16e1b107212 100644 --- a/_maps/shuttles/emergency_nature.dmm +++ b/_maps/shuttles/emergency_nature.dmm @@ -497,7 +497,7 @@ /area/shuttle/escape) "sF" = ( /obj/effect/turf_decal/trimline/blue/filled/line, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = 5 }, /obj/structure/rack, diff --git a/_maps/shuttles/emergency_nebula.dmm b/_maps/shuttles/emergency_nebula.dmm index 7b729f72167..39359e5c29e 100644 --- a/_maps/shuttles/emergency_nebula.dmm +++ b/_maps/shuttles/emergency_nebula.dmm @@ -2447,7 +2447,7 @@ "XV" = ( /obj/structure/table/reinforced, /obj/item/radio/intercom/directional/east, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/machinery/defibrillator_mount/directional/south, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, diff --git a/_maps/shuttles/emergency_northstar.dmm b/_maps/shuttles/emergency_northstar.dmm index 798a4d9671a..672dd9b58e2 100644 --- a/_maps/shuttles/emergency_northstar.dmm +++ b/_maps/shuttles/emergency_northstar.dmm @@ -127,7 +127,7 @@ "nC" = ( /obj/structure/table/reinforced/rglass, /obj/item/defibrillator/loaded, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = 13 }, /obj/effect/turf_decal/tile/blue/anticorner{ diff --git a/_maps/shuttles/emergency_russiafightpit.dmm b/_maps/shuttles/emergency_russiafightpit.dmm index 33baf94c7ec..a00f6804bbc 100644 --- a/_maps/shuttles/emergency_russiafightpit.dmm +++ b/_maps/shuttles/emergency_russiafightpit.dmm @@ -438,7 +438,7 @@ "iJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/gloves/fingerless, /turf/open/floor/iron, /area/shuttle/escape) diff --git a/_maps/shuttles/emergency_shadow.dmm b/_maps/shuttles/emergency_shadow.dmm index 5afa72919cb..f5c2cd049f1 100644 --- a/_maps/shuttles/emergency_shadow.dmm +++ b/_maps/shuttles/emergency_shadow.dmm @@ -1000,7 +1000,7 @@ "Sb" = ( /obj/structure/table, /obj/structure/window/reinforced/spawner/directional/west, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/suit/apron/surgical, /obj/item/clothing/mask/surgical, /obj/item/clothing/gloves/latex/nitrile{ diff --git a/_maps/shuttles/emergency_tram.dmm b/_maps/shuttles/emergency_tram.dmm index 5ec40d242d6..38b2608865b 100644 --- a/_maps/shuttles/emergency_tram.dmm +++ b/_maps/shuttles/emergency_tram.dmm @@ -203,7 +203,7 @@ /area/shuttle/escape) "aX" = ( /obj/structure/table/optable, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/mask/surgical, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) diff --git a/_maps/shuttles/emergency_tranquility.dmm b/_maps/shuttles/emergency_tranquility.dmm index ae3924becbc..0de15be89cb 100644 --- a/_maps/shuttles/emergency_tranquility.dmm +++ b/_maps/shuttles/emergency_tranquility.dmm @@ -2530,7 +2530,7 @@ /obj/effect/turf_decal/tile/blue/opposingcorners, /obj/structure/table, /obj/item/lazarus_injector, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/item/clothing/gloves/latex/nitrile{ pixel_y = 4 }, diff --git a/_maps/shuttles/hunter_mi13_foodtruck.dmm b/_maps/shuttles/hunter_mi13_foodtruck.dmm index 34e6bb730ca..4dca72eaae8 100644 --- a/_maps/shuttles/hunter_mi13_foodtruck.dmm +++ b/_maps/shuttles/hunter_mi13_foodtruck.dmm @@ -15,7 +15,7 @@ /area/shuttle/hunter/mi13_foodtruck) "af" = ( /obj/structure/table/reinforced/plastitaniumglass, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/structure/sign/poster/contraband/hacking_guide/directional/south, /turf/open/floor/circuit/red/off, /area/shuttle/hunter/mi13_foodtruck) diff --git a/_maps/shuttles/ruin_cyborg_mothership.dmm b/_maps/shuttles/ruin_cyborg_mothership.dmm index ea07e4354de..a0cb642c086 100644 --- a/_maps/shuttles/ruin_cyborg_mothership.dmm +++ b/_maps/shuttles/ruin_cyborg_mothership.dmm @@ -709,7 +709,7 @@ /area/shuttle/ruin/cyborg_mothership) "Oq" = ( /obj/structure/table, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/effect/turf_decal/bot, /obj/structure/sink/directional/east, /obj/item/toy/figure/borg{ diff --git a/_maps/shuttles/whiteship_birdshot.dmm b/_maps/shuttles/whiteship_birdshot.dmm index 49f9a2e6a70..e076c841605 100644 --- a/_maps/shuttles/whiteship_birdshot.dmm +++ b/_maps/shuttles/whiteship_birdshot.dmm @@ -146,7 +146,7 @@ pixel_y = 3 }, /obj/item/reagent_containers/blood, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_x = 2; pixel_y = 9 }, diff --git a/_maps/shuttles/whiteship_box.dmm b/_maps/shuttles/whiteship_box.dmm index ed2e2a17b90..9a20e38ebcd 100644 --- a/_maps/shuttles/whiteship_box.dmm +++ b/_maps/shuttles/whiteship_box.dmm @@ -104,7 +104,7 @@ }, /obj/machinery/airalarm/directional/north, /obj/effect/mapping_helpers/airalarm/all_access, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = 4 }, /obj/item/clothing/suit/apron/surgical, diff --git a/_maps/shuttles/whiteship_delta.dmm b/_maps/shuttles/whiteship_delta.dmm index f75f87001b5..e7981b169b8 100644 --- a/_maps/shuttles/whiteship_delta.dmm +++ b/_maps/shuttles/whiteship_delta.dmm @@ -1621,7 +1621,7 @@ /area/shuttle/abandoned/medbay) "dO" = ( /obj/structure/table, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = 4 }, /obj/effect/decal/cleanable/dirt, diff --git a/_maps/templates/lazy_templates/ninja_den.dmm b/_maps/templates/lazy_templates/ninja_den.dmm index 324ebc32093..6ac2503a4dd 100644 --- a/_maps/templates/lazy_templates/ninja_den.dmm +++ b/_maps/templates/lazy_templates/ninja_den.dmm @@ -1652,7 +1652,7 @@ /area/centcom/central_command_areas/holding) "Mz" = ( /obj/structure/closet, -/obj/item/surgery_tray/full, +/obj/effect/spawner/surgery_tray/full, /obj/machinery/iv_drip, /obj/item/emergency_bed, /obj/item/storage/medkit/regular, diff --git a/_maps/templates/lazy_templates/nukie_base.dmm b/_maps/templates/lazy_templates/nukie_base.dmm index 60c5b1dcb58..bb1d8bd4126 100644 --- a/_maps/templates/lazy_templates/nukie_base.dmm +++ b/_maps/templates/lazy_templates/nukie_base.dmm @@ -111,7 +111,7 @@ dir = 5 }, /obj/structure/table/reinforced/plasmarglass, -/obj/item/surgery_tray/full{ +/obj/effect/spawner/surgery_tray/full{ pixel_y = -11 }, /obj/item/storage/belt/medical, diff --git a/_maps/virtual_domains/meta_central.dmm b/_maps/virtual_domains/meta_central.dmm index 2fc87ae17c8..3fc4ed7f21e 100644 --- a/_maps/virtual_domains/meta_central.dmm +++ b/_maps/virtual_domains/meta_central.dmm @@ -4780,7 +4780,7 @@ "NO" = ( /obj/machinery/airalarm/directional/west, /obj/structure/broken_flooring/singular/always_floorplane/directional/east, -/obj/item/surgery_tray/full/deployed, +/obj/effect/spawner/surgery_tray/full/deployed, /turf/open/floor/plating, /area/virtual_domain) "NR" = ( diff --git a/code/game/objects/items/storage/toolbox.dm b/code/game/objects/items/storage/toolbox.dm index 12bdfb54b63..9b5604f5fd7 100644 --- a/code/game/objects/items/storage/toolbox.dm +++ b/code/game/objects/items/storage/toolbox.dm @@ -34,6 +34,8 @@ latches = "double_latch" if(prob(1)) latches = "triple_latch" + if(prob(0.1)) + latches = "quad_latch" // like winning the lottery, but worse update_appearance() atom_storage.open_sound = 'sound/items/handling/toolbox/toolbox_open.ogg' atom_storage.rustle_sound = 'sound/items/handling/toolbox/toolbox_rustle.ogg' @@ -291,6 +293,51 @@ new /obj/item/stack/pipe_cleaner_coil/white(src) new /obj/item/stack/pipe_cleaner_coil/brown(src) +/obj/item/storage/toolbox/medical + name = "medical toolbox" + desc = "A toolbox painted soft white and light blue. This is getting ridiculous." + icon_state = "medical" + inhand_icon_state = "toolbox_medical" + attack_verb_continuous = list("treats", "surgeries", "tends", "tends wounds on") + attack_verb_simple = list("treat", "surgery", "tend", "tend wounds on") + w_class = WEIGHT_CLASS_BULKY + material_flags = NONE + force = 5 // its for healing + wound_bonus = 25 // wounds are medical right? + /// Tray we steal the og contents from. + var/obj/item/surgery_tray/tray_type = /obj/item/surgery_tray + +/obj/item/storage/toolbox/medical/Initialize(mapload) + . = ..() + // what do any of these numbers fucking mean + atom_storage.max_total_storage = 20 + atom_storage.max_slots = 11 + +/obj/item/storage/toolbox/medical/PopulateContents() + var/atom/fake_tray = new tray_type(get_turf(src)) // not in src lest it fill storage that we need for its tools later + for(var/atom/movable/thingy in fake_tray) + thingy.forceMove(src) + qdel(fake_tray) + +/obj/item/storage/toolbox/medical/full + tray_type = /obj/item/surgery_tray/full + +/obj/item/storage/toolbox/medical/coroner + name = "coroner toolbox" + desc = "A toolbox painted soft white and dark grey. This is getting beyond ridiculous." + icon_state = "coroner" + inhand_icon_state = "toolbox_coroner" + attack_verb_continuous = list("dissects", "autopsies", "corones") + attack_verb_simple = list("dissect", "autopsy", "corone") + w_class = WEIGHT_CLASS_BULKY + material_flags = NONE + force = 17 // it's not for healing + tray_type = /obj/item/surgery_tray/full/morgue + +/obj/item/storage/toolbox/medical/coroner/Initialize(mapload) + . = ..() + AddElement(/datum/element/bane, mob_biotypes = MOB_UNDEAD, damage_multiplier = 1) //Just in case one of the tennants get uppity + /obj/item/storage/toolbox/ammobox name = "ammo canister" desc = "A metal canister designed to hold ammunition" diff --git a/code/game/objects/items/surgery_tray.dm b/code/game/objects/items/surgery_tray.dm index 4e84bd3ac35..9485be4c358 100644 --- a/code/game/objects/items/surgery_tray.dm +++ b/code/game/objects/items/surgery_tray.dm @@ -1,3 +1,4 @@ + /** * Surgery Trays * A storage object that displays tools in its contents based on tier, better tools are more visible. @@ -16,11 +17,17 @@ /// If true we're currently portable var/is_portable = TRUE + /// List of contents to populate with in populatecontents() + var/list/starting_items = list() + /// Fills the tray with items it should contain on creation /obj/item/surgery_tray/proc/populate_contents() + for(var/obj in starting_items) + new obj(src) + update_appearance(UPDATE_ICON) return -/obj/item/surgery_tray/Initialize(mapload) +/obj/item/surgery_tray/Initialize(mapload, effect_spawner = FALSE) . = ..() AddElement(/datum/element/drag_pickup) create_storage(storage_type = /datum/storage/surgery_tray) @@ -159,57 +166,100 @@ is_portable = FALSE /obj/item/surgery_tray/full + starting_items = list( + /obj/item/blood_filter, + /obj/item/bonesetter, + /obj/item/cautery, + /obj/item/circular_saw, + /obj/item/clothing/mask/surgical, + /obj/item/hemostat, + /obj/item/razor/surgery, + /obj/item/retractor, + /obj/item/scalpel, + /obj/item/stack/medical/bone_gel, + /obj/item/stack/sticky_tape/surgical, + /obj/item/surgical_drapes, + /obj/item/surgicaldrill, + ) /obj/item/surgery_tray/full/deployed is_portable = FALSE -/obj/item/surgery_tray/full/populate_contents() - new /obj/item/blood_filter(src) - new /obj/item/bonesetter(src) - new /obj/item/cautery(src) - new /obj/item/circular_saw(src) - new /obj/item/clothing/mask/surgical(src) - new /obj/item/hemostat(src) - new /obj/item/razor/surgery(src) - new /obj/item/retractor(src) - new /obj/item/scalpel(src) - new /obj/item/stack/medical/bone_gel(src) - new /obj/item/stack/sticky_tape/surgical(src) - new /obj/item/surgical_drapes(src) - new /obj/item/surgicaldrill(src) - update_appearance(UPDATE_OVERLAYS) - /obj/item/surgery_tray/full/morgue name = "autopsy tray" desc = "A Deforest brand surgery tray, made for use in morgues. It is a folding model, \ meaning the wheels on the bottom can be extended outwards, making it a cart." + starting_items = list( + /obj/item/blood_filter, + /obj/item/bonesetter, + /obj/item/cautery/cruel, + /obj/item/circular_saw, + /obj/item/clothing/mask/surgical, + /obj/item/hemostat/cruel, + /obj/item/razor/surgery, + /obj/item/retractor/cruel, + /obj/item/scalpel/cruel, + /obj/item/stack/medical/bone_gel, + /obj/item/stack/sticky_tape/surgical, + /obj/item/surgical_drapes, + /obj/item/surgicaldrill, + ) -/obj/item/surgery_tray/full/morgue/populate_contents() - new /obj/item/blood_filter(src) - new /obj/item/bonesetter(src) - new /obj/item/cautery/cruel(src) - new /obj/item/circular_saw(src) - new /obj/item/clothing/mask/surgical(src) - new /obj/item/hemostat/cruel(src) - new /obj/item/razor/surgery(src) - new /obj/item/retractor/cruel(src) - new /obj/item/scalpel/cruel(src) - new /obj/item/stack/medical/bone_gel(src) - new /obj/item/stack/sticky_tape/surgical(src) - new /obj/item/surgical_drapes(src) - new /obj/item/surgicaldrill(src) +/obj/item/surgery_tray/full/morgue/deployed + is_portable = FALSE /// Surgery tray with advanced tools for debug /obj/item/surgery_tray/full/advanced + starting_items = list( + /obj/item/scalpel/advanced, + /obj/item/retractor/advanced, + /obj/item/cautery/advanced, + /obj/item/surgical_drapes, + /obj/item/reagent_containers/medigel/sterilizine, + /obj/item/bonesetter, + /obj/item/blood_filter, + /obj/item/stack/medical/bone_gel, + /obj/item/stack/sticky_tape/surgical, + /obj/item/clothing/mask/surgical, + ) -/obj/item/surgery_tray/full/advanced/populate_contents() - new /obj/item/scalpel/advanced(src) - new /obj/item/retractor/advanced(src) - new /obj/item/cautery/advanced(src) - new /obj/item/surgical_drapes(src) - new /obj/item/reagent_containers/medigel/sterilizine(src) - new /obj/item/bonesetter(src) - new /obj/item/blood_filter(src) - new /obj/item/stack/medical/bone_gel(src) - new /obj/item/stack/sticky_tape/surgical(src) - new /obj/item/clothing/mask/surgical(src) +/obj/effect/spawner/surgery_tray + name = "surgery tray spawner" + icon = 'icons/obj/medical/medicart.dmi' + icon_state = "tray" + /// Tray to usually spawn in. + var/tray_to_spawn = /obj/item/surgery_tray + /// Toolbox to sometimes replace the above tray with. + var/rare_toolbox_replacement = /obj/item/storage/toolbox/medical + /// Chance for replacement + var/toolbox_chance = 1 + +/obj/effect/spawner/surgery_tray/Initialize(mapload) + . = ..() + if(prob(toolbox_chance)) + new rare_toolbox_replacement(loc) + return + new tray_to_spawn(loc, TRUE) + +/obj/effect/spawner/surgery_tray/full + name = "full surgery tray spawner" + icon_state = "tray" + tray_to_spawn = /obj/item/surgery_tray/full + rare_toolbox_replacement = /obj/item/storage/toolbox/medical/full + +/obj/effect/spawner/surgery_tray/full/deployed + name = "full deployed tray spawner" + icon_state = "medicart" + tray_to_spawn = /obj/item/surgery_tray/full + +/obj/effect/spawner/surgery_tray/full/morgue + name = "full autopsy tray spawner" + icon_state = "tray" + tray_to_spawn = /obj/item/surgery_tray/full/morgue + rare_toolbox_replacement = /obj/item/storage/toolbox/medical/coroner + toolbox_chance = 3 // tray is rarer, so toolbox is more common + +/obj/effect/spawner/surgery_tray/full/morgue/deployed + name = "full deployed autopsy tray spawner" + icon_state = "medicart" + tray_to_spawn = /obj/item/surgery_tray/full/morgue/deployed diff --git a/icons/mob/inhands/equipment/toolbox_lefthand.dmi b/icons/mob/inhands/equipment/toolbox_lefthand.dmi index e3aca82d9e8..3dbd5ea013d 100644 Binary files a/icons/mob/inhands/equipment/toolbox_lefthand.dmi and b/icons/mob/inhands/equipment/toolbox_lefthand.dmi differ diff --git a/icons/mob/inhands/equipment/toolbox_righthand.dmi b/icons/mob/inhands/equipment/toolbox_righthand.dmi index a7b538a1300..13dc226fcea 100644 Binary files a/icons/mob/inhands/equipment/toolbox_righthand.dmi and b/icons/mob/inhands/equipment/toolbox_righthand.dmi differ diff --git a/icons/obj/storage/toolbox.dmi b/icons/obj/storage/toolbox.dmi index 9ca99565f31..49385d5b73c 100644 Binary files a/icons/obj/storage/toolbox.dmi and b/icons/obj/storage/toolbox.dmi differ