From 8db0c49269e6a261576b4477e2da5514f3f036b9 Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:16:29 -0500 Subject: [PATCH 01/38] test change --- code/modules/projectiles/guns/energy.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 1f595e994902..f626a46e8dcd 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -44,7 +44,7 @@ "y" = 18, ) ) - +//TEST CHANGE /obj/item/gun/energy/emp_act(severity) . = ..() if(!(. & EMP_PROTECT_CONTENTS)) From 599b94d6bf50438b6f40bc314468a7a919ad21e4 Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Thu, 26 Dec 2024 20:05:22 -0500 Subject: [PATCH 02/38] IT WORKS. Network switching is now doable. TODO: Fix UI layout, add ability to input networks after copying them from cameras, add ability to change networks on installed cameras, implement BodyCameras and Watchdog system --- code/game/machinery/computer/camera.dm | 8 +++++ .../packages/tgui/interfaces/CameraConsole.js | 32 ++++++++++++++++++- 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 50ed20ae619e..bcba5f4e0958 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -7,6 +7,7 @@ light_color = COLOR_SOFT_RED var/list/network = list("ss13") + var/tempNetwork = list("") var/obj/machinery/camera/active_camera var/list/concurrent_users = list() @@ -127,6 +128,13 @@ if(.) return + if(action == "set_network") + network = tempNetwork + + + if(action == "set_temp_network") + tempNetwork = params["name"] + if(action == "switch_camera") var/c_tag = params["name"] var/list/cameras = get_available_cameras() diff --git a/tgui/packages/tgui/interfaces/CameraConsole.js b/tgui/packages/tgui/interfaces/CameraConsole.js index 5af1f139c3cb..6f0682db077f 100644 --- a/tgui/packages/tgui/interfaces/CameraConsole.js +++ b/tgui/packages/tgui/interfaces/CameraConsole.js @@ -49,14 +49,20 @@ export const CameraConsole = (props, context) => {
+
+
+ Network: + {(data.network) || '—'} + {"\n"} Camera: {(activeCamera && activeCamera.name) || '—'}
+
-
Network: {(data.network) || '—'} @@ -62,7 +61,6 @@ export const CameraConsole = (props, context) => { Camera: {(activeCamera && activeCamera.name) || '—'}
-
+ Network: + {(data.network) || '—'} + {"\n"} Camera: {(activeCamera && activeCamera.name) || '—'}
From 8945b3cb07dc842565e3653dfdd29ee720d1fc61 Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Tue, 31 Dec 2024 22:38:49 -0500 Subject: [PATCH 11/38] adds a supply kit for a bodycamera --- code/modules/cargo/packs/tools.dm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/code/modules/cargo/packs/tools.dm b/code/modules/cargo/packs/tools.dm index 857477bcf922..593a0416f1b8 100644 --- a/code/modules/cargo/packs/tools.dm +++ b/code/modules/cargo/packs/tools.dm @@ -39,6 +39,14 @@ /obj/item/clothing/glasses/meson/engine) crate_name = "engineering gear crate" +/datum/supply_pack/tools/bodycamera + name = "Bodycamera Crate" + desc = "Contains a bodycamera, so you can keep track of your workers at all times." + cost = 200 + contains = list(/obj/item/bodycamera, + ) + crate_name = "bodycamera crate" + /datum/supply_pack/tools/assbelt name = "Assault Belt" desc = "Contains an assault belt, with not one, not two, but six pockets." From b08313c6eaef8670aa47f9043e7ad6ebd4667ba9 Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Tue, 31 Dec 2024 22:55:32 -0500 Subject: [PATCH 12/38] whooops --- .../modular_computers/file_system/programs/secureye.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/modules/modular_computers/file_system/programs/secureye.dm b/code/modules/modular_computers/file_system/programs/secureye.dm index 3b40f9f8fae5..2143ed93ad18 100644 --- a/code/modules/modular_computers/file_system/programs/secureye.dm +++ b/code/modules/modular_computers/file_system/programs/secureye.dm @@ -180,7 +180,9 @@ // we don't need to update anything. // Most security cameras will end here as they're not moving. if(istype(active_camera, /obj/machinery/camera)) - return + var/newturf = get_turf(cam_location) + if(last_camera_turf == newturf) + return // Cameras that get here are moving, and are likely attached to some moving atom such as cyborgs. last_camera_turf = get_turf(cam_location) From efc541661b6790e7aa905b87b327715b9ac24bdd Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Tue, 31 Dec 2024 23:23:32 -0500 Subject: [PATCH 13/38] examine_more change --- code/game/objects/items/bodycamera.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/game/objects/items/bodycamera.dm b/code/game/objects/items/bodycamera.dm index 048e733ecd05..0097bcc2b45b 100644 --- a/code/game/objects/items/bodycamera.dm +++ b/code/game/objects/items/bodycamera.dm @@ -37,6 +37,9 @@ /obj/item/bodycamera/examine(mob/user) . += ..() . += "The body camera is currently [status ? "ON" : "OFF"]. Ctrl-Click to toggle its status." + . += "It looks like you can check its menu to see its assigned nametag and network by examining closer..." + +/obj/item/bodycamera/examine_more(mob/user) . += "The body camera is set to a nametag of '[c_tag]'. Use a multitool on [src] in order to set a new nametag." . += "The body camera is set to transmit on the '[network[1]]' network. Use a multitool on [src] in order to set it to transmit across a different network." From a2e5b9b1fb063e21c1f6de67c618d0f850e5bdb6 Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Tue, 31 Dec 2024 23:35:49 -0500 Subject: [PATCH 14/38] potentially satisfies linters, fixes examine_more --- code/game/objects/items/bodycamera.dm | 1 + tgui/packages/tgui/interfaces/CameraConsole.js | 2 +- tgui/packages/tgui/interfaces/NtosSecurEye.js | 8 ++------ 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/code/game/objects/items/bodycamera.dm b/code/game/objects/items/bodycamera.dm index 0097bcc2b45b..c16c3e55701b 100644 --- a/code/game/objects/items/bodycamera.dm +++ b/code/game/objects/items/bodycamera.dm @@ -40,6 +40,7 @@ . += "It looks like you can check its menu to see its assigned nametag and network by examining closer..." /obj/item/bodycamera/examine_more(mob/user) + . += ..() . += "The body camera is set to a nametag of '[c_tag]'. Use a multitool on [src] in order to set a new nametag." . += "The body camera is set to transmit on the '[network[1]]' network. Use a multitool on [src] in order to set it to transmit across a different network." diff --git a/tgui/packages/tgui/interfaces/CameraConsole.js b/tgui/packages/tgui/interfaces/CameraConsole.js index b4f3084a2f52..ab2abe3e2c61 100644 --- a/tgui/packages/tgui/interfaces/CameraConsole.js +++ b/tgui/packages/tgui/interfaces/CameraConsole.js @@ -108,7 +108,7 @@ export const CameraConsoleContent = (props, context) => { placeholder="Enter a network" onInput={(e, value) => act('set_temp_network', { - name: value + name: value, }) } /> diff --git a/tgui/packages/tgui/interfaces/NtosSecurEye.js b/tgui/packages/tgui/interfaces/NtosSecurEye.js index 05ef5b0100bc..615835ab760a 100644 --- a/tgui/packages/tgui/interfaces/NtosSecurEye.js +++ b/tgui/packages/tgui/interfaces/NtosSecurEye.js @@ -1,9 +1,5 @@ -import { filter, sortBy } from 'common/collections'; -import { flow } from 'common/fp'; -import { classes } from 'common/react'; -import { createSearch } from 'common/string'; -import { useBackend, useLocalState } from '../backend'; -import { Button, ByondUi, Input, Section, Flex } from '../components'; +import { useBackend } from '../backend'; +import { Button, ByondUi } from '../components'; import { NtosWindow } from '../layouts'; import { prevNextCamera, From 737f3755260e1775f12b0d7bd01407e37cb74d71 Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Tue, 31 Dec 2024 23:49:59 -0500 Subject: [PATCH 15/38] removes two characters that the linters loathed --- tgui/packages/tgui/interfaces/NtosSecurEye.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tgui/packages/tgui/interfaces/NtosSecurEye.js b/tgui/packages/tgui/interfaces/NtosSecurEye.js index 615835ab760a..5c5c9d29062a 100644 --- a/tgui/packages/tgui/interfaces/NtosSecurEye.js +++ b/tgui/packages/tgui/interfaces/NtosSecurEye.js @@ -24,8 +24,8 @@ export const NtosSecurEye = (props, context) => {
Network: - {(data.network) || '—'} - {"\n"} + {data.network || '—'} + {'\n'} Camera: {(activeCamera && activeCamera.name) || '—'}
From 6898438a54cc268cd31b776e94489680b7b052da Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Tue, 31 Dec 2024 23:56:38 -0500 Subject: [PATCH 16/38] attempts to satisfy the linter lords again --- .../packages/tgui/interfaces/CameraConsole.js | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/tgui/packages/tgui/interfaces/CameraConsole.js b/tgui/packages/tgui/interfaces/CameraConsole.js index ab2abe3e2c61..b19ab142d9d6 100644 --- a/tgui/packages/tgui/interfaces/CameraConsole.js +++ b/tgui/packages/tgui/interfaces/CameraConsole.js @@ -49,15 +49,14 @@ export const CameraConsole = (props, context) => {
-
Network: - {(data.network) || '—'} - {"\n"} + {data.network || '—'} + {'\n'} Camera: {(activeCamera && activeCamera.name) || '—'}
@@ -112,18 +111,8 @@ export const CameraConsoleContent = (props, context) => { }) } /> -