diff --git a/_maps/RandomRuins/SpaceRuins/skyrat/interdynefob.dmm b/_maps/RandomRuins/SpaceRuins/skyrat/interdynefob.dmm index 801e86950e4..2c13cd12d70 100644 --- a/_maps/RandomRuins/SpaceRuins/skyrat/interdynefob.dmm +++ b/_maps/RandomRuins/SpaceRuins/skyrat/interdynefob.dmm @@ -2284,7 +2284,7 @@ /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/skyrat/interdynefob/bridge) "jD" = ( -/obj/item/storage/secure/briefcase/white{ +/obj/item/storage/briefcase/secure/white{ pixel_y = 13 }, /turf/open/floor/wood/large, diff --git a/_maps/RandomRuins/SpaceRuins/spacehotel_skyrat.dmm b/_maps/RandomRuins/SpaceRuins/spacehotel_skyrat.dmm index e5b1e49530f..1ac79d00a2e 100644 --- a/_maps/RandomRuins/SpaceRuins/spacehotel_skyrat.dmm +++ b/_maps/RandomRuins/SpaceRuins/spacehotel_skyrat.dmm @@ -6109,7 +6109,7 @@ "JG" = ( /obj/structure/table/wood, /obj/item/modular_computer/laptop, -/obj/item/storage/secure/briefcase/white, +/obj/item/storage/briefcase/secure/white, /obj/item/key_card/hotel_room/seven, /obj/item/key_card/hotel_room/six, /obj/item/key_card/hotel_room/five, diff --git a/_maps/RandomRuins/SpaceRuins/travelers_rest.dmm b/_maps/RandomRuins/SpaceRuins/travelers_rest.dmm index 8e773ee9926..7ad7cfc5a1d 100644 --- a/_maps/RandomRuins/SpaceRuins/travelers_rest.dmm +++ b/_maps/RandomRuins/SpaceRuins/travelers_rest.dmm @@ -405,7 +405,7 @@ /obj/effect/turf_decal/trimline/dark_green/filled/line{ dir = 1 }, -/obj/item/storage/secure/safe/directional/north{ +/obj/structure/secure_safe/directional/north{ pixel_y = 45 }, /obj/structure/sink/kitchen/directional/south{ diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm index c6eb6b38b64..47abe5bb4af 100644 --- a/_maps/RandomZLevels/moonoutpost19.dmm +++ b/_maps/RandomZLevels/moonoutpost19.dmm @@ -290,12 +290,6 @@ }, /turf/open/floor/iron/white, /area/awaymission/moonoutpost19/research) -"ca" = ( -/mob/living/basic/construct/proteon/hostile, -/turf/open/misc/asteroid/moon{ - initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251" - }, -/area/awaymission/moonoutpost19/mines) "cb" = ( /obj/machinery/light/broken/directional/east, /obj/machinery/airalarm/directional/east, @@ -399,6 +393,13 @@ /obj/structure/cable, /turf/open/floor/iron, /area/awaymission/moonoutpost19/research) +"cS" = ( +/mob/living/basic/construct/proteon/hostile, +/obj/structure/flora/lunar_plant, +/turf/open/misc/asteroid/moon{ + initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251" + }, +/area/awaymission/moonoutpost19/mines) "cT" = ( /obj/structure/cable, /obj/effect/decal/cleanable/xenoblood, @@ -432,6 +433,12 @@ temperature = 251 }, /area/awaymission/moonoutpost19/syndicate) +"dr" = ( +/mob/living/basic/construct/proteon/hostile, +/turf/open/misc/asteroid/moon{ + initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251" + }, +/area/awaymission/moonoutpost19/mines) "ds" = ( /obj/item/pizzabox{ pixel_x = 20; @@ -2768,6 +2775,16 @@ dir = 1 }, /area/awaymission/moonoutpost19/research) +"rF" = ( +/obj/structure/secure_safe/directional/east, +/obj/effect/decal/cleanable/blood/splatter, +/obj/item/pen, +/obj/item/paper/crumpled/awaymissions/moonoutpost19/hastey_note, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/awaymission/moonoutpost19/research) "rH" = ( /obj/structure/closet/crate/bin, /obj/effect/turf_decal/siding/purple{ @@ -3349,17 +3366,6 @@ /obj/item/stack/cable_coil/cut, /turf/open/floor/plating, /area/awaymission/moonoutpost19/research) -"vu" = ( -/obj/structure/table, -/obj/item/storage/secure/briefcase, -/obj/item/taperecorder{ - pixel_x = -3 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/iron/dark, -/area/awaymission/moonoutpost19/research) "vx" = ( /obj/structure/table/reinforced, /obj/machinery/button/door{ @@ -4975,13 +4981,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/awaymission/moonoutpost19/arrivals) -"GQ" = ( -/mob/living/basic/construct/proteon/hostile, -/obj/structure/flora/lunar_plant, -/turf/open/misc/asteroid/moon{ - initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251" - }, -/area/awaymission/moonoutpost19/mines) "GR" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plating, @@ -5048,6 +5047,17 @@ /obj/effect/mapping_helpers/airalarm/unlocked, /turf/open/floor/plating, /area/awaymission/moonoutpost19/syndicate) +"Hr" = ( +/obj/structure/table, +/obj/item/storage/briefcase/secure, +/obj/item/taperecorder{ + pixel_x = -3 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/iron/dark, +/area/awaymission/moonoutpost19/research) "Hs" = ( /obj/effect/turf_decal/stripes{ dir = 4 @@ -6843,16 +6853,6 @@ dir = 5 }, /area/awaymission/moonoutpost19/research) -"Tx" = ( -/obj/item/storage/secure/safe/directional/east, -/obj/effect/decal/cleanable/blood/splatter, -/obj/item/pen, -/obj/item/paper/crumpled/awaymissions/moonoutpost19/hastey_note, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/awaymission/moonoutpost19/research) "Tz" = ( /obj/machinery/power/shuttle_engine/propulsion/burst/left{ dir = 4 @@ -15631,7 +15631,7 @@ tb tb tb tb -ca +dr mo mo FB @@ -16408,7 +16408,7 @@ eA tb tb tb -GQ +cS mo mo mo @@ -16419,7 +16419,7 @@ mo mo mo PP -ca +dr tb tb sn @@ -18718,7 +18718,7 @@ tb tb vE mo -ca +dr Qe Qe tb @@ -18987,13 +18987,13 @@ tb mo Np Zs -ca +dr mo rd tb tb sn -ca +dr tb tb tb @@ -19989,7 +19989,7 @@ tb mo mo mo -ca +dr tb tb tb @@ -20515,7 +20515,7 @@ tb tb Qe tb -ca +dr mo mo mo @@ -20529,7 +20529,7 @@ eA sn tb tb -ca +dr eA tb tb @@ -21784,7 +21784,7 @@ FB tb tb eA -ca +dr tb tb tb @@ -22077,7 +22077,7 @@ tb tb tb mo -ca +dr tb tb tb @@ -23321,7 +23321,7 @@ tb tb tb tb -ca +dr mo tb tb @@ -23577,7 +23577,7 @@ zk tb tb tb -ca +dr mo tb tb @@ -35484,8 +35484,8 @@ ik OC aJ Um -Tx -vu +rF +Hr ea of TS diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm index 6aa99013c81..f398b90a9a8 100644 --- a/_maps/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/RandomZLevels/undergroundoutpost45.dmm @@ -4042,7 +4042,7 @@ }, /area/awaymission/undergroundoutpost45/research) "pg" = ( -/obj/item/storage/secure/safe{ +/obj/structure/secure_safe{ pixel_x = 5; pixel_y = -27 }, diff --git a/_maps/map_files/Birdshot/birdshot.dmm b/_maps/map_files/Birdshot/birdshot.dmm index 7e926407962..d2e8f5c89f7 100644 --- a/_maps/map_files/Birdshot/birdshot.dmm +++ b/_maps/map_files/Birdshot/birdshot.dmm @@ -2562,7 +2562,7 @@ "aZP" = ( /obj/structure/cable, /obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_y = -10 }, /obj/item/paper_bin{ @@ -16236,7 +16236,7 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/item/bedsheet/ce, /obj/effect/landmark/start/chief_engineer, -/obj/item/storage/secure/safe/directional/south, +/obj/structure/secure_safe/directional/south, /turf/open/floor/iron/grimy, /area/station/command/heads_quarters/ce) "fTD" = ( @@ -17367,7 +17367,7 @@ /area/station/command/heads_quarters/ce) "gpK" = ( /obj/structure/closet/secure_closet/engineering_chief, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/lighter, /obj/machinery/computer/security/telescreen/entertainment/directional/south, /turf/open/floor/iron/grimy, @@ -18369,7 +18369,7 @@ /area/station/medical/chemistry) "gIG" = ( /obj/structure/table/glass, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /turf/open/floor/carpet/executive, /area/station/command/meeting_room) "gIH" = ( @@ -19597,7 +19597,7 @@ name = "Evidence Closet 2" }, /obj/effect/decal/cleanable/dirt, -/obj/item/storage/secure/safe/directional/north{ +/obj/structure/secure_safe/directional/north{ name = "evidence safe" }, /turf/open/floor/iron/smooth, @@ -38641,7 +38641,7 @@ /obj/effect/turf_decal/siding/dark_red/corner{ dir = 8 }, -/obj/item/storage/secure/safe/directional/north{ +/obj/structure/secure_safe/directional/north{ name = "armory safe A" }, /obj/effect/decal/cleanable/dirt, @@ -43195,7 +43195,7 @@ /area/station/command/corporate_suite) "ptB" = ( /obj/item/kirbyplants/organic/applebush, -/obj/item/storage/secure/safe/caps_spare/directional/west, +/obj/structure/secure_safe/caps_spare/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/command/bridge) "ptN" = ( @@ -55410,7 +55410,7 @@ /obj/effect/turf_decal/siding/dark_red{ dir = 1 }, -/obj/item/storage/secure/safe/hos{ +/obj/structure/secure_safe/hos{ pixel_x = 15; pixel_y = 28 }, @@ -61262,11 +61262,11 @@ /area/station/maintenance/department/science/xenobiology) "vgC" = ( /obj/structure/closet/secure_closet/chief_medical, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 3; pixel_y = 5 }, -/obj/item/storage/secure/safe/directional/south{ +/obj/structure/secure_safe/directional/south{ pixel_y = -23 }, /obj/item/gun/syringe, @@ -71998,11 +71998,11 @@ "yhk" = ( /obj/structure/table, /obj/machinery/light_switch/directional/north, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 3; pixel_y = 12 }, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = -1; pixel_y = 8 }, diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index bb4f8c4c16b..0c73cb0f482 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -817,7 +817,7 @@ /turf/open/floor/iron, /area/station/maintenance/department/eva/abandoned) "ajG" = ( -/obj/item/storage/secure/safe/directional/west, +/obj/structure/secure_safe/directional/west, /obj/effect/turf_decal/tile/purple/half/contrasted{ dir = 8 }, @@ -1159,7 +1159,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/turf_decal/siding/wood{ dir = 8 }, @@ -8215,7 +8215,7 @@ "bWn" = ( /obj/structure/sign/poster/party_game/directional/west, /obj/structure/table, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 3; pixel_y = 3 }, @@ -11552,7 +11552,7 @@ /area/station/service/theater) "cNy" = ( /obj/item/kirbyplants/random, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /turf/open/floor/iron/grimy, /area/station/command/heads_quarters/captain/private) "cNH" = ( @@ -16562,7 +16562,7 @@ "eaL" = ( /obj/structure/table, /obj/item/stack/package_wrap, -/obj/item/storage/secure/safe/directional/north, +/obj/structure/secure_safe/directional/north, /obj/item/stack/package_wrap, /obj/item/hand_labeler, /obj/machinery/airalarm/directional/east, @@ -18007,7 +18007,7 @@ "euf" = ( /obj/structure/table/wood, /obj/machinery/newscaster/directional/east, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/book/manual/wiki/security_space_law, /obj/item/taperecorder{ pixel_x = 3; @@ -21708,7 +21708,7 @@ /area/station/security/warden) "fpe" = ( /obj/structure/closet/secure_closet/contraband/heads, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/storage/box/ids, /obj/machinery/airalarm/directional/north, /obj/effect/turf_decal/bot, @@ -25288,7 +25288,7 @@ /area/station/medical/paramedic) "gjG" = ( /obj/structure/table/wood, -/obj/item/storage/secure/safe/hos{ +/obj/structure/secure_safe/hos{ pixel_x = 32 }, /obj/machinery/light_switch/directional/north, @@ -27233,7 +27233,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /turf/open/floor/wood, /area/station/command/meeting_room/council) "gGv" = ( @@ -27335,7 +27335,7 @@ "gHH" = ( /obj/structure/cable, /obj/structure/closet/secure_closet/contraband/heads, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/machinery/power/apc/auto_name/directional/north, /obj/effect/turf_decal/tile/blue/anticorner/contrasted{ dir = 1 @@ -31713,7 +31713,7 @@ /area/station/hallway/secondary/exit/departure_lounge) "hQJ" = ( /obj/structure/table/wood, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/machinery/computer/security/wooden_tv, /obj/machinery/light_switch/directional/south{ pixel_x = 8 @@ -36579,7 +36579,7 @@ pixel_x = -3; pixel_y = 1 }, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 5; pixel_y = -3 }, @@ -41984,7 +41984,7 @@ /area/station/hallway/primary/central/fore) "kqk" = ( /obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 5; pixel_y = 5 }, @@ -45533,7 +45533,7 @@ "lmI" = ( /obj/structure/table/glass, /obj/machinery/computer/records/medical/laptop, -/obj/item/storage/secure/safe/directional/north, +/obj/structure/secure_safe/directional/north, /obj/item/radio/intercom/directional/east, /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -47633,7 +47633,7 @@ "lLW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/storage/briefcase{ pixel_x = -3; pixel_y = 3 @@ -52999,7 +52999,7 @@ /area/station/service/chapel/funeral) "niL" = ( /obj/structure/rack, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/machinery/status_display/ai/directional/south, /obj/effect/turf_decal/bot, /obj/item/reagent_containers/pill/patch/aiuri, @@ -56774,7 +56774,7 @@ "oit" = ( /obj/structure/table/wood, /obj/machinery/light/directional/north, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/item/storage/lockbox/loyalty, /obj/item/storage/backpack/satchel/leather/withwallet{ pixel_y = 6 @@ -59839,7 +59839,7 @@ pixel_x = -3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/machinery/airalarm/directional/east, /turf/open/floor/wood, /area/station/service/lawoffice) @@ -63410,7 +63410,7 @@ "pQR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/wood, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/grenade/smokebomb, /turf/open/floor/wood, /area/station/maintenance/starboard/aft) @@ -76887,7 +76887,7 @@ "tip" = ( /obj/structure/rack, /obj/item/aicard, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/machinery/status_display/evac/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -83247,7 +83247,7 @@ /area/station/science/lobby) "uLn" = ( /obj/structure/table, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/machinery/firealarm/directional/north, /obj/item/clothing/neck/stethoscope, /obj/item/flashlight/pen, @@ -84993,7 +84993,7 @@ /turf/open/floor/iron/diagonal, /area/station/science/breakroom) "vhx" = ( -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) @@ -85687,7 +85687,7 @@ "vrz" = ( /obj/structure/table/reinforced, /obj/item/folder/red, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/book/manual/wiki/security_space_law, /obj/item/taperecorder, /obj/effect/turf_decal/tile/red/fourcorners, @@ -87519,7 +87519,7 @@ "vPv" = ( /obj/structure/table/reinforced, /obj/machinery/status_display/ai/directional/east, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/aicard, /obj/item/circuitboard/aicore, /obj/effect/turf_decal/tile/purple/half/contrasted{ @@ -88250,7 +88250,7 @@ "vZw" = ( /obj/structure/table/reinforced, /obj/item/storage/medkit/regular, -/obj/item/storage/secure/safe/caps_spare/directional/west, +/obj/structure/secure_safe/caps_spare/directional/west, /obj/effect/turf_decal/tile/blue{ dir = 1 }, @@ -91661,7 +91661,7 @@ /area/station/hallway/secondary/entry) "wRe" = ( /obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 3; pixel_y = 3 }, @@ -93292,7 +93292,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/closet/secure_closet/personal, /obj/effect/spawner/random/food_or_drink/cups, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/turf_decal/bot, /obj/item/radio/intercom/directional/west, /obj/effect/turf_decal/tile/brown/opposingcorners{ @@ -95474,7 +95474,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/turf_decal/tile/blue/half/contrasted, /turf/open/floor/iron, /area/station/security/courtroom) diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index f16ecc8c4d2..4c286912a63 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -3452,13 +3452,6 @@ }, /turf/open/floor/iron/dark, /area/station/ai_monitored/turret_protected/ai_upload) -"bdL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold/purple/visible{ - dir = 4 - }, -/obj/machinery/meter, -/turf/open/floor/iron/dark, -/area/station/science/ordnance) "bdQ" = ( /obj/structure/table, /obj/item/assembly/signaler{ @@ -4170,6 +4163,16 @@ /obj/structure/sign/poster/contraband/the_griffin/directional/south, /turf/open/floor/iron/grimy, /area/station/commons/vacant_room/office) +"boj" = ( +/obj/machinery/airalarm/directional/north, +/obj/structure/closet/secure_closet/personal, +/obj/item/storage/briefcase/secure, +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/effect/turf_decal/tile/brown/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/vacant_room/commissary) "bol" = ( /turf/open/floor/iron/dark/textured, /area/station/security/prison) @@ -10051,6 +10054,14 @@ }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/nospawn) +"cXb" = ( +/obj/structure/table/reinforced, +/obj/structure/secure_safe/caps_spare/directional/east, +/obj/item/papercutter{ + pixel_x = 7 + }, +/turf/open/floor/iron, +/area/station/command/bridge) "cXc" = ( /obj/effect/turf_decal/arrows, /turf/open/floor/iron, @@ -10747,14 +10758,6 @@ /obj/effect/turf_decal/tile/red/full, /turf/open/floor/iron/dark/smooth_large, /area/station/security/checkpoint/medical) -"dho" = ( -/obj/structure/table/reinforced, -/obj/item/storage/secure/briefcase{ - pixel_y = 5 - }, -/obj/machinery/status_display/evac/directional/west, -/turf/open/floor/iron, -/area/station/command/bridge) "dhq" = ( /turf/closed/mineral/random/labormineral/ice, /area/icemoon/surface/outdoors/labor_camp) @@ -15706,29 +15709,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/primary/central) -"eJC" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/cup/glass/bottle/vodka/badminka{ - pixel_x = 7; - pixel_y = 20 - }, -/obj/item/taperecorder{ - pixel_x = -5; - pixel_y = 1 - }, -/obj/item/reagent_containers/cup/glass/drinkingglass/shotglass{ - pixel_x = 7; - pixel_y = 8 - }, -/obj/item/reagent_containers/cup/glass/drinkingglass/shotglass{ - pixel_x = 6 - }, -/obj/item/storage/secure/safe/hos{ - pixel_x = 35 - }, -/obj/machinery/firealarm/directional/south, -/turf/open/floor/iron/dark/smooth_large, -/area/station/command/heads_quarters/hos) "eJI" = ( /obj/structure/closet/emcloset, /obj/effect/mapping_helpers/broken_floor, @@ -21060,18 +21040,6 @@ /obj/effect/spawner/random/vending/colavend, /turf/open/floor/iron, /area/station/commons/locker) -"guh" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8 - }, -/obj/machinery/airalarm/directional/south, -/obj/effect/mapping_helpers/airalarm/link{ - chamber_id = "ordnancefreezer" - }, -/obj/effect/mapping_helpers/airalarm/mixingchamber_access, -/obj/effect/mapping_helpers/airalarm/tlv_no_checks, -/turf/open/floor/iron/dark, -/area/station/science/ordnance) "guS" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -22026,14 +21994,6 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/mining_station, /turf/open/floor/iron/smooth_large, /area/station/cargo/warehouse) -"gKk" = ( -/obj/structure/table/reinforced, -/obj/item/storage/secure/safe/caps_spare/directional/east, -/obj/item/papercutter{ - pixel_x = 7 - }, -/turf/open/floor/iron, -/area/station/command/bridge) "gKl" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -22496,6 +22456,18 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/iron, /area/station/security/prison/visit) +"gSr" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/suit/utility/radiation, +/obj/item/clothing/head/utility/radiation, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/item/geiger_counter, +/obj/item/clothing/glasses/meson, +/obj/machinery/firealarm/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "gSy" = ( /turf/open/floor/iron, /area/station/security/prison/workout) @@ -23027,14 +22999,6 @@ "hap" = ( /turf/open/floor/vault, /area/station/security/prison/rec) -"haw" = ( -/obj/item/storage/secure/safe/directional/south, -/obj/machinery/light/directional/south, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/commons/vacant_room/commissary) "hay" = ( /obj/structure/extinguisher_cabinet/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -27883,6 +27847,15 @@ /obj/effect/turf_decal/tile/yellow/opposingcorners, /turf/open/floor/iron/white, /area/station/maintenance/port/fore) +"iBi" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/table, +/obj/structure/secure_safe/directional/south, +/obj/item/storage/briefcase/secure, +/turf/open/floor/iron/smooth, +/area/station/command/heads_quarters/rd) "iBj" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -28667,15 +28640,14 @@ /obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"iOO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 +"iOQ" = ( +/obj/structure/table/reinforced, +/obj/item/storage/briefcase/secure{ + pixel_y = 5 }, -/obj/structure/table, -/obj/item/storage/secure/safe/directional/south, -/obj/item/storage/secure/briefcase, -/turf/open/floor/iron/smooth, -/area/station/command/heads_quarters/rd) +/obj/machinery/status_display/evac/directional/west, +/turf/open/floor/iron, +/area/station/command/bridge) "iOS" = ( /obj/machinery/airalarm/directional/east, /obj/structure/table, @@ -30656,6 +30628,18 @@ /obj/machinery/atmospherics/pipe/smart/simple/purple/visible, /turf/open/floor/iron, /area/station/engineering/atmos) +"jwj" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8 + }, +/obj/machinery/airalarm/directional/south, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "ordnancefreezer" + }, +/obj/effect/mapping_helpers/airalarm/mixingchamber_access, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, +/turf/open/floor/iron/dark, +/area/station/science/ordnance) "jwl" = ( /obj/machinery/airalarm/directional/south, /turf/open/floor/iron, @@ -33972,6 +33956,22 @@ /obj/structure/sign/warning/electric_shock, /turf/closed/wall/r_wall, /area/station/security/prison/work) +"ktw" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/camera/directional/south{ + c_tag = "Engineering Supermatter Fore"; + network = list("ss13","engine"); + pixel_x = 23 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, +/obj/machinery/airalarm/directional/south, +/obj/effect/mapping_helpers/airalarm/engine_access, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "engine" + }, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "ktx" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 @@ -36480,6 +36480,10 @@ }, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/explored) +"lgg" = ( +/obj/machinery/air_sensor/engine_chamber, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "lgk" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 4 @@ -41081,10 +41085,6 @@ /obj/item/stamp/head/ce, /turf/open/floor/iron, /area/station/command/heads_quarters/ce) -"mDA" = ( -/obj/machinery/air_sensor/engine_chamber, -/turf/open/floor/engine, -/area/station/engineering/supermatter) "mDX" = ( /turf/open/floor/engine/n2, /area/station/engineering/atmos) @@ -42338,6 +42338,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/commons/fitness) +"mZO" = ( +/obj/structure/table/wood, +/obj/structure/secure_safe/directional/east, +/obj/machinery/light/directional/east, +/turf/open/floor/wood, +/area/station/command/heads_quarters/captain) "mZS" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/blue, @@ -45565,18 +45571,6 @@ /obj/machinery/atmospherics/pipe/smart/simple/orange/visible, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/nospawn) -"nTk" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/suit/utility/radiation, -/obj/item/clothing/head/utility/radiation, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/item/geiger_counter, -/obj/item/clothing/glasses/meson, -/obj/machinery/firealarm/directional/north, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "nTp" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -46087,6 +46081,19 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron, /area/station/science/xenobiology) +"odf" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/effect/turf_decal/box/red, +/obj/machinery/airalarm/directional/east, +/obj/effect/mapping_helpers/airalarm/mixingchamber_access, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "ordnanceburn" + }, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, +/turf/open/floor/iron/dark, +/area/station/science/ordnance) "odi" = ( /obj/item/toy/snowball{ pixel_x = 5; @@ -50743,16 +50750,6 @@ }, /turf/open/floor/iron/dark, /area/station/cargo/miningdock) -"pwc" = ( -/obj/machinery/airalarm/directional/north, -/obj/structure/closet/secure_closet/personal, -/obj/item/storage/secure/briefcase, -/obj/effect/turf_decal/tile/neutral/opposingcorners, -/obj/effect/turf_decal/tile/brown/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/commons/vacant_room/commissary) "pwd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -54377,6 +54374,14 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/mining, /turf/open/floor/iron/large, /area/mine/mechbay) +"qDj" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Gas to Filter" + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "qDD" = ( /obj/machinery/washing_machine, /obj/effect/decal/cleanable/dirt, @@ -54817,6 +54822,29 @@ /obj/item/cigbutt, /turf/open/floor/wood/large, /area/mine/eva/lower) +"qJO" = ( +/obj/structure/table/wood, +/obj/item/reagent_containers/cup/glass/bottle/vodka/badminka{ + pixel_x = 7; + pixel_y = 20 + }, +/obj/item/taperecorder{ + pixel_x = -5; + pixel_y = 1 + }, +/obj/item/reagent_containers/cup/glass/drinkingglass/shotglass{ + pixel_x = 7; + pixel_y = 8 + }, +/obj/item/reagent_containers/cup/glass/drinkingglass/shotglass{ + pixel_x = 6 + }, +/obj/structure/secure_safe/hos{ + pixel_x = 35 + }, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/heads_quarters/hos) "qJT" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/plating/snowed/icemoon, @@ -58695,14 +58723,6 @@ }, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) -"rTp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Gas to Filter" - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter) "rTs" = ( /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden, /turf/open/floor/plating, @@ -59613,22 +59633,6 @@ }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/nospawn) -"shJ" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/camera/directional/south{ - c_tag = "Engineering Supermatter Fore"; - network = list("ss13","engine"); - pixel_x = 23 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, -/obj/machinery/airalarm/directional/south, -/obj/effect/mapping_helpers/airalarm/engine_access, -/obj/effect/mapping_helpers/airalarm/link{ - chamber_id = "engine" - }, -/obj/effect/mapping_helpers/airalarm/tlv_no_checks, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "shT" = ( /obj/effect/turf_decal/tile/blue{ dir = 1 @@ -64120,17 +64124,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/prison/work) -"tCM" = ( -/obj/structure/bed{ - dir = 4 - }, -/obj/item/bedsheet/medical{ - dir = 4 - }, -/obj/item/storage/secure/safe/directional/south, -/obj/effect/turf_decal/tile/green/full, -/turf/open/floor/iron/dark/smooth_large, -/area/station/medical/virology) "tCO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -68158,6 +68151,13 @@ dir = 1 }, /area/station/engineering/main) +"uSq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/purple/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/iron/dark, +/area/station/science/ordnance) "uSS" = ( /obj/machinery/recharge_station, /obj/effect/turf_decal/stripes/box, @@ -70739,6 +70739,17 @@ /obj/machinery/light_switch/directional/west, /turf/open/floor/iron/dark, /area/station/science/breakroom) +"vJX" = ( +/obj/structure/bed{ + dir = 4 + }, +/obj/item/bedsheet/medical{ + dir = 4 + }, +/obj/structure/secure_safe/directional/south, +/obj/effect/turf_decal/tile/green/full, +/turf/open/floor/iron/dark/smooth_large, +/area/station/medical/virology) "vJY" = ( /obj/structure/railing/corner{ dir = 8 @@ -73230,12 +73241,6 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) -"wwB" = ( -/obj/structure/table/wood, -/obj/item/storage/secure/safe/directional/east, -/obj/machinery/light/directional/east, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain) "wwI" = ( /obj/structure/chair, /obj/effect/turf_decal/stripes/line{ @@ -73965,6 +73970,14 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/carpet, /area/station/commons/dorms) +"wIE" = ( +/obj/structure/secure_safe/directional/south, +/obj/machinery/light/directional/south, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/commons/vacant_room/commissary) "wIF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -76359,19 +76372,6 @@ /obj/item/food/grown/carrot, /turf/open/misc/asteroid/snow/standard_air, /area/station/science/research) -"xsR" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/effect/turf_decal/box/red, -/obj/machinery/airalarm/directional/east, -/obj/effect/mapping_helpers/airalarm/mixingchamber_access, -/obj/effect/mapping_helpers/airalarm/link{ - chamber_id = "ordnanceburn" - }, -/obj/effect/mapping_helpers/airalarm/tlv_no_checks, -/turf/open/floor/iron/dark, -/area/station/science/ordnance) "xtc" = ( /obj/effect/turf_decal/trimline/blue/filled/warning{ dir = 1 @@ -184135,7 +184135,7 @@ hzz gmf jUB gyY -tCM +vJX xDb thA thA @@ -194166,7 +194166,7 @@ qSk sbd rEh qSk -guh +jwj qZN dJy pNB @@ -194419,11 +194419,11 @@ nBV iao hKj iao -xsR +odf sbd jaY rhY -bdL +uSq pjc gmb hac @@ -233195,7 +233195,7 @@ gpZ vov cAo gst -pwc +boj plN rTO rTO @@ -233457,7 +233457,7 @@ fXu uOM vzw rTO -haw +wIE gst byl rgl @@ -237817,7 +237817,7 @@ dnq kgD utR uEQ -dho +iOQ grA cEv nOH @@ -238912,9 +238912,9 @@ sSJ oSR glc fab -shJ +ktw bny -rTp +qDj xBp bYw bYw @@ -239173,7 +239173,7 @@ tfR iNa tLW seR -mDA +lgg uey esE uLe @@ -239576,7 +239576,7 @@ jDt wtg diq ehy -eJC +qJO mgU fUj kcc @@ -239938,7 +239938,7 @@ sIp uif wRd gka -nTk +gSr fab iag loc @@ -240388,7 +240388,7 @@ nfk utR tmQ qnV -gKk +cXb kBr lhv iGH @@ -242454,7 +242454,7 @@ eEC aTw iFL hpe -wwB +mZO mBX uEm viQ @@ -254813,7 +254813,7 @@ bHa oMT gaT bZc -iOO +iBi jbU ily hdH diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 687ded631f7..e6ba2a8dda4 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -1614,12 +1614,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/construction/storage_wing) -"aEP" = ( -/obj/machinery/light_switch/directional/east, -/obj/structure/dresser, -/obj/item/storage/secure/safe/directional/north, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain/private) "aEW" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -2671,22 +2665,6 @@ }, /turf/open/floor/circuit, /area/station/ai_monitored/turret_protected/ai) -"aWR" = ( -/obj/structure/table/glass, -/obj/machinery/light_switch/directional/north, -/obj/item/storage/secure/briefcase{ - pixel_x = 3; - pixel_y = 5 - }, -/obj/item/storage/medkit/regular{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/effect/turf_decal/tile/blue/anticorner/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/white, -/area/station/command/heads_quarters/cmo) "aXa" = ( /turf/closed/wall, /area/station/security/prison/mess) @@ -7488,6 +7466,19 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port) +"cMc" = ( +/obj/machinery/recharger{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/structure/secure_safe/directional/east, +/obj/structure/table/wood, +/obj/item/flashlight/lamp/green{ + pixel_x = -12; + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/station/command/heads_quarters/hop) "cMd" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, /turf/open/floor/iron, @@ -8404,6 +8395,20 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"ddy" = ( +/obj/structure/rack, +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 2 + }, +/obj/item/storage/briefcase/secure{ + pixel_x = 2; + pixel_y = -2 + }, +/obj/item/taperecorder, +/obj/item/clothing/glasses/sunglasses, +/turf/open/floor/wood, +/area/station/service/lawoffice) "ddK" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -9253,15 +9258,6 @@ }, /turf/open/floor/iron, /area/station/commons/dorms) -"dth" = ( -/obj/structure/table, -/obj/item/storage/secure/briefcase{ - pixel_x = -7; - pixel_y = 12 - }, -/obj/effect/spawner/random/engineering/flashlight, -/turf/open/floor/iron/dark, -/area/station/security/office) "dtB" = ( /obj/machinery/atmospherics/pipe/smart/manifold/purple/visible{ dir = 8 @@ -9900,6 +9896,21 @@ /obj/machinery/door/window/right/directional/west, /turf/open/floor/wood, /area/station/command/heads_quarters/captain/private) +"dIW" = ( +/obj/effect/turf_decal/siding/purple{ + dir = 8 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1 + }, +/obj/effect/mapping_helpers/airalarm/mixingchamber_access, +/obj/machinery/airalarm/directional/west, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "ordnancefreezer" + }, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, +/turf/open/floor/iron/dark, +/area/station/science/ordnance) "dJk" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -10092,24 +10103,6 @@ /obj/structure/reagent_dispensers/beerkeg, /turf/open/floor/wood, /area/station/maintenance/port/aft) -"dMt" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/camera/directional/east{ - c_tag = "Engineering Supermatter Port"; - network = list("ss13","engine") - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, -/obj/machinery/airalarm/directional/east, -/obj/effect/mapping_helpers/airalarm/engine_access, -/obj/effect/mapping_helpers/airalarm/link{ - chamber_id = "engine" - }, -/obj/effect/mapping_helpers/airalarm/tlv_no_checks, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "dMv" = ( /obj/machinery/holopad, /obj/structure/cable, @@ -10531,6 +10524,10 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/commons/locker) +"dTN" = ( +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/turf/closed/wall/r_wall, +/area/station/science/ordnance) "dTQ" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -12561,10 +12558,6 @@ /obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) -"eDd" = ( -/obj/machinery/air_sensor/engine_chamber, -/turf/open/floor/engine, -/area/station/engineering/supermatter) "eDC" = ( /obj/structure/table/wood, /obj/effect/spawner/random/entertainment/deck, @@ -14083,6 +14076,14 @@ /obj/effect/spawner/random/maintenance/three, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"fhz" = ( +/obj/structure/secure_safe/directional/north, +/obj/machinery/camera/directional/north{ + c_tag = "Chief Engineer's Office" + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/ce) "fhA" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -14191,6 +14192,19 @@ }, /turf/open/floor/iron/white/smooth_large, /area/station/medical/medbay/central) +"fiI" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/rack, +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 2 + }, +/obj/item/storage/briefcase/secure{ + pixel_x = 2; + pixel_y = -2 + }, +/turf/open/floor/iron/grimy, +/area/station/security/detectives_office) "fiK" = ( /obj/structure/table/glass, /obj/item/clothing/gloves/latex, @@ -14691,14 +14705,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/commons/fitness/recreation) -"fqC" = ( -/obj/structure/closet/secure_closet/engineering_chief, -/obj/machinery/airalarm/directional/east, -/obj/structure/cable, -/obj/item/storage/secure/briefcase, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/ce) "fqD" = ( /obj/structure/chair/stool/directional/south, /turf/open/floor/wood, @@ -15026,6 +15032,15 @@ }, /turf/open/floor/iron, /area/station/engineering/break_room) +"fze" = ( +/obj/structure/secure_safe/hos{ + pixel_x = 36; + pixel_y = 28 + }, +/obj/machinery/status_display/evac/directional/north, +/obj/structure/cable, +/turf/open/floor/carpet, +/area/station/command/heads_quarters/hos) "fzi" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 4 @@ -15809,14 +15824,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/range) -"fOn" = ( -/obj/item/storage/secure/safe/directional/north, -/obj/machinery/camera/directional/north{ - c_tag = "Chief Engineer's Office" - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/ce) "fOu" = ( /obj/effect/turf_decal/siding/white{ dir = 8 @@ -16572,6 +16579,17 @@ }, /turf/open/floor/iron, /area/station/service/hydroponics/garden) +"gfc" = ( +/obj/structure/table/wood, +/obj/machinery/light_switch/directional/west, +/obj/item/storage/briefcase/secure{ + pixel_x = -2; + pixel_y = 4 + }, +/obj/item/storage/lockbox/medal, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/wood, +/area/station/command/heads_quarters/captain/private) "gfe" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/table, @@ -18064,17 +18082,6 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) -"gHC" = ( -/obj/structure/table/wood, -/obj/machinery/light_switch/directional/west, -/obj/item/storage/secure/briefcase{ - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/storage/lockbox/medal, -/obj/structure/window/reinforced/spawner/directional/south, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain/private) "gHE" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -23130,10 +23137,6 @@ /obj/item/clothing/glasses/welding, /turf/open/floor/iron, /area/station/science/robotics/lab) -"iwH" = ( -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, -/turf/closed/wall/r_wall, -/area/station/science/ordnance) "iwL" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /obj/structure/disposalpipe/segment{ @@ -23599,6 +23602,13 @@ /obj/structure/reagent_dispensers/plumbed, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"iEs" = ( +/obj/structure/secure_safe/directional/south, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/commons/vacant_room/commissary) "iEv" = ( /obj/structure/closet, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -24873,6 +24883,19 @@ }, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) +"iYE" = ( +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/obj/effect/turf_decal/siding/purple{ + dir = 6 + }, +/obj/machinery/airalarm/directional/east, +/obj/effect/mapping_helpers/airalarm/mixingchamber_access, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "ordnanceburn" + }, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, +/turf/open/floor/iron/dark, +/area/station/science/ordnance) "iYG" = ( /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/tile/neutral{ @@ -26044,6 +26067,17 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) +"jtw" = ( +/obj/machinery/light/directional/south, +/obj/machinery/firealarm/directional/south, +/obj/structure/rack, +/obj/item/storage/briefcase/secure, +/obj/item/clothing/mask/cigarette/cigar, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "jtA" = ( /obj/structure/table/glass, /obj/effect/turf_decal/siding/white{ @@ -27271,17 +27305,6 @@ /obj/machinery/light/cold/directional/south, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"jNm" = ( -/obj/effect/landmark/blobstart, -/obj/machinery/camera/directional/north{ - c_tag = "Security - Evidence Storage" - }, -/obj/item/storage/secure/safe/directional/north{ - name = "evidence safe" - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/security/evidence) "jNo" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -27358,19 +27381,6 @@ /obj/effect/turf_decal/tile/purple, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"jOQ" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/rack, -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/storage/secure/briefcase{ - pixel_x = 2; - pixel_y = -2 - }, -/turf/open/floor/iron/grimy, -/area/station/security/detectives_office) "jOR" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, @@ -28962,13 +28972,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/science/ordnance/testlab) -"krP" = ( -/obj/item/storage/secure/safe/directional/south, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/commons/vacant_room/commissary) "ksg" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -29094,12 +29097,6 @@ }, /turf/open/floor/iron/dark, /area/station/ai_monitored/command/storage/satellite) -"ktY" = ( -/obj/item/storage/secure/safe/directional/north{ - name = "armory safe A" - }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) "kud" = ( /obj/structure/sign/warning/vacuum/external/directional/south, /obj/effect/turf_decal/stripes/line, @@ -29821,6 +29818,24 @@ /obj/structure/sign/poster/official/help_others/directional/south, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"kKk" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/camera/directional/east{ + c_tag = "Engineering Supermatter Port"; + network = list("ss13","engine") + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, +/obj/machinery/airalarm/directional/east, +/obj/effect/mapping_helpers/airalarm/engine_access, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "engine" + }, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "kKp" = ( /obj/structure/rack, /obj/item/gun/energy/laser/carbine/practice{ @@ -36829,6 +36844,25 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"nka" = ( +/obj/structure/safe, +/obj/item/storage/briefcase/secure/riches, +/obj/item/storage/backpack/duffelbag/syndie/hitman, +/obj/item/card/id/advanced/silver/reaper, +/obj/item/lazarus_injector, +/obj/item/gun/energy/disabler, +/obj/item/gun/ballistic/revolver/russian, +/obj/item/ammo_box/a357, +/obj/item/clothing/neck/stethoscope, +/obj/item/book{ + desc = "An undeniably handy book."; + icon_state = "bookknock"; + name = "\improper A Simpleton's Guide to Safe-cracking with Stethoscopes" + }, +/obj/effect/turf_decal/bot_white/left, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/ai_monitored/command/nuke_storage) "nkj" = ( /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ dir = 10 @@ -36852,10 +36886,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) -"nkA" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, -/turf/closed/wall/r_wall, -/area/station/science/ordnance) "nkG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, /obj/machinery/meter, @@ -36895,6 +36925,14 @@ /obj/structure/cable, /turf/open/floor/iron/white, /area/station/science/research) +"nlV" = ( +/obj/item/storage/briefcase/secure, +/obj/structure/table/wood, +/obj/item/folder/blue, +/obj/item/storage/briefcase/secure, +/obj/item/assembly/flash/handheld, +/turf/open/floor/wood, +/area/station/command/heads_quarters/hop) "nmf" = ( /obj/machinery/smartfridge, /obj/machinery/door/poddoor/shutters/preopen{ @@ -37311,6 +37349,12 @@ /obj/effect/turf_decal/bot, /turf/open/floor/wood, /area/station/service/theater) +"nsx" = ( +/obj/machinery/light_switch/directional/east, +/obj/structure/dresser, +/obj/structure/secure_safe/directional/north, +/turf/open/floor/wood, +/area/station/command/heads_quarters/captain/private) "nsA" = ( /turf/closed/wall, /area/station/science/ordnance/testlab) @@ -38248,6 +38292,14 @@ /obj/structure/easel, /turf/open/floor/plating, /area/station/maintenance/disposal) +"nIx" = ( +/obj/structure/closet/secure_closet/engineering_chief, +/obj/machinery/airalarm/directional/east, +/obj/structure/cable, +/obj/item/storage/briefcase/secure, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/ce) "nIP" = ( /obj/structure/table/glass, /obj/item/paper_bin{ @@ -38298,6 +38350,23 @@ }, /turf/open/floor/iron/dark, /area/station/security/lockers) +"nJA" = ( +/obj/machinery/door/airlock/research/glass/incinerator/ordmix_interior, +/obj/effect/mapping_helpers/airlock/locked, +/obj/machinery/airlock_controller/incinerator_ordmix{ + pixel_x = -24 + }, +/obj/machinery/button/ignition/incinerator/ordmix{ + pixel_x = 24; + pixel_y = -6 + }, +/obj/machinery/button/door/incinerator_vent_ordmix{ + pixel_x = 24; + pixel_y = 8 + }, +/obj/effect/mapping_helpers/airlock/access/all/science/ordnance, +/turf/open/floor/engine, +/area/station/science/ordnance) "nJG" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -39995,15 +40064,6 @@ }, /turf/open/floor/iron, /area/station/security/warden) -"ory" = ( -/obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ - desc = "A large briefcase with a digital locking system, and the Nanotrasen logo emblazoned on the sides."; - name = "\improper Nanotrasen-brand secure briefcase exhibit"; - pixel_y = 2 - }, -/turf/open/floor/carpet, -/area/station/command/corporate_showroom) "orT" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /turf/open/floor/iron/dark, @@ -40273,20 +40333,6 @@ }, /turf/closed/wall/r_wall, /area/station/engineering/atmos/storage/gas) -"ovz" = ( -/obj/structure/table/wood, -/obj/item/storage/secure/safe/directional/east, -/obj/machinery/computer/security/wooden_tv{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/machinery/button/door/directional/north{ - id = "detective_shutters"; - name = "detective's office shutters control"; - req_access = list("detective") - }, -/turf/open/floor/carpet, -/area/station/security/detectives_office) "ovK" = ( /obj/structure/closet/secure_closet/hop, /turf/open/floor/wood, @@ -40397,6 +40443,10 @@ /obj/item/storage/photo_album/chapel, /turf/open/floor/iron/grimy, /area/station/service/chapel/office) +"oxV" = ( +/obj/machinery/air_sensor/engine_chamber, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "oxW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/stripes/line{ @@ -41131,15 +41181,6 @@ }, /turf/open/floor/iron, /area/station/security/brig) -"oLL" = ( -/obj/item/storage/secure/safe/hos{ - pixel_x = 36; - pixel_y = 28 - }, -/obj/machinery/status_display/evac/directional/north, -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/hos) "oLS" = ( /turf/closed/wall/r_wall, /area/station/science/ordnance/testlab) @@ -41665,20 +41706,6 @@ /obj/machinery/telecomms/server/presets/science, /turf/open/floor/circuit/telecomms/mainframe, /area/station/tcommsat/server) -"oXv" = ( -/obj/structure/rack, -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/storage/secure/briefcase{ - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/taperecorder, -/obj/item/clothing/glasses/sunglasses, -/turf/open/floor/wood, -/area/station/service/lawoffice) "oXJ" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -41783,6 +41810,17 @@ }, /turf/open/floor/engine/cult, /area/station/service/library) +"oZn" = ( +/obj/effect/landmark/blobstart, +/obj/machinery/camera/directional/north{ + c_tag = "Security - Evidence Storage" + }, +/obj/structure/secure_safe/directional/north{ + name = "evidence safe" + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/security/evidence) "oZs" = ( /obj/structure/bed/medical/emergency{ dir = 4 @@ -42313,6 +42351,20 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) +"pjK" = ( +/obj/structure/table/wood, +/obj/structure/secure_safe/directional/east, +/obj/machinery/computer/security/wooden_tv{ + pixel_x = 3; + pixel_y = 2 + }, +/obj/machinery/button/door/directional/north{ + id = "detective_shutters"; + name = "detective's office shutters control"; + req_access = list("detective") + }, +/turf/open/floor/carpet, +/area/station/security/detectives_office) "pjS" = ( /obj/machinery/vending/cigarette, /obj/structure/extinguisher_cabinet/directional/east, @@ -43878,17 +43930,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/research) -"pLv" = ( -/obj/machinery/light/directional/south, -/obj/machinery/firealarm/directional/south, -/obj/structure/rack, -/obj/item/storage/secure/briefcase, -/obj/item/clothing/mask/cigarette/cigar, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) "pLz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -47035,6 +47076,15 @@ }, /turf/open/floor/iron, /area/station/commons/locker) +"qRs" = ( +/obj/structure/table/wood, +/obj/item/storage/briefcase/secure{ + desc = "A large briefcase with a digital locking system, and the Nanotrasen logo emblazoned on the sides."; + name = "\improper Nanotrasen-brand secure briefcase exhibit"; + pixel_y = 2 + }, +/turf/open/floor/carpet, +/area/station/command/corporate_showroom) "qRz" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/effect/spawner/random/trash/janitor_supplies, @@ -48806,6 +48856,18 @@ /obj/structure/cable, /turf/open/floor/plating/airless, /area/station/solars/starboard/aft) +"rxN" = ( +/obj/item/folder/white{ + pixel_x = 4; + pixel_y = -3 + }, +/obj/structure/table/glass, +/obj/structure/secure_safe/caps_spare/directional/west, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "rxP" = ( /obj/machinery/computer/security, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -49855,14 +49917,6 @@ "rQw" = ( /turf/open/floor/plating/airless, /area/station/solars/starboard/fore) -"rQz" = ( -/obj/item/storage/secure/briefcase, -/obj/structure/table/wood, -/obj/item/folder/blue, -/obj/item/storage/secure/briefcase, -/obj/item/assembly/flash/handheld, -/turf/open/floor/wood, -/area/station/command/heads_quarters/hop) "rQK" = ( /obj/machinery/netpod, /obj/effect/decal/cleanable/robot_debris, @@ -52612,23 +52666,6 @@ /obj/machinery/light_switch/directional/north, /turf/open/floor/iron/white, /area/station/science/explab) -"sPH" = ( -/obj/machinery/door/airlock/research/glass/incinerator/ordmix_interior, -/obj/effect/mapping_helpers/airlock/locked, -/obj/machinery/airlock_controller/incinerator_ordmix{ - pixel_x = -24 - }, -/obj/machinery/button/ignition/incinerator/ordmix{ - pixel_x = 24; - pixel_y = -6 - }, -/obj/machinery/button/door/incinerator_vent_ordmix{ - pixel_x = 24; - pixel_y = 8 - }, -/obj/effect/mapping_helpers/airlock/access/all/science/ordnance, -/turf/open/floor/engine, -/area/station/science/ordnance) "sPV" = ( /obj/structure/closet/secure_closet/captains, /obj/structure/window/reinforced/spawner/directional/north, @@ -54769,19 +54806,6 @@ /obj/effect/landmark/start/depsec/supply, /turf/open/floor/iron, /area/station/security/checkpoint/supply) -"tBV" = ( -/obj/machinery/recharger{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/storage/secure/safe/directional/east, -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - pixel_x = -12; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/station/command/heads_quarters/hop) "tCC" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -56841,6 +56865,22 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"uno" = ( +/obj/structure/table/glass, +/obj/machinery/light_switch/directional/north, +/obj/item/storage/briefcase/secure{ + pixel_x = 3; + pixel_y = 5 + }, +/obj/item/storage/medkit/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/effect/turf_decal/tile/blue/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/station/command/heads_quarters/cmo) "unt" = ( /obj/item/radio/intercom/directional/south, /obj/effect/turf_decal/tile/yellow/anticorner/contrasted, @@ -57271,19 +57311,6 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron, /area/station/service/bar) -"utV" = ( -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, -/obj/effect/turf_decal/siding/purple{ - dir = 6 - }, -/obj/machinery/airalarm/directional/east, -/obj/effect/mapping_helpers/airalarm/mixingchamber_access, -/obj/effect/mapping_helpers/airalarm/link{ - chamber_id = "ordnanceburn" - }, -/obj/effect/mapping_helpers/airalarm/tlv_no_checks, -/turf/open/floor/iron/dark, -/area/station/science/ordnance) "uuc" = ( /obj/structure/chair/pew/left, /turf/open/floor/iron/chapel{ @@ -61177,21 +61204,6 @@ /obj/structure/lattice, /turf/open/space/basic, /area/space/nearstation) -"vIL" = ( -/obj/effect/turf_decal/siding/purple{ - dir = 8 - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1 - }, -/obj/effect/mapping_helpers/airalarm/mixingchamber_access, -/obj/machinery/airalarm/directional/west, -/obj/effect/mapping_helpers/airalarm/link{ - chamber_id = "ordnancefreezer" - }, -/obj/effect/mapping_helpers/airalarm/tlv_no_checks, -/turf/open/floor/iron/dark, -/area/station/science/ordnance) "vIM" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -64313,25 +64325,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/department/engine) -"wOQ" = ( -/obj/structure/safe, -/obj/item/storage/secure/briefcase/riches, -/obj/item/storage/backpack/duffelbag/syndie/hitman, -/obj/item/card/id/advanced/silver/reaper, -/obj/item/lazarus_injector, -/obj/item/gun/energy/disabler, -/obj/item/gun/ballistic/revolver/russian, -/obj/item/ammo_box/a357, -/obj/item/clothing/neck/stethoscope, -/obj/item/book{ - desc = "An undeniably handy book."; - icon_state = "bookknock"; - name = "\improper A Simpleton's Guide to Safe-cracking with Stethoscopes" - }, -/obj/effect/turf_decal/bot_white/left, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) "wOR" = ( /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -65318,6 +65311,12 @@ /obj/effect/mapping_helpers/airlock/access/all/medical/cmo, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) +"xgh" = ( +/obj/structure/secure_safe/directional/north{ + name = "armory safe A" + }, +/turf/open/floor/iron/dark, +/area/station/ai_monitored/security/armory) "xgi" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/bot, @@ -66984,18 +66983,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) -"xJl" = ( -/obj/item/folder/white{ - pixel_x = 4; - pixel_y = -3 - }, -/obj/structure/table/glass, -/obj/item/storage/secure/safe/caps_spare/directional/west, -/obj/effect/turf_decal/tile/green/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) "xJv" = ( /obj/machinery/light/directional/north, /turf/open/floor/iron/recharge_floor, @@ -67432,6 +67419,15 @@ "xTw" = ( /turf/closed/wall/r_wall, /area/station/medical/medbay/central) +"xTH" = ( +/obj/structure/table, +/obj/item/storage/briefcase/secure{ + pixel_x = -7; + pixel_y = 12 + }, +/obj/effect/spawner/random/engineering/flashlight, +/turf/open/floor/iron/dark, +/area/station/security/office) "xTO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -67807,6 +67803,10 @@ }, /turf/open/floor/plating, /area/station/maintenance/fore/lesser) +"xYZ" = ( +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, +/turf/closed/wall/r_wall, +/area/station/science/ordnance) "xZb" = ( /obj/effect/spawner/random/structure/grille, /turf/open/floor/plating, @@ -90227,7 +90227,7 @@ rlU vis mCi ixT -wOQ +nka rlU aaa aEH @@ -92051,7 +92051,7 @@ wvo xCl nMz pJR -rQz +nlV kfA rWH oOE @@ -92086,7 +92086,7 @@ ePX svQ duu pKP -aWR +uno rQd cJm jGw @@ -92306,9 +92306,9 @@ oIa cpn koa srP -krP +iEs pJR -tBV +cMc qAA uFQ eIy @@ -94580,7 +94580,7 @@ aaa aaa aaa rJB -jNm +oZn dxe wTO xxZ @@ -94619,7 +94619,7 @@ tKN aaf dsQ mZL -xJl +rxN aGQ acf hmq @@ -94880,7 +94880,7 @@ nxO qXF qXF aMB -pLv +jtw duI jnt cdC @@ -94896,7 +94896,7 @@ jzN sYh qeZ nBs -ory +qRs vyi nNY htd @@ -95608,7 +95608,7 @@ aaa aaa cTk aeq -ktY +xgh tJE kVU tJE @@ -98479,7 +98479,7 @@ ogL tyY aPs cUX -gHC +gfc nOq xDa vwP @@ -98697,7 +98697,7 @@ kxA xXh ooG wxj -dth +xTH ipz nOv dgS @@ -99047,7 +99047,7 @@ raK dOA gyQ qSP -vIL +dIW iTc qfQ cLk @@ -99220,7 +99220,7 @@ pBG sOZ uWo jMy -jOQ +fiI aHr mhA xNo @@ -99741,7 +99741,7 @@ bHN ilh ilh ilh -oXv +ddy fbs itp soX @@ -100013,7 +100013,7 @@ wEG htd qBC syo -aEP +nsx cRU oRn sjS @@ -100080,7 +100080,7 @@ huj fhi xEU iqx -nkA +xYZ gil deY oet @@ -100248,7 +100248,7 @@ lAM dDe lAM sWV -ovz +pjK dbj jyQ lGj @@ -100337,7 +100337,7 @@ fhi fhi fhi twy -sPH +nJA nZL bEv cgP @@ -100593,8 +100593,8 @@ jwj ujk jvo aHH -utV -iwH +iYE +dTN dEF pCa cOT @@ -101515,7 +101515,7 @@ aaa rrt lMJ mxn -oLL +fze gTt sdu fad @@ -108233,7 +108233,7 @@ vHs iBm uXd sqE -fOn +fhz dJP bfO pCt @@ -108751,7 +108751,7 @@ qtm fyJ qVD cuc -fqC +nIx tUw rHq peX @@ -110538,7 +110538,7 @@ otn dRN wdB oET -dMt +kKk qLw vQt qLw @@ -111565,7 +111565,7 @@ wBE oNs eyD qZB -eDd +oxV hRl jWE auc diff --git a/_maps/map_files/NSVBlueshift/Blueshift.dmm b/_maps/map_files/NSVBlueshift/Blueshift.dmm index 04026b4e3f6..6a2d5d1ab47 100644 --- a/_maps/map_files/NSVBlueshift/Blueshift.dmm +++ b/_maps/map_files/NSVBlueshift/Blueshift.dmm @@ -2683,7 +2683,7 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "aBz" = ( -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /turf/open/floor/carpet/green, /area/station/command/heads_quarters/nt_rep) "aBB" = ( @@ -14473,7 +14473,7 @@ /obj/item/storage/box/ids{ pixel_y = 6 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/turf_decal/siding/thinplating_new{ dir = 5 }, @@ -20549,7 +20549,7 @@ /area/station/maintenance/department/crew_quarters/bar) "dTa" = ( /obj/structure/safe, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/storage/backpack/duffelbag/syndie/hitman, /obj/item/card/id/advanced/silver/reaper, /obj/item/lazarus_injector, @@ -28273,7 +28273,7 @@ pixel_x = -3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /turf/open/floor/wood, /area/station/security/detectives_office) "fpz" = ( @@ -47074,7 +47074,7 @@ "iZC" = ( /obj/structure/table/wood, /obj/structure/window/reinforced/spawner/directional/west, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 5; pixel_y = 5 }, @@ -55618,7 +55618,7 @@ /area/station/maintenance/abandon_wrestle) "kBo" = ( /obj/structure/closet/secure_closet/personal, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/turf_decal/bot, /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) @@ -63383,7 +63383,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/clothing/glasses/sunglasses/big{ pixel_x = 3; pixel_y = 3 @@ -73024,7 +73024,7 @@ /area/station/science) "nWI" = ( /obj/structure/table/reinforced, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_y = 8 }, /obj/item/flashlight/seclite, @@ -73562,7 +73562,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, @@ -77630,7 +77630,7 @@ /obj/structure/closet/secure_closet/contraband/heads, /obj/effect/turf_decal/bot, /obj/item/storage/box/ids, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/machinery/airalarm/directional/south, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -82808,7 +82808,7 @@ /area/station/security/prison) "pQs" = ( /obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_y = 5 }, /obj/item/storage/lockbox/loyalty, @@ -82893,7 +82893,7 @@ req_access = list("command") }, /obj/item/radio/intercom/directional/south, -/obj/item/storage/secure/safe/caps_spare{ +/obj/structure/secure_safe/caps_spare{ pixel_x = 5; pixel_y = -37 }, @@ -86489,7 +86489,7 @@ /turf/open/floor/iron/dark, /area/station/maintenance/solars/starboard/fore) "qyn" = ( -/obj/item/storage/secure/safe{ +/obj/structure/secure_safe{ pixel_x = 32 }, /obj/structure/chair/comfy/brown, @@ -98729,7 +98729,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /turf/open/floor/carpet, /area/station/service/library/printer) "sPB" = ( @@ -106625,7 +106625,7 @@ pixel_x = -3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/decal/cleanable/dirt{ icon_state = "dirt-flat-1" }, @@ -119039,7 +119039,7 @@ /turf/open/floor/iron/white, /area/station/science) "wDr" = ( -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/structure/cable, /obj/machinery/light/directional/east, /obj/machinery/camera{ @@ -121515,7 +121515,7 @@ /area/station/hallway/primary/upper) "xdl" = ( /obj/machinery/photocopier, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/structure/disposalpipe/segment{ dir = 10 }, diff --git a/_maps/map_files/NorthStar/north_star.dmm b/_maps/map_files/NorthStar/north_star.dmm index 2f9fc46b231..188d6cf2b4b 100644 --- a/_maps/map_files/NorthStar/north_star.dmm +++ b/_maps/map_files/NorthStar/north_star.dmm @@ -346,6 +346,11 @@ /obj/item/flashlight/flare/candle, /turf/open/floor/carpet/orange, /area/station/service/chapel/office) +"adE" = ( +/obj/structure/secure_safe/directional/east, +/obj/structure/cable, +/turf/open/floor/iron/grimy, +/area/station/security/detectives_office) "adL" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/engineering/tank, @@ -7561,14 +7566,6 @@ }, /turf/open/floor/catwalk_floor, /area/station/maintenance/floor1/port) -"bSJ" = ( -/obj/structure/rack, -/obj/item/storage/secure/safe/directional/east, -/obj/effect/turf_decal/tile/red/fourcorners, -/obj/effect/spawner/random/armory/bulletproof_armor, -/obj/effect/spawner/random/armory/bulletproof_helmet, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) "bSR" = ( /obj/structure/closet/crate/freezer, /obj/effect/spawner/random/medical/memeorgans, @@ -19309,6 +19306,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron, /area/station/cargo/lobby) +"fbT" = ( +/obj/structure/rack, +/obj/structure/secure_safe/directional/east, +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/spawner/random/armory/bulletproof_armor, +/obj/effect/spawner/random/armory/bulletproof_helmet, +/turf/open/floor/iron/dark, +/area/station/ai_monitored/security/armory) "fbV" = ( /obj/machinery/door/firedoor, /obj/structure/cable, @@ -23365,12 +23370,6 @@ /obj/structure/sign/poster/official/random/directional/south, /turf/open/floor/iron, /area/station/hallway/floor3/aft) -"ghQ" = ( -/obj/structure/table/wood, -/obj/item/storage/secure/briefcase, -/obj/machinery/newscaster/directional/north, -/turf/open/floor/carpet, -/area/station/commons/vacant_room/office) "ghZ" = ( /obj/structure/table, /obj/item/inspector{ @@ -28194,6 +28193,19 @@ /obj/machinery/light/red/dim/directional/west, /turf/open/floor/catwalk_floor, /area/station/maintenance/floor2/starboard) +"hvs" = ( +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Antechamber" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/access/any/command/minisat, +/obj/effect/mapping_helpers/airlock/access/any/command/general, +/obj/structure/cable/layer3, +/turf/open/floor/iron/dark, +/area/station/ai_monitored/turret_protected/aisat/service) "hvv" = ( /obj/effect/mapping_helpers/broken_floor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -29724,6 +29736,17 @@ /obj/machinery/light/floor, /turf/open/floor/iron, /area/station/cargo/storage) +"hQj" = ( +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Access" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/command/minisat, +/obj/effect/mapping_helpers/airlock/access/any/command/general, +/turf/open/floor/iron/dark, +/area/station/ai_monitored/turret_protected/aisat/hallway) "hQl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/chair{ @@ -42077,16 +42100,6 @@ /obj/machinery/status_display/evac/directional/west, /turf/open/floor/iron, /area/station/engineering/atmos/hfr_room) -"kZi" = ( -/obj/structure/rack, -/obj/item/storage/secure/briefcase, -/obj/item/restraints/handcuffs, -/obj/machinery/light/small/directional/south, -/obj/machinery/camera/directional/east{ - c_tag = "Detective's Backroom" - }, -/turf/open/floor/iron/grimy, -/area/station/security/detectives_office) "kZl" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -52910,6 +52923,11 @@ dir = 4 }, /area/station/hallway/floor3/aft) +"nIU" = ( +/obj/structure/table, +/obj/item/storage/briefcase/secure, +/turf/open/floor/iron/dark, +/area/station/command/teleporter) "nJb" = ( /obj/machinery/atmospherics/components/unary/thermomachine/heater{ dir = 1; @@ -53647,6 +53665,23 @@ /obj/effect/decal/cleanable/blood/old, /turf/open/floor/pod/light, /area/station/maintenance/floor1/starboard/fore) +"nUl" = ( +/obj/structure/rack, +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 2 + }, +/obj/item/storage/briefcase/secure{ + pixel_x = 2; + pixel_y = -2 + }, +/obj/item/clothing/glasses/sunglasses, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 8 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/wood/parquet, +/area/station/service/lawoffice) "nUp" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -57410,11 +57445,6 @@ /obj/structure/cable/multilayer/connected, /turf/open/floor/iron/dark, /area/station/ai_monitored/turret_protected/aisat_interior) -"oTF" = ( -/obj/item/storage/secure/safe/directional/east, -/obj/structure/cable, -/turf/open/floor/iron/grimy, -/area/station/security/detectives_office) "oTG" = ( /obj/structure/table, /obj/item/storage/fancy/donut_box{ @@ -58035,6 +58065,11 @@ }, /turf/open/floor/pod/dark, /area/station/maintenance/floor2/port/fore) +"pdN" = ( +/obj/structure/secure_safe/caps_spare/directional/south, +/obj/effect/turf_decal/tile/purple/fourcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "pdO" = ( /obj/effect/turf_decal/siding/wood/end{ dir = 4 @@ -64120,6 +64155,12 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/catwalk_floor, /area/station/maintenance/floor1/port/fore) +"qIP" = ( +/obj/structure/table/wood, +/obj/item/storage/briefcase/secure, +/obj/machinery/newscaster/directional/north, +/turf/open/floor/carpet, +/area/station/commons/vacant_room/office) "qIT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -64951,6 +64992,14 @@ /obj/effect/spawner/random/engineering/tool, /turf/open/floor/pod/dark, /area/station/maintenance/floor2/starboard/aft) +"qVp" = ( +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Access" + }, +/obj/effect/mapping_helpers/airlock/access/any/command/minisat, +/obj/effect/mapping_helpers/airlock/access/any/command/general, +/turf/open/floor/iron/dark, +/area/station/ai_monitored/turret_protected/aisat/hallway) "qVv" = ( /obj/structure/chair/comfy/brown{ dir = 8 @@ -66956,23 +67005,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/pod/light, /area/station/maintenance/floor2/port/aft) -"rxd" = ( -/obj/structure/rack, -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/storage/secure/briefcase{ - pixel_x = 2; - pixel_y = -2 - }, -/obj/item/clothing/glasses/sunglasses, -/obj/effect/turf_decal/siding/wood/corner{ - dir = 8 - }, -/obj/machinery/light/directional/north, -/turf/open/floor/wood/parquet, -/area/station/service/lawoffice) "rxe" = ( /obj/effect/decal/cleanable/blood/old, /obj/structure/chair{ @@ -70581,17 +70613,6 @@ /obj/structure/cable, /turf/open/misc/dirt/jungle, /area/station/service/hydroponics/garden/abandoned) -"szj" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Access" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/any/command/minisat, -/obj/effect/mapping_helpers/airlock/access/any/command/general, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) "szl" = ( /obj/machinery/computer/slot_machine, /obj/effect/decal/cleanable/dirt, @@ -71454,19 +71475,6 @@ /obj/machinery/light/cold/directional/east, /turf/open/floor/iron/dark/textured, /area/station/medical/office) -"sKh" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Antechamber" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/any/command/minisat, -/obj/effect/mapping_helpers/airlock/access/any/command/general, -/obj/structure/cable/layer3, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) "sKm" = ( /turf/closed/wall, /area/station/medical/virology/isolation) @@ -72430,11 +72438,6 @@ }, /turf/open/floor/wood, /area/station/commons/dorms/apartment2) -"sXl" = ( -/obj/item/storage/secure/safe/caps_spare/directional/south, -/obj/effect/turf_decal/tile/purple/fourcorners, -/turf/open/floor/iron/dark, -/area/station/command/bridge) "sXp" = ( /obj/structure/rack, /obj/item/radio/off{ @@ -73368,6 +73371,10 @@ /obj/effect/spawner/random/engineering/flashlight, /turf/open/floor/pod/dark, /area/station/maintenance/floor1/starboard/aft) +"tjB" = ( +/obj/structure/secure_safe/directional/east, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/hop) "tjC" = ( /obj/structure/sign/poster/official/random/directional/north, /turf/open/floor/iron/dark/textured, @@ -74735,11 +74742,6 @@ /obj/effect/mob_spawn/corpse/human/charredskeleton, /turf/open/floor/iron, /area/station/maintenance/floor4/starboard) -"tBe" = ( -/obj/structure/table, -/obj/item/storage/secure/briefcase, -/turf/open/floor/iron/dark, -/area/station/command/teleporter) "tBh" = ( /obj/machinery/atmospherics/pipe/smart/simple/green/visible{ dir = 4 @@ -76203,6 +76205,16 @@ /obj/structure/cable, /turf/open/floor/pod/light, /area/station/maintenance/floor1/starboard/fore) +"tVx" = ( +/obj/structure/rack, +/obj/item/storage/briefcase/secure, +/obj/item/restraints/handcuffs, +/obj/machinery/light/small/directional/south, +/obj/machinery/camera/directional/east{ + c_tag = "Detective's Backroom" + }, +/turf/open/floor/iron/grimy, +/area/station/security/detectives_office) "tVz" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced/spawner/directional/north, @@ -82258,10 +82270,6 @@ /obj/machinery/duct, /turf/open/floor/wood/tile, /area/station/command/heads_quarters/captain/private) -"vyv" = ( -/obj/item/storage/secure/safe/directional/south, -/turf/open/floor/mineral/plastitanium, -/area/station/maintenance/floor2/starboard/aft) "vyz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -87737,14 +87745,6 @@ /obj/structure/reagent_dispensers/water_cooler, /turf/open/floor/iron/dark, /area/station/engineering/lobby) -"wRi" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Access" - }, -/obj/effect/mapping_helpers/airlock/access/any/command/minisat, -/obj/effect/mapping_helpers/airlock/access/any/command/general, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) "wRn" = ( /obj/effect/turf_decal/tile/yellow/anticorner/contrasted, /obj/effect/decal/cleanable/oil, @@ -92311,10 +92311,6 @@ }, /turf/open/misc/beach/sand, /area/station/hallway/floor2/fore) -"yaY" = ( -/obj/item/storage/secure/safe/directional/east, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/hop) "yba" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -92795,6 +92791,10 @@ "yhZ" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/service/library/printer) +"yij" = ( +/obj/structure/secure_safe/directional/south, +/turf/open/floor/mineral/plastitanium, +/area/station/maintenance/floor2/starboard/aft) "yil" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -202144,7 +202144,7 @@ mPw sQa spr aOa -vyv +yij spr pxw edO @@ -203705,7 +203705,7 @@ xAu crK fsJ rQV -szj +hQj rQV tPm tPm @@ -204731,7 +204731,7 @@ uZF cfH wns kOk -wRi +qVp wmw bXz sZo @@ -263851,7 +263851,7 @@ oRz pfC nqr lRY -ghQ +qIP kux joL tmq @@ -308052,7 +308052,7 @@ rrX shu hwM ukK -sXl +pdN uIx oad uxW @@ -313456,7 +313456,7 @@ uqc rZV pld gLb -tBe +nIU wvq uWl gIl @@ -315510,7 +315510,7 @@ cSF aEm oAe mxO -kZi +tVx mau eae mGT @@ -315766,7 +315766,7 @@ iUT nyL xSQ dzE -oTF +adE mau mau mau @@ -318831,7 +318831,7 @@ tlZ oaU nPE qPv -yaY +tjB wqP iNA obK @@ -322712,7 +322712,7 @@ dPH vuf jjA gSD -bSJ +fbT iaO gMo jOc @@ -325002,7 +325002,7 @@ hre shW ofD vxy -rxd +nUl oWC rbR ciU @@ -334772,7 +334772,7 @@ kZZ kum kum kum -sKh +hvs fzr iBc jPj diff --git a/_maps/map_files/VoidRaptor/VoidRaptor.dmm b/_maps/map_files/VoidRaptor/VoidRaptor.dmm index 9c40f1af9ff..6d159c3afc7 100644 --- a/_maps/map_files/VoidRaptor/VoidRaptor.dmm +++ b/_maps/map_files/VoidRaptor/VoidRaptor.dmm @@ -7160,7 +7160,7 @@ /turf/closed/wall, /area/station/maintenance/port/greater) "chg" = ( -/obj/item/storage/secure/safe/caps_spare{ +/obj/structure/secure_safe/caps_spare{ pixel_x = -24 }, /obj/structure/table/reinforced/rglass, @@ -8357,7 +8357,7 @@ "cAH" = ( /obj/structure/bed/double, /obj/item/bedsheet/centcom/double, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/machinery/newscaster/directional/south, /turf/open/floor/carpet/green, /area/station/command/heads_quarters/nt_rep) @@ -13308,7 +13308,7 @@ /turf/open/floor/iron/white, /area/station/science/explab) "dTw" = ( -/obj/item/storage/secure/safe/directional/north, +/obj/structure/secure_safe/directional/north, /obj/structure/table/wood/fancy/purple, /obj/item/folder/syndicate{ desc = "A folder stamped \"Top Secret - Property of Nanotrasen.\""; @@ -17121,7 +17121,7 @@ /obj/effect/turf_decal/trimline/neutral/filled/line, /obj/effect/turf_decal/trimline/neutral/filled/line, /obj/effect/turf_decal/trimline/neutral/filled/line, -/obj/item/storage/secure/safe/directional/south, +/obj/structure/secure_safe/directional/south, /obj/structure/extinguisher_cabinet/directional/south{ pixel_x = 16 }, @@ -22707,7 +22707,7 @@ /area/station/security/detectives_office) "gDz" = ( /obj/structure/table/reinforced/rglass, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/radio/headset/headset_com{ pixel_x = -16 }, @@ -25793,7 +25793,7 @@ "hwG" = ( /obj/structure/bed/double, /obj/item/bedsheet/cmo/double, -/obj/item/storage/secure/safe/directional/north, +/obj/structure/secure_safe/directional/north, /turf/open/floor/carpet/blue, /area/station/command/heads_quarters/cmo) "hwL" = ( @@ -27224,7 +27224,7 @@ }, /area/station/hallway/primary/aft) "hRn" = ( -/obj/item/storage/secure/safe/directional/west, +/obj/structure/secure_safe/directional/west, /obj/structure/dresser, /obj/item/toy/figure/ce{ pixel_y = 14 @@ -29479,7 +29479,7 @@ pixel_x = -5 }, /obj/structure/table/wood, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/item/lighter{ color = "#d4af37"; desc = "Cap's Lucky Lighter. Given to him by NT staff for being the most capable person to secure the disk."; @@ -31274,7 +31274,7 @@ /obj/effect/turf_decal/tile/dark_red/half{ dir = 4 }, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/effect/turf_decal/delivery, /obj/effect/spawner/random/armory/bulletproof_armor, /turf/open/floor/engine, @@ -41628,7 +41628,7 @@ /area/station/commons/storage/primary) "lKw" = ( /obj/structure/table/reinforced, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_y = 4 }, /obj/item/taperecorder{ @@ -47448,7 +47448,7 @@ /obj/item/megaphone{ name = "The Judge's Megaphone" }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/turf_decal/bot, /turf/open/floor/wood/large, /area/station/security/courtroom) @@ -47558,7 +47558,7 @@ c_tag = "Bridge - Head of Personnel's Office"; name = "command camera" }, -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/effect/landmark/start/head_of_personnel, /obj/machinery/button/door/directional/east{ id = "hopdoor"; @@ -51433,7 +51433,7 @@ "ovo" = ( /obj/structure/closet/secure_closet/nanotrasen_consultant/station, /obj/item/clothing/accessory/medal/gold/ordom, -/obj/item/storage/secure/briefcase/white, +/obj/item/storage/briefcase/secure/white, /obj/item/clothing/gloves/combat/naval, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/stripes/line{ @@ -53424,7 +53424,7 @@ /turf/closed/wall, /area/station/cargo/miningdock) "oXL" = ( -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/structure/dresser, /obj/item/toy/figure/captain{ pixel_y = 12 @@ -62879,7 +62879,7 @@ pixel_x = -3; pixel_y = 2 }, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 2; pixel_y = -2 }, @@ -68747,7 +68747,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/obj/item/storage/secure/safe/hos{ +/obj/structure/secure_safe/hos{ pixel_x = 32 }, /obj/effect/landmark/start/head_of_security, @@ -78684,7 +78684,7 @@ "vOd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/wood, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/grenade/smokebomb, /obj/effect/turf_decal/siding/wood/end{ dir = 8 @@ -79762,7 +79762,7 @@ /turf/closed/wall, /area/station/commons/fitness/recreation/entertainment) "wcq" = ( -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 1; pixel_y = 4 }, @@ -82838,7 +82838,7 @@ dir = 10 }, /obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = 5; pixel_y = 5 }, diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index 3e7621f0287..7698a0f8dea 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -183,6 +183,17 @@ /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron, /area/centcom/central_command_areas/evacuation) +"aR" = ( +/obj/structure/table/wood, +/obj/machinery/computer/security/wooden_tv, +/obj/structure/secure_safe{ + pixel_x = 32; + pixel_y = 24 + }, +/obj/machinery/status_display/ai/directional/east, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/admin) "aS" = ( /obj/item/kirbyplants/organic/plant22, /obj/machinery/power/apc/auto_name/directional/south, @@ -249,6 +260,28 @@ /obj/effect/turf_decal/bot, /turf/open/floor/iron, /area/centcom/central_command_areas/fore) +"bf" = ( +/obj/structure/closet/secure_closet/freezer/meat/open, +/obj/item/food/meat/slab/bear, +/obj/item/food/meat/slab/bear, +/obj/item/food/meat/slab/bear, +/obj/item/food/meat/slab/bear, +/obj/item/food/meat/slab/goliath, +/obj/item/food/meat/slab/goliath, +/obj/item/food/meat/slab/goliath, +/obj/item/food/meat/slab/goliath, +/obj/item/food/meat/slab/xeno, +/obj/item/food/meat/slab/xeno, +/obj/item/food/meat/slab/xeno, +/obj/item/food/meat/slab/xeno, +/obj/item/food/spaghetti/boiledspaghetti, +/obj/item/food/spaghetti/boiledspaghetti, +/obj/item/food/meat/rawcutlet, +/obj/item/food/meat/rawcutlet, +/obj/item/food/meat/rawcutlet, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/tdome/observation) "bg" = ( /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -421,18 +454,6 @@ /obj/effect/light_emitter/thunderdome, /turf/open/floor/iron, /area/centcom/tdome/arena) -"cb" = ( -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/secure/briefcase, -/obj/structure/table/wood, -/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/briefing) "cd" = ( /obj/structure/sink/directional/east, /obj/structure/mirror/directional/west, @@ -1386,17 +1407,6 @@ }, /turf/open/floor/iron/white, /area/centcom/tdome/observation) -"gA" = ( -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/secure/briefcase, -/obj/structure/table/wood, -/obj/structure/noticeboard/directional/east, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/courtroom) "gC" = ( /obj/machinery/door/window/brigdoor{ base_state = "rightsecure"; @@ -3231,19 +3241,6 @@ }, /turf/open/floor/iron, /area/centcom/central_command_areas/supply) -"oV" = ( -/obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/storage/lockbox/medal, -/obj/machinery/newscaster{ - pixel_x = 32 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/admin) "oW" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/bush/sparsegrass/style_random, @@ -3359,6 +3356,12 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/admin) +"pA" = ( +/obj/structure/table/reinforced, +/obj/item/storage/briefcase/secure, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/briefing) "pB" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -3645,6 +3648,16 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, /area/centcom/central_command_areas/supplypod/loading/ert) +"qH" = ( +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/storage/briefcase/secure, +/obj/structure/table/wood, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/courtroom) "qI" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -6501,6 +6514,16 @@ }, /turf/open/floor/iron, /area/centcom/central_command_areas/control) +"De" = ( +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/storage/briefcase/secure, +/obj/structure/table/wood, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/tdome/administration) "Dg" = ( /obj/machinery/light/floor, /turf/open/floor/iron/white, @@ -6998,6 +7021,19 @@ /obj/effect/light_emitter/thunderdome, /turf/closed/indestructible/fakeglass, /area/centcom/tdome/observation) +"Gc" = ( +/obj/structure/table/wood, +/obj/item/storage/briefcase/secure{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/storage/lockbox/medal, +/obj/machinery/newscaster{ + pixel_x = 32 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/admin) "Gf" = ( /obj/machinery/firealarm/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -7291,6 +7327,18 @@ /obj/structure/closet/secure_closet/quartermaster, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/supply) +"HX" = ( +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/storage/briefcase/secure, +/obj/structure/table/wood, +/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/briefing) "HY" = ( /obj/machinery/photocopier, /obj/machinery/button/door/indestructible{ @@ -7529,12 +7577,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/centcom/tdome/observation) -"JW" = ( -/obj/structure/table/reinforced, -/obj/item/storage/secure/briefcase, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/briefing) "Kd" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /obj/effect/turf_decal/tile/yellow/opposingcorners{ @@ -8028,6 +8070,16 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/centcom/central_command_areas/prison) +"MB" = ( +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/storage/briefcase/secure, +/obj/structure/table/wood, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/admin) "MC" = ( /obj/structure/flora/grass/jungle/b, /obj/effect/decal/cleanable/garbage{ @@ -9272,16 +9324,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron, /area/centcom/central_command_areas/supplypod/loading/two) -"Sg" = ( -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/secure/briefcase, -/obj/structure/table/wood, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/tdome/administration) "Sh" = ( /obj/structure/table/reinforced, /obj/item/mod/control/pre_equipped/corporate{ @@ -9337,28 +9379,6 @@ }, /turf/open/floor/iron, /area/centcom/central_command_areas/armory) -"St" = ( -/obj/structure/closet/secure_closet/freezer/meat/open, -/obj/item/food/meat/slab/bear, -/obj/item/food/meat/slab/bear, -/obj/item/food/meat/slab/bear, -/obj/item/food/meat/slab/bear, -/obj/item/food/meat/slab/goliath, -/obj/item/food/meat/slab/goliath, -/obj/item/food/meat/slab/goliath, -/obj/item/food/meat/slab/goliath, -/obj/item/food/meat/slab/xeno, -/obj/item/food/meat/slab/xeno, -/obj/item/food/meat/slab/xeno, -/obj/item/food/meat/slab/xeno, -/obj/item/food/spaghetti/boiledspaghetti, -/obj/item/food/spaghetti/boiledspaghetti, -/obj/item/food/meat/rawcutlet, -/obj/item/food/meat/rawcutlet, -/obj/item/food/meat/rawcutlet, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/tdome/observation) "Su" = ( /turf/open/floor/iron, /area/centcom/central_command_areas/supplypod) @@ -9490,16 +9510,6 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/iron/dark, /area/centcom/tdome/observation) -"Tg" = ( -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/secure/briefcase, -/obj/structure/table/wood, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/admin) "Tj" = ( /obj/structure/table/reinforced, /obj/item/reagent_containers/cup/glass/bottle/whiskey{ @@ -9724,17 +9734,6 @@ }, /turf/open/floor/wood, /area/centcom/central_command_areas/admin) -"Ui" = ( -/obj/structure/table/wood, -/obj/machinery/computer/security/wooden_tv, -/obj/item/storage/secure/safe{ - pixel_x = 32; - pixel_y = 24 - }, -/obj/machinery/status_display/ai/directional/east, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/admin) "Ul" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/bush/sparsegrass/style_random, @@ -10182,16 +10181,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/centcom/tdome/administration) -"Wp" = ( -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/storage/secure/briefcase, -/obj/structure/table/wood, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/courtroom) "Ws" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/turf_decal/siding/yellow/corner{ @@ -10694,6 +10683,17 @@ }, /turf/open/floor/iron/grimy, /area/centcom/central_command_areas/admin) +"YR" = ( +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/storage/briefcase/secure, +/obj/structure/table/wood, +/obj/structure/noticeboard/directional/east, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/courtroom) "YT" = ( /obj/structure/table/wood, /obj/structure/plaque/static_plaque/thunderdome{ @@ -47385,7 +47385,7 @@ wv mD yL WN -cb +HX Bu tb aV @@ -47625,7 +47625,7 @@ aa aa On oo -Tg +MB Bl Wl Qb @@ -48670,7 +48670,7 @@ wB yr RH RH -JW +pA eE rB RH @@ -49684,7 +49684,7 @@ yO To nk Gf -oV +Gc On JO Vz @@ -50708,7 +50708,7 @@ mH nm TO On -Ui +aR JC py oB @@ -52541,7 +52541,7 @@ gE FZ kv QC -St +bf eI ch ck @@ -55388,7 +55388,7 @@ uE Xn Sz Sz -Sg +De Wn ga uf @@ -59705,7 +59705,7 @@ rw qh ps ps -Wp +qH Hv qz qy @@ -63290,7 +63290,7 @@ aa aa aa Hv -Wp +qH xX QX pc @@ -63302,7 +63302,7 @@ dp gC ps Ha -gA +YR bC Hv cg diff --git a/_maps/map_files/tramstation/maintenance_modules/secbarupper_attachment_a_1.dmm b/_maps/map_files/tramstation/maintenance_modules/secbarupper_attachment_a_1.dmm index 1451e2d90e0..c709ff93285 100644 --- a/_maps/map_files/tramstation/maintenance_modules/secbarupper_attachment_a_1.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/secbarupper_attachment_a_1.dmm @@ -27,11 +27,11 @@ "n" = ( /obj/structure/rack, /obj/effect/decal/cleanable/dirt, -/obj/item/storage/secure/briefcase{ +/obj/item/storage/briefcase/secure{ pixel_x = -2; pixel_y = 6 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /turf/open/floor/iron/smooth, /area/station/maintenance/department/security) "o" = ( diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index dfb81b80027..8b19e237ac4 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -3735,13 +3735,6 @@ }, /turf/open/floor/iron/white, /area/station/science/lower) -"awY" = ( -/obj/item/storage/secure/safe/directional/north, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/commons/vacant_room/commissary) "axe" = ( /obj/machinery/duct, /obj/effect/turf_decal/trimline/neutral/filled/corner, @@ -6474,6 +6467,12 @@ }, /turf/open/floor/iron/checker, /area/station/commons/lounge) +"beZ" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/catwalk_floor, +/area/station/medical/virology) "bfa" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -9231,6 +9230,15 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/command/meeting_room) +"cdi" = ( +/obj/machinery/door/airlock/maintenance_hatch{ + name = "Custodial Closet" + }, +/obj/effect/mapping_helpers/airlock/access/all/medical/virology, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/catwalk_floor, +/area/station/medical/virology) "cdr" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 6 @@ -10636,16 +10644,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/cargo/warehouse) -"cDX" = ( -/obj/structure/table/reinforced, -/obj/item/storage/secure/briefcase, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/iron/dark/side{ - dir = 8 - }, -/area/station/command/bridge) "cDZ" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/freezer, @@ -11144,6 +11142,16 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/dark, /area/station/security/courtroom) +"cMY" = ( +/obj/structure/table/reinforced, +/obj/item/storage/briefcase/secure, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/iron/dark/side{ + dir = 8 + }, +/area/station/command/bridge) "cNc" = ( /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 4 @@ -13488,20 +13496,6 @@ /obj/machinery/atmospherics/pipe/smart/simple/purple/visible, /turf/closed/wall/r_wall, /area/station/science/ordnance/storage) -"dDN" = ( -/obj/structure/rack, -/obj/item/storage/briefcase{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/storage/secure/briefcase, -/obj/effect/turf_decal/trimline/green/filled/corner, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 9 - }, -/obj/machinery/light/directional/north, -/turf/open/floor/iron, -/area/station/security/courtroom) "dEc" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 4 @@ -13675,15 +13669,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/xenobiology) -"dGz" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Custodial Closet" - }, -/obj/effect/mapping_helpers/airlock/access/all/medical/virology, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/catwalk_floor, -/area/station/medical/virology) "dGJ" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 4 @@ -15253,16 +15238,6 @@ "ekB" = ( /turf/closed/wall, /area/station/service/janitor) -"ekE" = ( -/obj/structure/window/reinforced/spawner/directional/south, -/obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/storage/lockbox/medal, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain) "ekL" = ( /obj/machinery/conveyor{ dir = 1; @@ -15715,6 +15690,14 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/engineering/supermatter/room) +"evc" = ( +/obj/structure/displaycase/captain{ + pixel_y = 5 + }, +/obj/machinery/status_display/evac/directional/north, +/obj/structure/secure_safe/directional/west, +/turf/open/floor/wood, +/area/station/command/heads_quarters/captain) "evd" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -16767,6 +16750,14 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/plating, /area/station/maintenance/central/greater) +"eQO" = ( +/obj/structure/closet{ + name = "Evidence Closet 1" + }, +/obj/structure/secure_safe/directional/east, +/obj/effect/spawner/random/contraband/cannabis, +/turf/open/floor/iron/dark, +/area/station/security/evidence) "eQR" = ( /obj/structure/railing/corner{ dir = 8 @@ -18530,6 +18521,15 @@ /obj/effect/turf_decal/trimline/purple/filled/corner, /turf/open/floor/iron, /area/station/hallway/secondary/exit) +"fyA" = ( +/obj/structure/table/reinforced, +/obj/structure/secure_safe/caps_spare/directional/east, +/obj/machinery/cell_charger{ + pixel_y = 4 + }, +/obj/item/stock_parts/cell/high, +/turf/open/floor/iron, +/area/station/command/bridge) "fyF" = ( /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -24180,14 +24180,6 @@ /obj/machinery/light/cold/directional/east, /turf/open/floor/iron/grimy, /area/station/service/chapel/office) -"hGG" = ( -/obj/structure/closet/secure_closet/hos, -/obj/item/storage/secure/safe/hos{ - pixel_x = 35 - }, -/obj/structure/sign/poster/official/space_cops/directional/north, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/hos) "hGI" = ( /obj/structure/railing/corner{ dir = 1 @@ -24336,11 +24328,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/station/maintenance/tram/right) -"hKL" = ( -/obj/item/storage/secure/safe/directional/east, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/carpet, -/area/station/security/detectives_office) "hKM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /obj/structure/cable/layer1, @@ -24994,6 +24981,20 @@ }, /turf/open/floor/iron/white, /area/station/medical/storage) +"hWu" = ( +/obj/structure/rack, +/obj/item/storage/briefcase{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/storage/briefcase/secure, +/obj/effect/turf_decal/trimline/green/filled/corner, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 9 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/iron, +/area/station/security/courtroom) "hWI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -27742,6 +27743,15 @@ /obj/structure/cable, /turf/open/openspace, /area/station/solars/starboard/fore) +"iXr" = ( +/obj/structure/table/wood, +/obj/item/storage/briefcase/secure{ + pixel_x = -2; + pixel_y = 6 + }, +/obj/structure/cable, +/turf/open/floor/wood, +/area/station/command/heads_quarters/hop) "iXx" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, /obj/structure/lattice, @@ -28894,6 +28904,13 @@ }, /turf/open/floor/iron/white, /area/station/science/research) +"jqE" = ( +/obj/structure/secure_safe/directional/north, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/commons/vacant_room/commissary) "jqK" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -31020,15 +31037,6 @@ }, /turf/open/floor/carpet, /area/station/service/chapel/monastery) -"kcb" = ( -/obj/structure/table/wood, -/obj/item/storage/secure/briefcase{ - pixel_x = -2; - pixel_y = 6 - }, -/obj/structure/cable, -/turf/open/floor/wood, -/area/station/command/heads_quarters/hop) "kcm" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 4 @@ -32996,6 +33004,18 @@ }, /turf/open/floor/iron/white, /area/station/science/explab) +"kKw" = ( +/obj/structure/table, +/obj/item/storage/fancy/cigarettes{ + pixel_x = 8; + pixel_y = 8 + }, +/obj/item/storage/briefcase/secure{ + pixel_x = -3; + pixel_y = 2 + }, +/turf/open/floor/iron, +/area/station/security/office) "kKB" = ( /obj/machinery/door/airlock{ name = "Law Office" @@ -39252,12 +39272,6 @@ /obj/item/extinguisher, /turf/open/floor/iron/white, /area/station/science/xenobiology) -"mTX" = ( -/obj/structure/closet/secure_closet/hop, -/obj/structure/sign/clock/directional/west, -/obj/item/storage/secure/safe/directional/north, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/hop) "mUd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/high_volume/siphon/monitored/air_output{ dir = 1 @@ -39750,12 +39764,6 @@ }, /turf/open/floor/iron/dark, /area/station/medical/break_room) -"neq" = ( -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/catwalk_floor, -/area/station/medical/virology) "net" = ( /obj/machinery/disposal/bin, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -40724,15 +40732,6 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/construction/engineering) -"nug" = ( -/obj/structure/table/reinforced, -/obj/item/storage/secure/safe/caps_spare/directional/east, -/obj/machinery/cell_charger{ - pixel_y = 4 - }, -/obj/item/stock_parts/cell/high, -/turf/open/floor/iron, -/area/station/command/bridge) "nuj" = ( /obj/machinery/holopad, /obj/effect/turf_decal/bot, @@ -41945,6 +41944,14 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/tram/left) +"nQF" = ( +/obj/structure/closet/secure_closet/hos, +/obj/structure/secure_safe/hos{ + pixel_x = 35 + }, +/obj/structure/sign/poster/official/space_cops/directional/north, +/turf/open/floor/carpet, +/area/station/command/heads_quarters/hos) "nQG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, @@ -44719,6 +44726,13 @@ }, /turf/open/floor/iron/dark, /area/station/ai_monitored/turret_protected/aisat/foyer) +"oXx" = ( +/obj/structure/table/glass, +/obj/item/storage/briefcase/secure, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/light/cold/directional/south, +/turf/open/floor/iron/white, +/area/station/command/heads_quarters/cmo) "oXz" = ( /obj/machinery/iv_drip, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -48607,6 +48621,12 @@ }, /turf/open/floor/iron, /area/station/science/explab) +"qnC" = ( +/obj/structure/closet/secure_closet/hop, +/obj/structure/sign/clock/directional/west, +/obj/structure/secure_safe/directional/north, +/turf/open/floor/carpet, +/area/station/command/heads_quarters/hop) "qnL" = ( /obj/machinery/light/directional/east, /turf/open/floor/noslip/tram, @@ -54867,6 +54887,11 @@ "syv" = ( /turf/closed/wall/r_wall, /area/station/security/checkpoint/science) +"syB" = ( +/obj/structure/secure_safe/directional/east, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/carpet, +/area/station/security/detectives_office) "syE" = ( /obj/machinery/rnd/production/circuit_imprinter/department/science, /obj/effect/turf_decal/stripes/line{ @@ -57196,14 +57221,6 @@ /obj/structure/cable, /turf/open/floor/iron/solarpanel/airless, /area/space/nearstation) -"tqS" = ( -/obj/structure/displaycase/captain{ - pixel_y = 5 - }, -/obj/machinery/status_display/evac/directional/north, -/obj/item/storage/secure/safe/directional/west, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain) "tqT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/chapel{ @@ -59144,14 +59161,6 @@ /obj/item/paper/monitorkey, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/ce) -"tYg" = ( -/obj/structure/closet{ - name = "Evidence Closet 1" - }, -/obj/item/storage/secure/safe/directional/east, -/obj/effect/spawner/random/contraband/cannabis, -/turf/open/floor/iron/dark, -/area/station/security/evidence) "tYp" = ( /turf/closed/wall/r_wall, /area/station/command/heads_quarters/rd) @@ -61949,18 +61958,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/engine_smes) -"uQq" = ( -/obj/structure/table, -/obj/item/storage/fancy/cigarettes{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/storage/secure/briefcase{ - pixel_x = -3; - pixel_y = 2 - }, -/turf/open/floor/iron, -/area/station/security/office) "uQS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -62156,13 +62153,6 @@ "uVo" = ( /turf/open/floor/carpet, /area/station/command/meeting_room) -"uVB" = ( -/obj/structure/table/glass, -/obj/item/storage/secure/briefcase, -/obj/effect/turf_decal/tile/blue/fourcorners, -/obj/machinery/light/cold/directional/south, -/turf/open/floor/iron/white, -/area/station/command/heads_quarters/cmo) "uVO" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 9 @@ -68694,6 +68684,16 @@ /obj/effect/turf_decal/trimline/white/filled/line, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) +"xsV" = ( +/obj/structure/window/reinforced/spawner/directional/south, +/obj/structure/table/wood, +/obj/item/storage/briefcase/secure{ + pixel_x = -2; + pixel_y = 4 + }, +/obj/item/storage/lockbox/medal, +/turf/open/floor/wood, +/area/station/command/heads_quarters/captain) "xsW" = ( /obj/machinery/porta_turret/ai{ dir = 4 @@ -99186,7 +99186,7 @@ aaa hFr nMu hFr -dDN +hWu abZ ycB jyA @@ -150871,7 +150871,7 @@ aBV aBV aBV wHT -mTX +qnC kcw ruV wHT @@ -151905,7 +151905,7 @@ umf qjW dCk iDR -kcb +iXr wHT omH jKZ @@ -155757,7 +155757,7 @@ uvu aCC ukE hhc -cDX +cMY lPY eaT kiU @@ -156011,7 +156011,7 @@ aQO rup wzm rAh -nug +fyA eUy mgq nhV @@ -157511,7 +157511,7 @@ aaa aaa aaa rmB -hGG +nQF bWb toY wpM @@ -157522,7 +157522,7 @@ avl fBk myB vhl -uQq +kKw vhl gnL lvm @@ -157803,9 +157803,9 @@ ltw pbx pyA ltw -tqS +evc vjq -ekE +xsV ktl mjd mjI @@ -158838,7 +158838,7 @@ phl sSx xJH xEo -hKL +syB ixO urP kOE @@ -159575,7 +159575,7 @@ aaa abM abM tFJ -tYg +eQO fsQ jil fsQ @@ -166592,7 +166592,7 @@ aOF wdj wao cHU -uVB +oXx wdj oGJ oGJ @@ -171469,7 +171469,7 @@ wTl wLl lQT ugt -neq +beZ ugt uHn gWV @@ -171726,7 +171726,7 @@ ugt fsN ugt ugt -dGz +cdi ugt qjF rkd @@ -184809,7 +184809,7 @@ ebY aGn brm nSI -awY +jqE vDI nSd rMB diff --git a/_maps/modular_generic/station_m_evidence.dmm b/_maps/modular_generic/station_m_evidence.dmm index d8b587a3713..9d1c5a8a5be 100644 --- a/_maps/modular_generic/station_m_evidence.dmm +++ b/_maps/modular_generic/station_m_evidence.dmm @@ -6,7 +6,7 @@ /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/cobweb, -/obj/item/storage/secure/safe/directional/north{ +/obj/structure/secure_safe/directional/north{ name = "evidence safe" }, /turf/open/floor/iron/dark, diff --git a/_maps/shuttles/arrival_delta.dmm b/_maps/shuttles/arrival_delta.dmm index 0fca873aaa1..649c16bdcf4 100644 --- a/_maps/shuttles/arrival_delta.dmm +++ b/_maps/shuttles/arrival_delta.dmm @@ -242,7 +242,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/effect/turf_decal/bot, /turf/open/floor/iron, /area/shuttle/arrival) diff --git a/_maps/shuttles/pirate_silverscale.dmm b/_maps/shuttles/pirate_silverscale.dmm index efe506d8f87..e4838e040e4 100644 --- a/_maps/shuttles/pirate_silverscale.dmm +++ b/_maps/shuttles/pirate_silverscale.dmm @@ -377,7 +377,7 @@ /turf/open/floor/pod/dark, /area/shuttle/pirate) "zm" = ( -/obj/item/storage/secure/safe/directional/north, +/obj/structure/secure_safe/directional/north, /obj/machinery/airalarm/directional/east, /obj/effect/mapping_helpers/airalarm/all_access, /obj/structure/bed/pod, diff --git a/_maps/skyrat/automapper/templates/deltastation/deltastation_armory.dmm b/_maps/skyrat/automapper/templates/deltastation/deltastation_armory.dmm index e8b78a69a9d..903d69e1062 100644 --- a/_maps/skyrat/automapper/templates/deltastation/deltastation_armory.dmm +++ b/_maps/skyrat/automapper/templates/deltastation/deltastation_armory.dmm @@ -10,7 +10,7 @@ /turf/open/floor/iron/dark, /area/station/ai_monitored/security/armory) "k" = ( -/obj/item/storage/secure/safe/directional/east, +/obj/structure/secure_safe/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/dish_drive/bullet, /turf/open/floor/iron/dark, diff --git a/_maps/skyrat/automapper/templates/kilostation/kilostation_cryo.dmm b/_maps/skyrat/automapper/templates/kilostation/kilostation_cryo.dmm index 236cd7e7831..d3035bcc07a 100644 --- a/_maps/skyrat/automapper/templates/kilostation/kilostation_cryo.dmm +++ b/_maps/skyrat/automapper/templates/kilostation/kilostation_cryo.dmm @@ -107,7 +107,7 @@ /area/station/common/cryopods) "Q" = ( /obj/structure/table, -/obj/item/storage/secure/briefcase, +/obj/item/storage/briefcase/secure, /obj/item/taperecorder, /obj/structure/sign/warning/electric_shock/directional/south, /turf/open/floor/iron/dark, diff --git a/_maps/skyrat/holodeck_wargame.dmm b/_maps/skyrat/holodeck_wargame.dmm index ad09edb2a45..bfdb99aace5 100644 --- a/_maps/skyrat/holodeck_wargame.dmm +++ b/_maps/skyrat/holodeck_wargame.dmm @@ -4,7 +4,7 @@ dir = 10 }, /obj/structure/table/wood, -/obj/item/storage/secure/briefcase/white/wargame_kit, +/obj/item/storage/briefcase/secure/white/wargame_kit, /turf/open/floor/holofloor/wood, /area/template_noop) "b" = ( diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index 9dbfa2e3e2b..ed7373ece93 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -244,7 +244,7 @@ // Wall mounted machinery which are visually on the wall. GLOBAL_LIST_INIT(WALLITEMS_INTERIOR, typecacheof(list( /obj/item/radio/intercom, - /obj/item/storage/secure/safe, + /obj/structure/secure_safe, /obj/machinery/airalarm, /obj/machinery/bluespace_vendor, /obj/machinery/button, diff --git a/code/datums/components/lockable_storage.dm b/code/datums/components/lockable_storage.dm new file mode 100644 index 00000000000..d4d833b707d --- /dev/null +++ b/code/datums/components/lockable_storage.dm @@ -0,0 +1,206 @@ +/** + * ##lockable_storage + * Adds a UI to the object that triggers when you use it in hand (if item) or attack (everything else). + * The UI is a lock that, when unlocked, allows you to access the contents inside of it. + * When using this, make sure you have icons for `on_update_icon_state`. + */ +/datum/component/lockable_storage + ///Boolean on whether the panel has been hacked open with a screwdriver. + var/panel_open = FALSE + ///The number currently sitting in the briefcase's panel. + var/numeric_input + + ///The code that will open this safe, set by usually players. + ///Importantly, can be null if there's no password. + var/lock_code + ///Boolean on whether the storage can be hacked open with a multitool. + var/can_hack_open + +/datum/component/lockable_storage/Initialize( + lock_code, + can_hack_open = TRUE, +) + . = ..() + if(!isobj(parent)) + return COMPONENT_INCOMPATIBLE + + var/atom/atom_parent = parent + atom_parent.flags_1 |= HAS_CONTEXTUAL_SCREENTIPS_1 + + if(!atom_parent.atom_storage) + atom_parent.create_storage( + max_specific_storage = WEIGHT_CLASS_GIGANTIC, + max_total_storage = 14, + canthold = list(/obj/item/storage/briefcase/secure), + ) + + + src.lock_code = lock_code + if(!isnull(lock_code)) + atom_parent.atom_storage.locked = STORAGE_FULLY_LOCKED + src.can_hack_open = can_hack_open + + atom_parent.update_appearance() + +/datum/component/lockable_storage/RegisterWithParent() + . = ..() + if(can_hack_open) + RegisterSignal(parent, COMSIG_ATOM_TOOL_ACT(TOOL_SCREWDRIVER), PROC_REF(on_screwdriver_act)) + RegisterSignal(parent, COMSIG_ATOM_TOOL_ACT(TOOL_MULTITOOL), PROC_REF(on_multitool_act)) + + RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) + RegisterSignal(parent, COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, PROC_REF(on_requesting_context_from_item)) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_ICON_STATE, PROC_REF(on_update_icon_state)) + + if(isitem(parent)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF, PROC_REF(on_interact)) + else + RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND, PROC_REF(on_interact)) + +/datum/component/lockable_storage/UnregisterFromParent() + if(can_hack_open) + UnregisterSignal(parent, list( + COMSIG_ATOM_TOOL_ACT(TOOL_SCREWDRIVER), + COMSIG_ATOM_TOOL_ACT(TOOL_MULTITOOL), + )) + UnregisterSignal(parent, list( + COMSIG_ATOM_EXAMINE, + COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, + COMSIG_ATOM_UPDATE_ICON_STATE, + )) + + if(isitem(parent)) + UnregisterSignal(parent, COMSIG_ITEM_ATTACK_SELF) + else + UnregisterSignal(parent, COMSIG_ATOM_ATTACK_HAND) + return ..() + +/** + * Adds context screentips to the locked item. + * Arguments: + * * source - The item that will display its screentip + * * context - The list of context that will be displayed. We add onto this list for it to show up. + * * held_item - The item in your hand, which in this case should be a screwdriver or multitool, if necessary. + * * user - The user who is going to see the screentips. + */ +/datum/component/lockable_storage/proc/on_requesting_context_from_item(datum/source, list/context, obj/item/held_item, mob/user) + SIGNAL_HANDLER + if(isnull(held_item)) + context[SCREENTIP_CONTEXT_LMB] = "Open storage" + return CONTEXTUAL_SCREENTIP_SET + + if(can_hack_open) + switch(held_item.tool_behaviour) + if(TOOL_SCREWDRIVER) + context[SCREENTIP_CONTEXT_LMB] = "[panel_open ? "Close" : "Open"] panel" + return CONTEXTUAL_SCREENTIP_SET + if(TOOL_MULTITOOL) + context[SCREENTIP_CONTEXT_LMB] = "Hack panel open" + return CONTEXTUAL_SCREENTIP_SET + + return NONE + +///Called when examining the storage item. +/datum/component/lockable_storage/proc/on_examine(atom/source, mob/user, list/examine_list) + SIGNAL_HANDLER + if(can_hack_open) + examine_list += "The service panel is currently [panel_open ? "unscrewed" : "screwed shut"]." + +/** + * Called when a screwdriver is used on the parent, if it's hackable. + */ +/datum/component/lockable_storage/proc/on_screwdriver_act(atom/source, mob/user, obj/item/tool) + SIGNAL_HANDLER + if(!can_hack_open || !source.atom_storage.locked) + return COMPONENT_BLOCK_TOOL_ATTACK + + panel_open = !panel_open + source.balloon_alert(user, "panel [panel_open ? "opened" : "closed"]") + return COMPONENT_BLOCK_TOOL_ATTACK + +/** + * Called when a multitool is used on the parent, if it's hackable. + * Checks if we can start hacking and, if so, will begin the hacking process. + */ +/datum/component/lockable_storage/proc/on_multitool_act(atom/source, mob/user, obj/item/tool) + SIGNAL_HANDLER + if(!can_hack_open || !source.atom_storage.locked) + return COMPONENT_BLOCK_TOOL_ATTACK + if(!panel_open) + source.balloon_alert(user, "panel closed!") + return COMPONENT_BLOCK_TOOL_ATTACK + source.balloon_alert(user, "hacking...") + INVOKE_ASYNC(src, PROC_REF(hack_open), source, user, tool) + return COMPONENT_BLOCK_TOOL_ATTACK + +///Does a do_after to hack the storage open, takes a long time cause idk. +/datum/component/lockable_storage/proc/hack_open(atom/source, mob/user, obj/item/tool) + if(!tool.use_tool(parent, user, 40 SECONDS)) + return + source.balloon_alert(user, "hacked") + lock_code = null + +///Updates the icon state depending on if we're locked or not. +/datum/component/lockable_storage/proc/on_update_icon_state(obj/source) + SIGNAL_HANDLER + source.icon_state = "[source.base_icon_state][source.atom_storage.locked ? "_locked" : null]" + +///Called when interacted with in-hand or on attack, opens the UI. +/datum/component/lockable_storage/proc/on_interact(atom/source, mob/user) + SIGNAL_HANDLER + INVOKE_ASYNC(src, PROC_REF(ui_interact), user) + +/datum/component/lockable_storage/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "LockedSafe", parent) + ui.open() + +/datum/component/lockable_storage/ui_data(mob/user) + var/list/data = list() + var/atom/source = parent + data["input_code"] = numeric_input || "*****" + data["locked"] = source.atom_storage.locked + data["lock_code"] = !!lock_code //we just need to know if it has one. + return data + +/datum/component/lockable_storage/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) + . = ..() + if(action != "keypad") + return TRUE + var/digit = params["digit"] + switch(digit) + //locking it back up + if("C") + var/atom/source = parent + numeric_input = "" + //you can't lock it if it's already locked or lacks a lock code. + if(source.atom_storage.locked || isnull(lock_code)) + return TRUE + source.atom_storage.locked = STORAGE_FULLY_LOCKED + source.atom_storage.hide_contents(usr) + source.update_appearance(UPDATE_ICON) + return TRUE + //setting a password & unlocking + if("E") + //inputting a new code if there isn't one set. + if(!lock_code) + if(length(numeric_input) != 5) + return TRUE + lock_code = numeric_input + numeric_input = "" + return TRUE + //unlocking the current code. + if(numeric_input != lock_code) + return TRUE + var/atom/source = parent + source.atom_storage.locked = STORAGE_NOT_LOCKED + numeric_input = "" + source.update_appearance(UPDATE_ICON) + return TRUE + //putting digits in. + if("0", "1", "2", "3", "4", "5", "6", "7", "8", "9") + if(length(numeric_input) == 5) + return + numeric_input += digit + return TRUE diff --git a/code/datums/quirks/negative_quirks/family_heirloom.dm b/code/datums/quirks/negative_quirks/family_heirloom.dm index 0fd08c68f21..235913120a3 100644 --- a/code/datums/quirks/negative_quirks/family_heirloom.dm +++ b/code/datums/quirks/negative_quirks/family_heirloom.dm @@ -8,7 +8,7 @@ quirk_flags = QUIRK_HUMAN_ONLY|QUIRK_PROCESSES|QUIRK_MOODLET_BASED /// A weak reference to our heirloom. var/datum/weakref/heirloom - mail_goodies = list(/obj/item/storage/secure/briefcase) + mail_goodies = list(/obj/item/storage/briefcase/secure) /datum/quirk/item_quirk/family_heirloom/add_unique(client/client_source) var/mob/living/carbon/human/human_holder = quirk_holder diff --git a/code/game/objects/effects/spawners/random/bureaucracy.dm b/code/game/objects/effects/spawners/random/bureaucracy.dm index af33169ff15..7a6b62618e6 100644 --- a/code/game/objects/effects/spawners/random/bureaucracy.dm +++ b/code/game/objects/effects/spawners/random/bureaucracy.dm @@ -54,7 +54,7 @@ icon_state = "briefcase" loot = list( /obj/item/storage/briefcase = 3, - /obj/item/storage/secure/briefcase = 1, + /obj/item/storage/briefcase/secure = 1, ) /obj/effect/spawner/random/bureaucracy/folder diff --git a/code/game/objects/items/storage/briefcase.dm b/code/game/objects/items/storage/briefcase.dm index 4d120b05a28..dc8357c3645 100644 --- a/code/game/objects/items/storage/briefcase.dm +++ b/code/game/objects/items/storage/briefcase.dm @@ -72,3 +72,41 @@ new /obj/item/ammo_box/magazine/sniper_rounds(src) new /obj/item/ammo_box/magazine/sniper_rounds(src) new /obj/item/ammo_box/magazine/sniper_rounds/disruptor(src) + +/** + * Secure briefcase + * Uses the lockable storage component to give it a lock. + */ +/obj/item/storage/briefcase/secure + name = "secure briefcase" + desc = "A large briefcase with a digital locking system." + icon_state = "secure" + base_icon_state = "secure" + inhand_icon_state = "sec-case" + +/obj/item/storage/briefcase/secure/Initialize(mapload) + . = ..() + atom_storage.max_total_storage = 21 + atom_storage.max_specific_storage = WEIGHT_CLASS_NORMAL + AddComponent(/datum/component/lockable_storage) + +///Syndie variant of Secure Briefcase. Contains space cash, slightly more robust. +/obj/item/storage/briefcase/secure/syndie + force = 15 + +/obj/item/storage/briefcase/secure/syndie/PopulateContents() + . = ..() + for(var/iterator in 1 to 5) + new /obj/item/stack/spacecash/c1000(src) + +/// A briefcase that contains various sought-after spoils +/obj/item/storage/briefcase/secure/riches + +/obj/item/storage/briefcase/secure/riches/PopulateContents() + new /obj/item/clothing/suit/armor/vest(src) + new /obj/item/gun/ballistic/automatic/pistol(src) + new /obj/item/suppressor(src) + new /obj/item/melee/baton/telescopic(src) + new /obj/item/clothing/mask/balaclava(src) + new /obj/item/bodybag(src) + new /obj/item/soap/nanotrasen(src) diff --git a/code/game/objects/items/storage/secure.dm b/code/game/objects/items/storage/secure.dm deleted file mode 100644 index 0d845b5254e..00000000000 --- a/code/game/objects/items/storage/secure.dm +++ /dev/null @@ -1,242 +0,0 @@ -/* - * Absorbs /obj/item/secstorage. - * Reimplements it only slightly to use existing storage functionality. - * - * Contains: - * Secure Briefcase - * Wall Safe - */ - -///Generic Safe -/obj/item/storage/secure - name = "secstorage" - desc = "This shouldn't exist. If it does, create an issue report." - w_class = WEIGHT_CLASS_NORMAL - /// The code entered by the user - var/entered_code - /// The code that will open this safe - var/lock_code - /// Does this lock have a code set? - var/lock_set = FALSE - /// Is this lock currently being hacked? - var/lock_hacking = FALSE - /// Is the safe service panel open? - var/panel_open = FALSE - /// Is this door hackable? - var/can_hack_open = TRUE - -/obj/item/storage/secure/Initialize(mapload) - . = ..() - atom_storage.max_specific_storage = WEIGHT_CLASS_SMALL - atom_storage.max_total_storage = 14 - update_appearance() - -/obj/item/storage/secure/examine(mob/user) - . = ..() - if(can_hack_open) - . += "The service panel is currently [panel_open ? "unscrewed" : "screwed shut"]." - -/obj/item/storage/secure/update_icon_state() - . = ..() - icon_state = "[initial(icon_state)][atom_storage?.locked ? "_locked" : null]" - -/obj/item/storage/secure/tool_act(mob/living/user, obj/item/tool, tool_type, is_right_clicking) - if(can_hack_open && atom_storage.locked) - return ..() - else - return FALSE - -/obj/item/storage/secure/wirecutter_act(mob/living/user, obj/item/tool) - to_chat(user, span_danger("[src] is protected from this sort of tampering, yet it appears the internal memory wires can still be pulsed.")) - return - -/obj/item/storage/secure/screwdriver_act(mob/living/user, obj/item/tool) - if(tool.use_tool(src, user, 20)) - panel_open = !panel_open - balloon_alert(user, "panel [panel_open ? "opened" : "closed"]") - return TRUE - -/obj/item/storage/secure/multitool_act(mob/living/user, obj/item/tool) - . = TRUE - if(lock_hacking) - balloon_alert(user, "already hacking!") - return - if(panel_open) - balloon_alert(user, "hacking...") - lock_hacking = TRUE - if (tool.use_tool(src, user, 400)) - balloon_alert(user, "hacked") - lock_set = FALSE - - lock_hacking = FALSE - return - - balloon_alert(user, "unscrew panel!") - -/obj/item/storage/secure/attack_self(mob/user) - var/locked = atom_storage.locked - user.set_machine(src) - var/dat = "[src]
\n\nLock Status: [locked ? "LOCKED" : "UNLOCKED"]" - var/message = "Code" - if (!lock_set) - dat += "

\n5-DIGIT PASSCODE NOT SET.
ENTER NEW PASSCODE.
" - message = "[entered_code]" - if (!locked) - message = "*****" - dat += "


\n>[message]
\n1-2-3
\n4-5-6
\n7-8-9
\nR-0-E
\n
" - user << browse(dat, "window=caselock;size=300x280") - -/obj/item/storage/secure/Topic(href, href_list) - ..() - if (usr.stat != CONSCIOUS || HAS_TRAIT(usr, TRAIT_HANDS_BLOCKED) || (get_dist(src, usr) > 1)) - return - if (href_list["type"]) - if (href_list["type"] == "E") - if (!lock_set && (length(entered_code) == 5) && (entered_code != "ERROR")) - lock_code = entered_code - lock_set = TRUE - else if ((entered_code == lock_code) && lock_set) - atom_storage.locked = STORAGE_NOT_LOCKED - update_appearance() - entered_code = null - else - entered_code = "ERROR" - else - if (href_list["type"] == "R") - atom_storage.locked = STORAGE_FULLY_LOCKED - update_appearance() - entered_code = null - atom_storage.hide_contents(usr) - else - entered_code += sanitize_text(href_list["type"]) - if (length(entered_code) > 5) - entered_code = "ERROR" - add_fingerprint(usr) - for(var/mob/M in viewers(1, loc)) - if ((M.client && M.machine == src)) - attack_self(M) - return - return - -///Secure Briefcase -/obj/item/storage/secure/briefcase - name = "secure briefcase" - icon = 'icons/obj/storage/case.dmi' - icon_state = "secure" - inhand_icon_state = "sec-case" - lefthand_file = 'icons/mob/inhands/equipment/briefcase_lefthand.dmi' - righthand_file = 'icons/mob/inhands/equipment/briefcase_righthand.dmi' - desc = "A large briefcase with a digital locking system." - force = 8 - hitsound = SFX_SWING_HIT - throw_speed = 2 - throw_range = 4 - w_class = WEIGHT_CLASS_BULKY - attack_verb_continuous = list("bashes", "batters", "bludgeons", "thrashes", "whacks") - attack_verb_simple = list("bash", "batter", "bludgeon", "thrash", "whack") - -/obj/item/storage/secure/briefcase/PopulateContents() - new /obj/item/paper(src) - new /obj/item/pen(src) - -/obj/item/storage/secure/briefcase/Initialize(mapload) - . = ..() - atom_storage.max_total_storage = 21 - atom_storage.max_specific_storage = WEIGHT_CLASS_NORMAL - -///Syndie variant of Secure Briefcase. Contains space cash, slightly more robust. -/obj/item/storage/secure/briefcase/syndie - force = 15 - -/obj/item/storage/secure/briefcase/syndie/PopulateContents() - ..() - for(var/iterator in 1 to 5) - new /obj/item/stack/spacecash/c1000(src) - -/// A briefcase that contains various sought-after spoils -/obj/item/storage/secure/briefcase/riches - -/obj/item/storage/secure/briefcase/riches/PopulateContents() - new /obj/item/clothing/suit/armor/vest(src) - new /obj/item/gun/ballistic/automatic/pistol(src) - new /obj/item/suppressor(src) - new /obj/item/melee/baton/telescopic(src) - new /obj/item/clothing/mask/balaclava(src) - new /obj/item/bodybag(src) - new /obj/item/soap/nanotrasen(src) - -///Secure Safe -/obj/item/storage/secure/safe - name = "secure safe" - icon = 'icons/obj/storage/storage.dmi' - icon_state = "wall_safe" - desc = "Excellent for securing things away from grubby hands." - w_class = WEIGHT_CLASS_GIGANTIC - anchored = TRUE - density = FALSE - -MAPPING_DIRECTIONAL_HELPERS(/obj/item/storage/secure/safe, 32) - -/obj/item/storage/secure/safe/Initialize(mapload) - . = ..() - atom_storage.set_holdable(cant_hold_list = list(/obj/item/storage/secure/briefcase)) - atom_storage.max_specific_storage = WEIGHT_CLASS_GIGANTIC - find_and_hang_on_wall() - -/obj/item/storage/secure/safe/PopulateContents() - new /obj/item/paper(src) - new /obj/item/pen(src) - -/obj/item/storage/secure/safe/attack_hand(mob/user, list/modifiers) - . = ..() - if(.) - return - return attack_self(user) - -/obj/item/storage/secure/safe/hos - name = "head of security's safe" - -/** - * This safe is meant to be damn robust. To break in, you're supposed to get creative, or use acid or an explosion. - * - * This makes the safe still possible to break in for someone who is prepared and capable enough, either through - * chemistry, botany or whatever else. - * - * The safe is also weak to explosions, so spending some early TC could allow an antag to blow it upen if they can - * get access to it. - */ -/obj/item/storage/secure/safe/caps_spare - name = "captain's spare ID safe" - desc = "In case of emergency, do not break glass. All Captains and Acting Captains are provided with codes to access this safe. \ -It is made out of the same material as the station's Black Box and is designed to resist all conventional weaponry. \ -There appears to be a small amount of surface corrosion. It doesn't look like it could withstand much of an explosion.\ -It remains quite flush against the wall, and there only seems to be enough room to fit something as slim as an ID card." - can_hack_open = FALSE - armor_type = /datum/armor/safe_caps_spare - max_integrity = 300 - color = "#ffdd33" - -MAPPING_DIRECTIONAL_HELPERS(/obj/item/storage/secure/safe/caps_spare, 32) - -/datum/armor/safe_caps_spare - melee = 100 - bullet = 100 - laser = 100 - energy = 100 - bomb = 70 - fire = 80 - acid = 70 - -/obj/item/storage/secure/safe/caps_spare/Initialize(mapload) - . = ..() - atom_storage.set_holdable(can_hold_list = list(/obj/item/card/id)) - lock_code = SSid_access.spare_id_safe_code - lock_set = TRUE - atom_storage.locked = STORAGE_FULLY_LOCKED - update_appearance() - -/obj/item/storage/secure/safe/caps_spare/PopulateContents() - new /obj/item/card/id/advanced/gold/captains_spare(src) - -/obj/item/storage/secure/safe/caps_spare/rust_heretic_act() - take_damage(damage_amount = 100, damage_type = BRUTE, damage_flag = MELEE, armour_penetration = 100) diff --git a/code/game/objects/structures/secure_safe.dm b/code/game/objects/structures/secure_safe.dm new file mode 100644 index 00000000000..c13fe9d6085 --- /dev/null +++ b/code/game/objects/structures/secure_safe.dm @@ -0,0 +1,73 @@ +/** + * Wall safes + * Holds items and uses the lockable storage component + * to allow people to lock items up. + */ +/obj/structure/secure_safe + name = "secure safe" + desc = "Excellent for securing things away from grubby hands." + icon = 'icons/obj/storage/storage.dmi' + icon_state = "wall_safe" + base_icon_state = "wall_safe" + anchored = TRUE + density = FALSE + +MAPPING_DIRECTIONAL_HELPERS(/obj/structure/secure_safe, 32) + +/obj/structure/secure_safe/Initialize(mapload) + . = ..() + //this will create the storage for us. + AddComponent(/datum/component/lockable_storage) + find_and_hang_on_wall() + PopulateContents() + +/obj/structure/secure_safe/proc/PopulateContents() + new /obj/item/paper(src) + new /obj/item/pen(src) + +/obj/structure/secure_safe/hos + name = "head of security's safe" + +/** + * This safe is meant to be damn robust. To break in, you're supposed to get creative, or use acid or an explosion. + * + * This makes the safe still possible to break in for someone who is prepared and capable enough, either through + * chemistry, botany or whatever else. + * + * The safe is also weak to explosions, so spending some early TC could allow an antag to blow it upen if they can + * get access to it. + */ +/obj/structure/secure_safe/caps_spare + name = "captain's spare ID safe" + desc = "In case of emergency, do not break glass. All Captains and Acting Captains are provided with codes to access this safe. \ + It is made out of the same material as the station's Black Box and is designed to resist all conventional weaponry. \ + There appears to be a small amount of surface corrosion. It doesn't look like it could withstand much of an explosion.\ + It remains quite flush against the wall, and there only seems to be enough room to fit something as slim as an ID card." + armor_type = /datum/armor/safe_caps_spare + max_integrity = 300 + color = "#ffdd33" + +MAPPING_DIRECTIONAL_HELPERS(/obj/structure/secure_safe/caps_spare, 32) + +/datum/armor/safe_caps_spare + melee = 100 + bullet = 100 + laser = 100 + energy = 100 + bomb = 70 + fire = 80 + acid = 70 + +/obj/structure/secure_safe/caps_spare/Initialize(mapload) + . = ..() + atom_storage.set_holdable(can_hold_list = list(/obj/item/card/id)) + AddComponent(/datum/component/lockable_storage, \ + lock_code = SSid_access.spare_id_safe_code, \ + can_hack_open = FALSE, \ + ) + +/obj/structure/secure_safe/caps_spare/PopulateContents() + new /obj/item/card/id/advanced/gold/captains_spare(src) + +/obj/structure/secure_safe/caps_spare/rust_heretic_act() + take_damage(damage_amount = 100, damage_type = BRUTE, damage_flag = MELEE, armour_penetration = 100) diff --git a/code/modules/awaymissions/mission_code/stationCollision.dm b/code/modules/awaymissions/mission_code/stationCollision.dm index b0f31eaa669..aa1242dcfe7 100644 --- a/code/modules/awaymissions/mission_code/stationCollision.dm +++ b/code/modules/awaymissions/mission_code/stationCollision.dm @@ -122,16 +122,23 @@ GLOBAL_VAR_INIT(sc_safecode5, "[rand(0,9)]") Your assigned ship is designed specifically for penetrating the hull of another station or ship with minimal damage to operatives. It is completely fly-by-wire meaning you have just have to enjoy the ride and when the red light comes on... find something to hold onto! "} + /* * Captain's safe */ -/obj/item/storage/secure/safe/sc_ssafe +/obj/structure/secure_safe/sc_ssafe name = "Captain's secure safe" -/obj/item/storage/secure/safe/sc_ssafe/Initialize(mapload) +/obj/structure/secure_safe/sc_ssafe/Initialize(mapload) + . = ..() + var/lock_code = "[GLOB.sc_safecode1][GLOB.sc_safecode2][GLOB.sc_safecode3][GLOB.sc_safecode4][GLOB.sc_safecode5]" + AddComponent(/datum/component/lockable_storage, \ + lock_code = lock_code, \ + can_hack_open = FALSE, \ + ) + +/obj/structure/secure_safe/sc_ssafe/PopulateContents() . = ..() - lock_code = "[GLOB.sc_safecode1][GLOB.sc_safecode2][GLOB.sc_safecode3][GLOB.sc_safecode4][GLOB.sc_safecode5]" - lock_set = TRUE new /obj/item/gun/energy/mindflayer(src) new /obj/item/soulstone(src) new /obj/item/clothing/suit/hooded/cultrobes/hardened(src) diff --git a/code/modules/clothing/outfits/standard.dm b/code/modules/clothing/outfits/standard.dm index 061fbe3a1de..ddce653aee5 100644 --- a/code/modules/clothing/outfits/standard.dm +++ b/code/modules/clothing/outfits/standard.dm @@ -194,7 +194,7 @@ glasses = /obj/item/clothing/glasses/sunglasses shoes = /obj/item/clothing/shoes/sneakers/black l_pocket = /obj/item/melee/energy/sword/saber - l_hand = /obj/item/storage/secure/briefcase + l_hand = /obj/item/storage/briefcase/secure /datum/outfit/assassin/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) var/obj/item/clothing/under/U = H.w_uniform @@ -204,7 +204,7 @@ return //Could use a type - var/obj/item/storage/secure/briefcase/sec_briefcase = H.get_item_for_held_index(1) + var/obj/item/storage/briefcase/secure/sec_briefcase = H.get_item_for_held_index(1) for(var/obj/item/briefcase_item in sec_briefcase) qdel(briefcase_item) for(var/i = 3 to 0 step -1) diff --git a/code/modules/uplink/uplink_items/badass.dm b/code/modules/uplink/uplink_items/badass.dm index 458747a2a7b..d2eee3afa33 100644 --- a/code/modules/uplink/uplink_items/badass.dm +++ b/code/modules/uplink/uplink_items/badass.dm @@ -51,7 +51,7 @@ desc = "A secure briefcase containing 5000 space credits. Useful for bribing personnel, or purchasing goods \ and services at lucrative prices. The briefcase also feels a little heavier to hold; it has been \ manufactured to pack a little bit more of a punch if your client needs some convincing." - item = /obj/item/storage/secure/briefcase/syndie + item = /obj/item/storage/briefcase/secure/syndie cost = 3 restricted = TRUE illegal_tech = FALSE diff --git a/modular_skyrat/modules/blueshield/code/closet.dm b/modular_skyrat/modules/blueshield/code/closet.dm index b66f2d95c4e..8c93f1036cc 100644 --- a/modular_skyrat/modules/blueshield/code/closet.dm +++ b/modular_skyrat/modules/blueshield/code/closet.dm @@ -22,7 +22,7 @@ /obj/structure/closet/secure_closet/blueshield/New() ..() - new /obj/item/storage/secure/briefcase(src) + new /obj/item/storage/briefcase/secure(src) new /obj/item/storage/belt/security/full(src) new /obj/item/grenade/flashbang(src) new /obj/item/assembly/flash/handheld(src) diff --git a/modular_skyrat/modules/company_imports/code/armament_datums/microstar_energy.dm b/modular_skyrat/modules/company_imports/code/armament_datums/microstar_energy.dm index 9c4c1484007..5eacfef0eb6 100644 --- a/modular_skyrat/modules/company_imports/code/armament_datums/microstar_energy.dm +++ b/modular_skyrat/modules/company_imports/code/armament_datums/microstar_energy.dm @@ -68,23 +68,23 @@ /datum/armament_entry/company_import/microstar/mcr_attachments/hellfire name = "microfusion hellfire kit" - item_type = /obj/item/storage/secure/briefcase/white/mcr_loadout/hellfire + item_type = /obj/item/storage/briefcase/secure/white/mcr_loadout/hellfire /datum/armament_entry/company_import/microstar/mcr_attachments/scatter name = "microfusion scatter kit" - item_type = /obj/item/storage/secure/briefcase/white/mcr_loadout/scatter + item_type = /obj/item/storage/briefcase/secure/white/mcr_loadout/scatter /datum/armament_entry/company_import/microstar/mcr_attachments/lance name = "microfusion lance kit" - item_type = /obj/item/storage/secure/briefcase/white/mcr_loadout/lance + item_type = /obj/item/storage/briefcase/secure/white/mcr_loadout/lance /datum/armament_entry/company_import/microstar/mcr_attachments/repeater name = "microfusion repeater kit" - item_type = /obj/item/storage/secure/briefcase/white/mcr_loadout/repeater + item_type = /obj/item/storage/briefcase/secure/white/mcr_loadout/repeater /datum/armament_entry/company_import/microstar/mcr_attachments/tacticool name = "microfusion suppressor kit" - item_type = /obj/item/storage/secure/briefcase/white/mcr_loadout/tacticool + item_type = /obj/item/storage/briefcase/secure/white/mcr_loadout/tacticool // Improved phase emitters, cells, and cell attachments @@ -97,7 +97,7 @@ /datum/armament_entry/company_import/microstar/mcr_upgrades/enhanced_part_kit name = "microfusion enhanced parts" - item_type = /obj/item/storage/secure/briefcase/white/mcr_parts/enhanced + item_type = /obj/item/storage/briefcase/secure/white/mcr_parts/enhanced cost = PAYCHECK_COMMAND * 2 /datum/armament_entry/company_import/microstar/mcr_upgrades/capacity_booster @@ -106,7 +106,7 @@ /datum/armament_entry/company_import/microstar/mcr_upgrades/advanced_part_kit name = "microfusion advanced parts" - item_type = /obj/item/storage/secure/briefcase/white/mcr_parts/advanced + item_type = /obj/item/storage/briefcase/secure/white/mcr_parts/advanced cost = PAYCHECK_COMMAND * 2 /datum/armament_entry/company_import/microstar/mcr_upgrades/selfcharge @@ -115,5 +115,5 @@ /datum/armament_entry/company_import/microstar/mcr_upgrades/bluespace_part_kit name = "microfusion bluespace parts" - item_type = /obj/item/storage/secure/briefcase/white/mcr_parts/bluespace + item_type = /obj/item/storage/briefcase/secure/white/mcr_parts/bluespace cost = PAYCHECK_COMMAND * 6 diff --git a/modular_skyrat/modules/company_imports/code/objects/microstar/mcr_attachment_kits.dm b/modular_skyrat/modules/company_imports/code/objects/microstar/mcr_attachment_kits.dm index b0ed7452055..05bddea8e91 100644 --- a/modular_skyrat/modules/company_imports/code/objects/microstar/mcr_attachment_kits.dm +++ b/modular_skyrat/modules/company_imports/code/objects/microstar/mcr_attachment_kits.dm @@ -1,9 +1,9 @@ -/obj/item/storage/secure/briefcase/white/mcr_loadout +/obj/item/storage/briefcase/secure/white/mcr_loadout name = "Microfusion Attachment Kit" -/obj/item/storage/secure/briefcase/white/mcr_loadout/hellfire +/obj/item/storage/briefcase/secure/white/mcr_loadout/hellfire -/obj/item/storage/secure/briefcase/white/mcr_loadout/hellfire/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_loadout/hellfire/PopulateContents() var/static/items_inside = list( /obj/item/microfusion_gun_attachment/barrel/hellfire = 1, /obj/item/microfusion_gun_attachment/rail = 1, @@ -11,9 +11,9 @@ ) generate_items_inside(items_inside,src) -/obj/item/storage/secure/briefcase/white/mcr_loadout/scatter +/obj/item/storage/briefcase/secure/white/mcr_loadout/scatter -/obj/item/storage/secure/briefcase/white/mcr_loadout/scatter/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_loadout/scatter/PopulateContents() var/static/items_inside = list( /obj/item/microfusion_gun_attachment/barrel/scatter = 1, /obj/item/microfusion_gun_attachment/rail = 1, @@ -21,9 +21,9 @@ ) generate_items_inside(items_inside,src) -/obj/item/storage/secure/briefcase/white/mcr_loadout/lance +/obj/item/storage/briefcase/secure/white/mcr_loadout/lance -/obj/item/storage/secure/briefcase/white/mcr_loadout/lance/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_loadout/lance/PopulateContents() var/static/items_inside = list( /obj/item/microfusion_gun_attachment/barrel/lance = 1, /obj/item/microfusion_gun_attachment/scope = 1, @@ -31,9 +31,9 @@ ) generate_items_inside(items_inside,src) -/obj/item/storage/secure/briefcase/white/mcr_loadout/repeater +/obj/item/storage/briefcase/secure/white/mcr_loadout/repeater -/obj/item/storage/secure/briefcase/white/mcr_loadout/repeater/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_loadout/repeater/PopulateContents() var/static/items_inside = list( /obj/item/microfusion_gun_attachment/barrel/repeater = 1, /obj/item/microfusion_gun_attachment/rail = 1, @@ -41,9 +41,9 @@ ) generate_items_inside(items_inside,src) -/obj/item/storage/secure/briefcase/white/mcr_loadout/tacticool +/obj/item/storage/briefcase/secure/white/mcr_loadout/tacticool -/obj/item/storage/secure/briefcase/white/mcr_loadout/tacticool/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_loadout/tacticool/PopulateContents() var/static/items_inside = list( /obj/item/microfusion_gun_attachment/barrel/suppressor = 1, /obj/item/microfusion_gun_attachment/rail = 1, @@ -54,30 +54,30 @@ // Phase emitter and cell upgrades -/obj/item/storage/secure/briefcase/white/mcr_parts +/obj/item/storage/briefcase/secure/white/mcr_parts name = "Microfusion Parts Kit" -/obj/item/storage/secure/briefcase/white/mcr_parts/enhanced +/obj/item/storage/briefcase/secure/white/mcr_parts/enhanced -/obj/item/storage/secure/briefcase/white/mcr_parts/enhanced/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_parts/enhanced/PopulateContents() var/static/items_inside = list( /obj/item/stock_parts/cell/microfusion/enhanced = 1, /obj/item/microfusion_phase_emitter/enhanced = 1, ) generate_items_inside(items_inside,src) -/obj/item/storage/secure/briefcase/white/mcr_parts/advanced +/obj/item/storage/briefcase/secure/white/mcr_parts/advanced -/obj/item/storage/secure/briefcase/white/mcr_parts/advanced/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_parts/advanced/PopulateContents() var/static/items_inside = list( /obj/item/stock_parts/cell/microfusion/advanced = 1, /obj/item/microfusion_phase_emitter/advanced = 1, ) generate_items_inside(items_inside,src) -/obj/item/storage/secure/briefcase/white/mcr_parts/bluespace +/obj/item/storage/briefcase/secure/white/mcr_parts/bluespace -/obj/item/storage/secure/briefcase/white/mcr_parts/bluespace/PopulateContents() +/obj/item/storage/briefcase/secure/white/mcr_parts/bluespace/PopulateContents() var/static/items_inside = list( /obj/item/stock_parts/cell/microfusion/bluespace = 1, /obj/item/microfusion_phase_emitter/bluespace = 1, diff --git a/modular_skyrat/modules/contractor/code/datums/contract.dm b/modular_skyrat/modules/contractor/code/datums/contract.dm index 7d57f029f84..8a5f702b6c5 100644 --- a/modular_skyrat/modules/contractor/code/datums/contract.dm +++ b/modular_skyrat/modules/contractor/code/datums/contract.dm @@ -173,7 +173,7 @@ [owner_id.registered_account.account_balance] credits.", TRUE) else to_chat(contract.owner.current, span_notice("A briefcase appears at your feet!")) - var/obj/item/storage/secure/briefcase/case = new(get_turf(contract.owner.current)) + var/obj/item/storage/briefcase/secure/case = new(get_turf(contract.owner.current)) for(var/i in 1 to (round((ransom * CONTRACTOR_RANSOM_CUT) / 1000))) // Gets slightly less/more but whatever new /obj/item/stack/spacecash/c1000(case) diff --git a/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_inhands.dm b/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_inhands.dm index 246219c6d7e..7d3cb8ff756 100644 --- a/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_inhands.dm +++ b/modular_skyrat/modules/loadouts/loadout_items/loadout_datum_inhands.dm @@ -41,7 +41,7 @@ GLOBAL_LIST_INIT(loadout_inhand_items, generate_loadout_items(/datum/loadout_ite /datum/loadout_item/inhand/briefcase_secure name = "Secure Briefcase" - item_path = /obj/item/storage/secure/briefcase + item_path = /obj/item/storage/briefcase/secure /datum/loadout_item/inhand/skub name = "Skub" diff --git a/modular_skyrat/modules/modular_vending/code/games.dm b/modular_skyrat/modules/modular_vending/code/games.dm index 99edcdb796c..431425433a9 100644 --- a/modular_skyrat/modules/modular_vending/code/games.dm +++ b/modular_skyrat/modules/modular_vending/code/games.dm @@ -4,7 +4,7 @@ "name" = "Toys", "icon" = "hat-wizard", "products" = list( - /obj/item/storage/secure/briefcase/white/wargame_kit = 3, + /obj/item/storage/briefcase/secure/white/wargame_kit = 3, ), ), list( diff --git a/modular_skyrat/modules/more_briefcases/code/briefcases.dm b/modular_skyrat/modules/more_briefcases/code/briefcases.dm index c78c7e3e50f..42fe203ee8c 100644 --- a/modular_skyrat/modules/more_briefcases/code/briefcases.dm +++ b/modular_skyrat/modules/more_briefcases/code/briefcases.dm @@ -25,28 +25,28 @@ name = "engineering briefcase" icon_state = "briefcase_eng" -/obj/item/storage/secure/briefcase +/obj/item/storage/briefcase/secure icon = 'modular_skyrat/modules/more_briefcases/icons/briefcases.dmi' inhand_icon_state = "sec-case" icon_state = "briefcase_secure_black" -/obj/item/storage/secure/briefcase/attack_self(mob/user) +/obj/item/storage/briefcase/secure/attack_self(mob/user) . = ..() update_appearance() -/obj/item/storage/secure/briefcase/update_overlays() +/obj/item/storage/briefcase/secure/update_overlays() . = ..() if(atom_storage?.locked) . += "briefcase_locked" else . += "briefcase_open" -/obj/item/storage/secure/briefcase/update_icon_state() +/obj/item/storage/briefcase/secure/update_icon_state() . = ..() // Remove icon state functionality in favor of the overlays above. icon_state = "[initial(icon_state)]" -/obj/item/storage/secure/briefcase/white +/obj/item/storage/briefcase/secure/white name = "white secure briefcase" icon_state = "briefcase_secure_white" inhand_icon_state = "lockbox" diff --git a/modular_skyrat/modules/wargame_projectors/code/game_kit.dm b/modular_skyrat/modules/wargame_projectors/code/game_kit.dm index fa9f51d8aa8..d5d57a09427 100644 --- a/modular_skyrat/modules/wargame_projectors/code/game_kit.dm +++ b/modular_skyrat/modules/wargame_projectors/code/game_kit.dm @@ -4,12 +4,12 @@ description = "more than enough space for a quick bout of naval warfare" mappath = "_maps/skyrat/holodeck_wargame.dmm" -/obj/item/storage/secure/briefcase/white/wargame_kit +/obj/item/storage/briefcase/secure/white/wargame_kit name = "DIY Wargaming Kit" desc = "Contains everything an aspiring naval officer (or just massive nerd) would need for a proper modern naval wargame." custom_premium_price = PAYCHECK_CREW * 2 -/obj/item/storage/secure/briefcase/white/wargame_kit/PopulateContents() +/obj/item/storage/briefcase/secure/white/wargame_kit/PopulateContents() var/static/items_inside = list( /obj/item/wargame_projector/ships = 1, /obj/item/wargame_projector/ships/red = 1, diff --git a/tgstation.dme b/tgstation.dme index e94859689d3..d0a94c7a041 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -1166,6 +1166,7 @@ #include "code\datums\components\light_eater.dm" #include "code\datums\components\ling_decoy_brain.dm" #include "code\datums\components\lock_on_cursor.dm" +#include "code\datums\components\lockable_storage.dm" #include "code\datums\components\magnet.dm" #include "code\datums\components\manual_blinking.dm" #include "code\datums\components\manual_breathing.dm" @@ -2562,7 +2563,6 @@ #include "code\game\objects\items\storage\holsters.dm" #include "code\game\objects\items\storage\lockbox.dm" #include "code\game\objects\items\storage\medkit.dm" -#include "code\game\objects\items\storage\secure.dm" #include "code\game\objects\items\storage\sixpack.dm" #include "code\game\objects\items\storage\storage.dm" #include "code\game\objects\items\storage\toolbox.dm" @@ -2644,6 +2644,7 @@ #include "code\game\objects\structures\railings.dm" #include "code\game\objects\structures\reflector.dm" #include "code\game\objects\structures\safe.dm" +#include "code\game\objects\structures\secure_safe.dm" #include "code\game\objects\structures\showcase.dm" #include "code\game\objects\structures\shower.dm" #include "code\game\objects\structures\spawner.dm" diff --git a/tgui/packages/tgui/interfaces/LockedSafe.tsx b/tgui/packages/tgui/interfaces/LockedSafe.tsx new file mode 100644 index 00000000000..9b58e4cf6c6 --- /dev/null +++ b/tgui/packages/tgui/interfaces/LockedSafe.tsx @@ -0,0 +1,37 @@ +import { BooleanLike } from 'common/react'; +import { useBackend } from '../backend'; +import { Box, Flex } from '../components'; +import { Window } from '../layouts'; +import { NukeKeypad } from './NuclearBomb'; + +type Data = { + input_code: string; + locked: BooleanLike; + lock_set: BooleanLike; + lock_code: BooleanLike; +}; + +export const LockedSafe = (props, context) => { + const { act, data } = useBackend(context); + const { input_code, locked, lock_code } = data; + return ( + + + + + {input_code} + + + {!lock_code && 'No password set.'} + {!!lock_code && (!locked ? 'Unlocked' : 'Locked')} + + + + + + + + + + ); +}; diff --git a/tgui/packages/tgui/interfaces/NuclearBomb.js b/tgui/packages/tgui/interfaces/NuclearBomb.js index 741b1bc5b07..e44bda9233a 100644 --- a/tgui/packages/tgui/interfaces/NuclearBomb.js +++ b/tgui/packages/tgui/interfaces/NuclearBomb.js @@ -7,7 +7,7 @@ import { Window } from '../layouts'; // and hand made width sets that changing pretty much anything // is going to require a lot of tweaking it get it looking correct again // I'm sorry, but it looks bangin -const NukeKeypad = (props, context) => { +export const NukeKeypad = (props, context) => { const { act } = useBackend(context); const keypadKeys = [ ['1', '4', '7', 'C'], diff --git a/tools/UpdatePaths/Scripts/79594_secure_briefcase_and_safe.txt b/tools/UpdatePaths/Scripts/79594_secure_briefcase_and_safe.txt new file mode 100644 index 00000000000..dddcc1bebc5 --- /dev/null +++ b/tools/UpdatePaths/Scripts/79594_secure_briefcase_and_safe.txt @@ -0,0 +1,8 @@ +# turns the old secure briefcases into regular briefcase items + +/obj/item/storage/secure/briefcase : /obj/item/storage/briefcase/secure{@OLD} +/obj/item/storage/secure/briefcase/@SUBTYPES : /obj/item/storage/briefcase/secure/@SUBTYPES{@OLD} + +# repaths secure safes to the new structure made for it. + +/obj/item/storage/secure/safe/@SUBTYPES : /obj/structure/secure_safe/@SUBTYPES{@OLD}