mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-16 09:34:21 +01:00
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 <orion@snowfrost.garden> * Update code/modules/power/cables/cable_coil.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Signed-off-by: warriorstar-orion <orion@snowfrost.garden> --------- Signed-off-by: warriorstar-orion <orion@snowfrost.garden> Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
c4cd57d7c8
commit
4697b01241
@@ -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
|
||||
|
||||
@@ -110,3 +110,4 @@
|
||||
|
||||
//Ghost roles
|
||||
#define ACCESS_FREE_GOLEMS 300
|
||||
#define ACCESS_THETA_STATION 301
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -216,16 +216,18 @@
|
||||
/obj/structure/closet/crate/secure/proc/togglelock(mob/user)
|
||||
if(opened)
|
||||
to_chat(user, "<span class='notice'>Close the crate first.</span>")
|
||||
return
|
||||
return FALSE
|
||||
if(broken)
|
||||
to_chat(user, "<span class='warning'>The crate appears to be broken.</span>")
|
||||
return
|
||||
return FALSE
|
||||
if(allowed(user))
|
||||
locked = !locked
|
||||
visible_message("<span class='notice'>The crate has been [locked ? null : "un"]locked by [user].</span>")
|
||||
update_icon()
|
||||
return TRUE
|
||||
else
|
||||
to_chat(user, "<span class='notice'>Access Denied.</span>")
|
||||
return FALSE
|
||||
|
||||
/obj/structure/closet/crate/secure/AltClick(mob/user)
|
||||
if(Adjacent(user) && !opened)
|
||||
|
||||
@@ -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, "<span class='info'>The crate reanchors itself to the ground.</span>")
|
||||
else
|
||||
to_chat(user, "<span class='info'>The crate unanchors itself from the ground.</span>")
|
||||
|
||||
/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
|
||||
//////////////////////////////
|
||||
|
||||
@@ -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
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 14 KiB |
Reference in New Issue
Block a user