From 11f250dfd58c4e16dc2d40d345bd596210312f29 Mon Sep 17 00:00:00 2001 From: forest2001 Date: Mon, 27 May 2024 22:45:41 +0100 Subject: [PATCH] WJ cameras --- code/__DEFINES/objects.dm | 1 + code/game/camera_manager/camera_manager.dm | 3 +++ code/modules/clothing/under/marine_uniform.dm | 24 +++++++++++++++++++ 3 files changed, 28 insertions(+) diff --git a/code/__DEFINES/objects.dm b/code/__DEFINES/objects.dm index d839789d1664..26db2f3d2254 100644 --- a/code/__DEFINES/objects.dm +++ b/code/__DEFINES/objects.dm @@ -86,6 +86,7 @@ GLOBAL_LIST_INIT(RESTRICTED_CAMERA_NETWORKS, list( //Those networks can only be CAMERA_NET_LADDER, CAMERA_NET_COLONY, CAMERA_NET_OVERWATCH, + CAMERA_NET_ARES, )) #define STASIS_IN_BAG 1 diff --git a/code/game/camera_manager/camera_manager.dm b/code/game/camera_manager/camera_manager.dm index 95292830d49b..0a5f31e9b1f9 100644 --- a/code/game/camera_manager/camera_manager.dm +++ b/code/game/camera_manager/camera_manager.dm @@ -191,6 +191,9 @@ else if(istype(current.loc, /obj/item/clothing/head/helmet/marine)) var/obj/item/clothing/head/helmet/marine/helmet = current.loc cam_location = helmet.loc + else if(istype(current.loc, /obj/item/clothing/under/rank/synthetic/joe)) + var/obj/item/clothing/under/rank/synthetic/joe/uniform = current.loc + cam_location = uniform.loc // If we're not forcing an update for some reason and the cameras are in the same location, // we don't need to update anything. diff --git a/code/modules/clothing/under/marine_uniform.dm b/code/modules/clothing/under/marine_uniform.dm index 92eeea638fae..579cc12fc467 100644 --- a/code/modules/clothing/under/marine_uniform.dm +++ b/code/modules/clothing/under/marine_uniform.dm @@ -998,6 +998,30 @@ desc = "A cheap uniform made for Synthetic labor. Tomorrow, Together." icon_state = "working_joe" worn_state = "working_joe" + var/obj/structure/machinery/camera/camera + +/obj/item/clothing/under/rank/synthetic/joe/Initialize() + . = ..() + camera = new /obj/structure/machinery/camera/autoname/almayer/containment/ares(src) + +/obj/item/clothing/under/rank/synthetic/joe/Destroy() + QDEL_NULL(camera) + return ..() + +/obj/item/clothing/under/rank/synthetic/joe/equipped(mob/living/carbon/human/mob, slot) + if(camera) + camera.c_tag = mob.name + ..() + +/obj/item/clothing/under/rank/synthetic/joe/dropped(mob/living/carbon/human/mob) + if(camera) + camera.c_tag = "3RR0R" + ..() + +/obj/item/clothing/under/rank/synthetic/joe/get_examine_text(mob/user) + . = ..() + if(camera) + . += SPAN_ORANGE("There is a small camera mounted to the front.") /obj/item/clothing/under/rank/synthetic/joe/engi name = "\improper Working Joe Hazardous Uniform"