diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 0631095fab2..72faedec4c6 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -44,6 +44,24 @@ name = "Circuit board (Camera Monitor)" build_path = /obj/machinery/computer/security origin_tech = "programming=2;combat=2" + +/obj/item/weapon/circuitboard/camera/telescreen + name = "Circuit board (Telescreen)" + build_path = /obj/machinery/computer/security/telescreen +/obj/item/weapon/circuitboard/camera/telescreen/entertainment + name = "Circuit board (Entertainment Monitor)" + build_path = /obj/machinery/computer/security/telescreen/entertainment +/obj/item/weapon/circuitboard/camera/wooden_tv + name = "Circuit board (Wooden TV)" + build_path = /obj/machinery/computer/security/wooden_tv +/obj/item/weapon/circuitboard/camera/mining + name = "Circuit board (Outpost Camera Monitor)" + build_path = /obj/machinery/computer/security/mining +/obj/item/weapon/circuitboard/camera/engineering + name = "Circuit board (Engineering Camera Monitor)" + build_path = /obj/machinery/computer/security/engineering + + /obj/item/weapon/circuitboard/xenobiology name = "Circuit board (Xenobiology Console)" build_path = /obj/machinery/computer/camera_advanced/xenobio diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 36647ebfc16..4235fa2a9ef 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -87,6 +87,25 @@ else ..() +/obj/machinery/computer/security/telescreen/attackby(obj/item/I, mob/user, params) + if(ismultitool(I)) + var/direction = input(user, "Which direction?", "Select direction!") as null|anything in list("North", "East", "South", "West", "Centre") + if(!direction || !Adjacent(user)) + return + pixel_x = 0 + pixel_y = 0 + switch(direction) + if("North") + pixel_y = 32 + if("East") + pixel_x = 32 + if("South") + pixel_y = -32 + if("West") + pixel_x = -32 + else + ..() + /obj/machinery/computer/security/emag_act(user as mob) if(!emagged) emagged = 1 @@ -293,39 +312,36 @@ // Other computer monitors. /obj/machinery/computer/security/telescreen - name = "\improper Telescreen" + name = "telescreen" desc = "Used for watching camera networks." - icon = 'icons/obj/stationobjs.dmi' - icon_state = "telescreen" + icon_state = "telescreen_console" + icon_screen = "telescreen" + icon_keyboard = null light_range_on = 0 - network = list("SS13") density = 0 - -/obj/machinery/computer/security/telescreen/update_icon() - icon_state = initial(icon_state) - if(stat & BROKEN) - icon_state += "b" - return + circuit = /obj/item/weapon/circuitboard/camera/telescreen /obj/machinery/computer/security/telescreen/entertainment name = "entertainment monitor" desc = "Damn, they better have Paradise TV on these things." - icon = 'icons/obj/status_display.dmi' - icon_state = "entertainment" + icon_state = "entertainment_console" + icon_screen = "entertainment" light_color = "#FFEEDB" light_range_on = 0 network = list("news") luminosity = 0 + circuit = /obj/item/weapon/circuitboard/camera/telescreen/entertainment /obj/machinery/computer/security/wooden_tv name = "security camera monitor" - desc = "An old TV hooked into the stations camera network." + desc = "An old TV hooked into the station's camera network." icon_state = "television" icon_keyboard = null icon_screen = "detective_tv" light_color = "#3848B3" light_power_on = 0.5 network = list("SS13") + circuit = /obj/item/weapon/circuitboard/camera/wooden_tv /obj/machinery/computer/security/mining name = "outpost camera monitor" @@ -334,6 +350,7 @@ icon_screen = "mining" light_color = "#F9BBFC" network = list("Mining Outpost") + circuit = /obj/item/weapon/circuitboard/camera/mining /obj/machinery/computer/security/engineering name = "engineering camera monitor" @@ -342,3 +359,4 @@ icon_screen = "engie_cams" light_color = "#FAC54B" network = list("Power Alarms","Atmosphere Alarms","Fire Alarms") + circuit = /obj/item/weapon/circuitboard/camera/engineering \ No newline at end of file diff --git a/icons/obj/computer.dmi b/icons/obj/computer.dmi index bbb00650479..4acb2365530 100644 Binary files a/icons/obj/computer.dmi and b/icons/obj/computer.dmi differ diff --git a/icons/obj/stationobjs.dmi b/icons/obj/stationobjs.dmi index fd89b23d19d..7c73065fb74 100755 Binary files a/icons/obj/stationobjs.dmi and b/icons/obj/stationobjs.dmi differ diff --git a/icons/obj/status_display.dmi b/icons/obj/status_display.dmi index a2dbd15e2f0..b131da89349 100644 Binary files a/icons/obj/status_display.dmi and b/icons/obj/status_display.dmi differ