diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index e27fb1d48e5..facc0da16c2 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -17,6 +17,7 @@ var/invuln = null var/bugged = 0 var/obj/item/weapon/camera_assembly/assembly = null + var/watcherslist = list() // WIRES var/wires = 63 // 0b111111 diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index fae511e68ac..f6c834036e9 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -46,7 +46,7 @@ for(var/obj/machinery/camera/C in L) if(can_access_camera(C)) D[text("[][]", C.c_tag, (C.status ? null : " (Deactivated)"))] = C - + C.watcherslist -= user var/t = input(user, "Which camera should you change to?") as null|anything in D if(!t) user.unset_machine() @@ -59,6 +59,7 @@ return 0 if(C) + C.watcherslist += user switch_to_camera(user, C) spawn(5) attack_hand(user) diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index f4e74d2848d..2f58c5bb0a8 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -281,6 +281,7 @@ var/icon_on = "videocam_on" var/icon_off = "videocam" var/canhear_range = 7 + var/watcherslist = list() /obj/item/device/videocam/attack_self(mob/user) on = !on @@ -310,4 +311,6 @@ /obj/item/device/videocam/hear_talk(mob/M as mob, msg) if (camera && on) if(get_dist(src, M) <= canhear_range) - talk_into(M, msg) \ No newline at end of file + talk_into(M, msg) + for(var/mob/living/carbon/human/H in watcherslist) + H.show_message(text("\blue (Newscaster) [] says, '[]'",M,msg), 1) \ No newline at end of file