From 4697b01241da05c697a3c94fddcb2e88f0dae177 Mon Sep 17 00:00:00 2001 From: warriorstar-orion Date: Wed, 12 Jun 2024 14:22:46 -0400 Subject: [PATCH] ID-lock Theta equipment in indestructible crates. (#25660) * ID-lock Theta equipment in indestructible crates. * Update code/modules/awaymissions/mission_code/ruins/oldstation.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Signed-off-by: warriorstar-orion * Update code/modules/power/cables/cable_coil.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Signed-off-by: warriorstar-orion --------- Signed-off-by: warriorstar-orion Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> --- .../RandomRuins/SpaceRuins/oldstation.dmm | 84 +++++---------- code/__DEFINES/access_defines.dm | 1 + .../items/stacks/sheets/sheet_types.dm | 3 + .../structures/crates_lockers/crates.dm | 6 +- .../mission_code/ruins/oldstation.dm | 99 +++++++++++++++++- code/modules/power/cables/cable_coil.dm | 9 +- icons/obj/crates.dmi | Bin 13347 -> 13870 bytes 7 files changed, 141 insertions(+), 61 deletions(-) diff --git a/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm b/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm index 8906385eba1..d43d55fb9b9 100644 --- a/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm +++ b/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm @@ -594,17 +594,7 @@ /area/ruin/ancientstation/thetacorridor) "bT" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/item/circular_saw, -/obj/item/retractor, -/obj/item/hemostat, -/obj/item/scalpel, -/obj/item/cautery, -/obj/item/FixOVein, -/obj/item/surgicaldrill, -/obj/item/bonegel, -/obj/item/bonesetter, -/obj/item/stack/medical/bruise_pack/advanced, +/obj/structure/closet/crate/secure/oldstation/surgery, /turf/simulated/floor/plating, /area/ruin/ancientstation/thetacorridor) "bU" = ( @@ -1266,7 +1256,6 @@ "dL" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, -/obj/machinery/recharger, /turf/simulated/floor/plasteel{ dir = 10; icon_state = "blue" @@ -1372,6 +1361,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/power/apc/off_station/empty_charge/directional/east, +/obj/structure/closet/crate/secure/oldstation/rechargers, /turf/simulated/floor/plating, /area/ruin/ancientstation/comm) "dY" = ( @@ -1408,16 +1398,6 @@ /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel/white, /area/ruin/ancientstation/rnd) -"ec" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/computer/rdconsole/public, -/turf/simulated/floor/plasteel/white, -/area/ruin/ancientstation/rnd) -"ed" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/r_n_d/destructive_analyzer, -/turf/simulated/floor/plasteel/white, -/area/ruin/ancientstation/rnd) "ee" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/mecha_part_fabricator, @@ -1470,7 +1450,6 @@ /area/ruin/ancientstation/betanorth) "el" = ( /obj/structure/table, -/obj/machinery/recharger, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel{ dir = 5; @@ -1755,17 +1734,6 @@ /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel, /area/ruin/ancientstation/thetacorridor) -"eT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/r_n_d/protolathe, -/turf/simulated/floor/plasteel/white, -/area/ruin/ancientstation/rnd) -"eU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/r_n_d/circuit_imprinter, -/obj/item/reagent_containers/dropper, -/turf/simulated/floor/plasteel/white, -/area/ruin/ancientstation/rnd) "eV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -2022,7 +1990,7 @@ }, /obj/machinery/door/airlock/external{ name = "Engineering External Access"; - req_one_access_txt = "271" + req_one_access_txt = "301" }, /turf/simulated/floor/plating, /area/ruin/ancientstation/engi) @@ -2431,6 +2399,7 @@ pixel_x = 2; pixel_y = -2 }, +/obj/item/reagent_containers/dropper, /turf/simulated/floor/plasteel, /area/ruin/ancientstation/rnd) "gh" = ( @@ -3077,7 +3046,7 @@ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ - req_one_access_txt = "271" + req_one_access_txt = "301" }, /turf/simulated/floor/plating, /area/ruin/ancientstation/thetacorridor) @@ -3155,7 +3124,7 @@ }, /obj/machinery/door/airlock/external{ name = "Engineering External Access"; - req_one_access_txt = "271" + req_one_access_txt = "301" }, /turf/simulated/floor/plating/airless, /area/ruin/ancientstation/engi) @@ -3873,7 +3842,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/highsecurity{ name = "Prototype Laboratory"; - req_access_txt = "271" + req_access_txt = "301" }, /turf/simulated/floor/plasteel{ icon_state = "whitehall" @@ -3884,7 +3853,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/highsecurity{ name = "Prototype Laboratory"; - req_access_txt = "271" + req_access_txt = "301" }, /turf/simulated/floor/plasteel{ icon_state = "whitehall" @@ -4343,7 +4312,9 @@ /turf/simulated/floor/plasteel/white, /area/ruin/ancientstation/proto) "kA" = ( -/obj/machinery/computer/nonfunctional, +/obj/machinery/computer/nonfunctional{ + dir = 1 + }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel/white, /area/ruin/ancientstation/proto) @@ -4796,13 +4767,8 @@ /obj/machinery/alarm/all_access/directional/west{ report_danger_level = 0 }, -/obj/structure/rack, -/obj/item/gun/energy/laser/retro/old{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/gun/energy/laser/retro/old, /obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate/secure/oldstation/security, /turf/simulated/floor/plasteel{ dir = 10; icon_state = "red" @@ -4893,17 +4859,20 @@ /turf/simulated/floor/plasteel, /area/ruin/ancientstation/thetacorridor) "lL" = ( -/obj/structure/rack, -/obj/item/clothing/suit/armor/vest/old, /obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/item/deck/cards{ + pixel_y = 5 + }, /turf/simulated/floor/plasteel{ icon_state = "red" }, /area/ruin/ancientstation/sec) "lM" = ( -/obj/structure/rack, -/obj/item/clothing/head/helmet/old, /obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 8 + }, /turf/simulated/floor/plasteel{ dir = 6; icon_state = "red" @@ -4959,6 +4928,11 @@ icon_state = "red" }, /area/ruin/ancientstation/sec) +"JF" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate/secure/oldstation/research, +/turf/simulated/floor/plasteel, +/area/ruin/ancientstation/rnd) "Lu" = ( /obj/structure/transit_tube/horizontal{ dir = 4 @@ -7989,7 +7963,7 @@ eb ex dE fm -gf +JF gy dG hg @@ -8033,9 +8007,9 @@ cp cN dj dE -ec dE -eT +dE +dE dE gg gy @@ -8081,9 +8055,9 @@ ev fz dj dE -ed dE -eU +dE +dE dE gh gy diff --git a/code/__DEFINES/access_defines.dm b/code/__DEFINES/access_defines.dm index 4043b927049..10443a7316c 100644 --- a/code/__DEFINES/access_defines.dm +++ b/code/__DEFINES/access_defines.dm @@ -110,3 +110,4 @@ //Ghost roles #define ACCESS_FREE_GOLEMS 300 +#define ACCESS_THETA_STATION 301 diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index d3876da9b1a..5c066edcbb1 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -159,6 +159,9 @@ GLOBAL_LIST_INIT(metal_recipes, list( /obj/item/stack/sheet/metal/cyborg/drone energy_type = /datum/robot_storage/energy/metal +/obj/item/stack/sheet/metal/ten + amount = 10 + /obj/item/stack/sheet/metal/fifty amount = 50 diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 56e0c837004..d2d6a69bca2 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -216,16 +216,18 @@ /obj/structure/closet/crate/secure/proc/togglelock(mob/user) if(opened) to_chat(user, "Close the crate first.") - return + return FALSE if(broken) to_chat(user, "The crate appears to be broken.") - return + return FALSE if(allowed(user)) locked = !locked visible_message("The crate has been [locked ? null : "un"]locked by [user].") update_icon() + return TRUE else to_chat(user, "Access Denied.") + return FALSE /obj/structure/closet/crate/secure/AltClick(mob/user) if(Adjacent(user) && !opened) diff --git a/code/modules/awaymissions/mission_code/ruins/oldstation.dm b/code/modules/awaymissions/mission_code/ruins/oldstation.dm index 2384a3668a9..48dfa356f44 100644 --- a/code/modules/awaymissions/mission_code/ruins/oldstation.dm +++ b/code/modules/awaymissions/mission_code/ruins/oldstation.dm @@ -15,7 +15,7 @@ desc = "A perfectly retrograde identification card. Looks like it could use some flavor." icon = 'icons/obj/card.dmi' icon_state = "retro" - access = list(ACCESS_AWAY01) + access = list(ACCESS_THETA_STATION) /obj/item/card/id/away/old/sec name = "Security Officer ID" @@ -329,6 +329,103 @@ name = "bromine bottle" list_reagents = list("bromine" = 30) +/// Secure Crates: Access locked to Theta crew. Cannot be moved, destroyed, +/// emagged or EMPed because gamers can't be trusted not to game. +/obj/structure/closet/crate/secure/oldstation + anchored = TRUE + resistance_flags = INDESTRUCTIBLE + req_access = list(ACCESS_THETA_STATION) + +/// Allow Theta crew to move the crates once unlocked so they don't get in the way +/obj/structure/closet/crate/secure/oldstation/togglelock(mob/user) + if(!..()) + return + + anchored = locked + + if(anchored) + to_chat(user, "The crate reanchors itself to the ground.") + else + to_chat(user, "The crate unanchors itself from the ground.") + +/obj/structure/closet/crate/secure/oldstation/emag_act(mob/user) + // var/can_be_emaged works in mysterious ways so screw it + return + +/obj/structure/closet/crate/secure/oldstation/emp_act(severity) + return + +/obj/structure/closet/crate/secure/oldstation/security + name = "security equipment crate" + desc = "A crate containing various security equipment." + icon_state = "secgearcrate" + icon_opened = "secgearcrate_open" + icon_closed = "secgearcrate" + +/obj/structure/closet/crate/secure/oldstation/security/populate_contents() + new /obj/item/gun/energy/laser/retro/old(src) + new /obj/item/gun/energy/laser/retro/old(src) + new /obj/item/clothing/suit/armor/vest/old(src) + new /obj/item/clothing/head/helmet/old(src) + +/obj/structure/closet/crate/secure/oldstation/rechargers + name = "recharger crate" + desc = "A crate containing the components to build weapon rechargers." + +/obj/structure/closet/crate/secure/oldstation/rechargers/populate_contents() + new /obj/item/circuitboard/recharger(src) + new /obj/item/circuitboard/recharger(src) + new /obj/item/stock_parts/capacitor(src) + new /obj/item/stock_parts/capacitor(src) + new /obj/item/stack/cable_coil/ten(src) + new /obj/item/stack/sheet/metal/ten(src) + new /obj/item/screwdriver(src) + +/obj/structure/closet/crate/secure/oldstation/research + name = "research crate" + desc = "A crate containing the components necessary to perform research." + icon_state = "scisecurecrate" + icon_opened = "scisecurecrate_open" + icon_closed = "scisecurecrate" + +/obj/structure/closet/crate/secure/oldstation/research/populate_contents() + new /obj/item/circuitboard/circuit_imprinter(src) + new /obj/item/circuitboard/destructive_analyzer(src) + new /obj/item/circuitboard/protolathe(src) + new /obj/item/circuitboard/rdconsole/public(src) + new /obj/item/reagent_containers/glass/beaker(src) + new /obj/item/reagent_containers/glass/beaker(src) + new /obj/item/reagent_containers/glass/beaker(src) + new /obj/item/reagent_containers/glass/beaker(src) + new /obj/item/stock_parts/manipulator(src) + new /obj/item/stock_parts/manipulator(src) + new /obj/item/stock_parts/manipulator(src) + new /obj/item/stock_parts/manipulator(src) + new /obj/item/stock_parts/matter_bin(src) + new /obj/item/stock_parts/matter_bin(src) + new /obj/item/stock_parts/matter_bin(src) + new /obj/item/stock_parts/micro_laser(src) + new /obj/item/stock_parts/scanning_module(src) + +/obj/structure/closet/crate/secure/oldstation/surgery + name = "surgery crate" + desc = "A crate containing surgical tools and equipment." + icon_state = "medicalsecurecrate" + icon_opened = "medicalsecurecrate_open" + icon_closed = "medicalsecurecrate" + +/obj/structure/closet/crate/secure/oldstation/surgery/populate_contents() + new /obj/item/circular_saw(src) + new /obj/item/retractor(src) + new /obj/item/hemostat(src) + new /obj/item/scalpel(src) + new /obj/item/cautery(src) + new /obj/item/FixOVein(src) + new /obj/item/surgicaldrill(src) + new /obj/item/bonegel(src) + new /obj/item/bonesetter(src) + new /obj/item/stack/medical/bruise_pack/advanced(src) + ////////////////////////////// // MARK: ENGINES ////////////////////////////// diff --git a/code/modules/power/cables/cable_coil.dm b/code/modules/power/cables/cable_coil.dm index 0396b5075c4..00d9767cea9 100644 --- a/code/modules/power/cables/cable_coil.dm +++ b/code/modules/power/cables/cable_coil.dm @@ -28,7 +28,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe/cable_restrain usesound = 'sound/items/deconstruct.ogg' toolspeed = 1 -/obj/item/stack/cable_coil/New(location, length = MAXCOIL, paramcolor = null) +/obj/item/stack/cable_coil/New(location, length, paramcolor) . = ..() if(paramcolor) color = paramcolor @@ -351,8 +351,11 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe/cable_restrain color = pick(COLOR_RED, COLOR_BLUE, COLOR_GREEN, COLOR_PINK, COLOR_YELLOW, COLOR_CYAN) return color -/obj/item/stack/cable_coil/five/New(loc, new_amount = 5, merge = TRUE, paramcolor = null) - ..() +/obj/item/stack/cable_coil/five + amount = 5 + +/obj/item/stack/cable_coil/ten + amount = 10 /obj/item/stack/cable_coil/yellow color = COLOR_YELLOW diff --git a/icons/obj/crates.dmi b/icons/obj/crates.dmi index 73b3af8ee83326d61e5fce45e9cc19180a2107be..55f02e339179dd0879d414a46dab84e810c4135a 100644 GIT binary patch literal 13870 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 wPRirIGGtC~0YwPATc`l#mW-q+{qFVqk{v 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