diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 5056d281fd..3a253d09c4 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -49,10 +49,12 @@ cameranet.removeCamera(src) stat |= EMPED SetLuminosity(0) + triggerCameraAlarm() spawn(900) network = initial(network) icon_state = initial(icon_state) stat &= ~EMPED + cancelCameraAlarm() if(can_use()) cameranet.addCamera(src) for(var/mob/O in mob_list) @@ -99,9 +101,11 @@ // DECONSTRUCTION if(isscrewdriver(W)) - if(toggle_panel(user)) - user.visible_message("[user] screws the camera's panel [panel_open ? "open" : "closed"]!", - "You screw the camera's panel [panel_open ? "open" : "closed"].") + //user << "You start to [panel_open ? "close" : "open"] the camera's panel." + //if(toggle_panel(user)) // No delay because no one likes screwdrivers trying to be hip and have a duration cooldown + panel_open = !panel_open + user.visible_message("[user] screws the camera's panel [panel_open ? "open" : "closed"]!", + "You screw the camera's panel [panel_open ? "open" : "closed"].") else if((iswirecutter(W) || ismultitool(W)) && panel_open) interact(user) @@ -196,20 +200,20 @@ /obj/machinery/camera/proc/triggerCameraAlarm() alarm_on = 1 for(var/mob/living/silicon/S in mob_list) - S.triggerAlarm("Camera", get_area(src), src) + S.triggerAlarm("Camera", get_area(src), list(src), src) /obj/machinery/camera/proc/cancelCameraAlarm() alarm_on = 0 for(var/mob/living/silicon/S in mob_list) - S.cancelAlarm("Camera", get_area(src), src) + S.cancelAlarm("Camera", get_area(src), list(src), src) /obj/machinery/camera/proc/toggle_panel(var/mob/user) if(busy) return 0 playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) busy = 1 - if(do_after(user, 50)) + if(do_after(user, 30)) panel_open = !panel_open busy = 0 return 1 @@ -276,10 +280,11 @@ return 0 // Do after stuff here + user << "You start to weld the [src].." playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) WT.eyecheck(user) busy = 1 - if(do_after(user, 20)) + if(do_after(user, 100)) busy = 0 if(!WT.isOn()) return 0 diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index b8e46ef1c4..375b54529a 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -139,7 +139,7 @@ if(!WT.isOn()) return 0 - // Do after stuff here + user << "You start to weld the [src].." playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) WT.eyecheck(user) busy = 1 diff --git a/code/game/machinery/camera/motion.dm b/code/game/machinery/camera/motion.dm index 1e5d2ac93a..64fa7e48f4 100644 --- a/code/game/machinery/camera/motion.dm +++ b/code/game/machinery/camera/motion.dm @@ -11,7 +11,7 @@ /obj/machinery/camera/process() // motion camera event loop if(!isMotion()) - ..() + . = PROCESS_KILL return if (detectTime > 0) var/elapsed = world.time - detectTime diff --git a/code/game/machinery/camera/wires.dm b/code/game/machinery/camera/wires.dm index ed2d7cdbac..de96b11eb2 100644 --- a/code/game/machinery/camera/wires.dm +++ b/code/game/machinery/camera/wires.dm @@ -94,10 +94,7 @@ light_disabled = !light_disabled if(CAMERA_WIRE_ALARM) - if(prob(80)) - src.visible_message("\icon[src] *beep*", "\icon[src] *beep*") - else - triggerCameraAlarm() + src.visible_message("\icon[src] *beep*", "\icon[src] *beep*") src.interact(usr) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 7426ac6416..5c14608653 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -440,10 +440,10 @@ /mob/living/silicon/ai/proc/switchCamera(var/obj/machinery/camera/C) src.cameraFollow = null - if (!C || stat == 2 || !C.can_use()) - //machine = null - //reset_view(null) + + if (!C || stat == 2) //C.can_use()) return 0 + if(!src.eyeobj) core() return diff --git a/html/changelog.html b/html/changelog.html index ef115bb670..35d582a459 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -50,14 +50,25 @@ should be listed in the changelog upon commit tho. Thanks. -->