From 01ee32329f514867ebf2dc5c9920c40ef9a236bd Mon Sep 17 00:00:00 2001 From: ShizCalev Date: Fri, 22 Mar 2019 11:49:56 -0400 Subject: [PATCH] [s] Fixes vents not logging the signal sender (#43272) * [s] Fixes vents not logging the signal sender * removed unused proc --- code/datums/wires/airalarm.dm | 6 +- .../atmospherics/machinery/airalarm.dm | 59 ++++++++----------- .../components/unary_devices/vent_pump.dm | 2 +- .../components/unary_devices/vent_scrubber.dm | 2 +- 4 files changed, 28 insertions(+), 41 deletions(-) diff --git a/code/datums/wires/airalarm.dm b/code/datums/wires/airalarm.dm index 9030adfa6d6..237d36f51bd 100644 --- a/code/datums/wires/airalarm.dm +++ b/code/datums/wires/airalarm.dm @@ -44,7 +44,7 @@ A.mode = 3 // AALARM_MODE_PANIC else A.mode = 1 // AALARM_MODE_SCRUB - A.apply_mode() + A.apply_mode(usr) if(WIRE_ALARM) // Clear alarms. var/area/AA = get_area(A) if(AA.atmosalert(0, holder)) @@ -66,9 +66,9 @@ if(WIRE_PANIC) // Force panic syphon on. if(!mend && !A.shorted) A.mode = 3 // AALARM_MODE_PANIC - A.apply_mode() + A.apply_mode(usr) if(WIRE_ALARM) // Post alarm. var/area/AA = get_area(A) if(AA.atmosalert(2, holder)) A.post_alert(2) - A.update_icon() \ No newline at end of file + A.update_icon() diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index 0f6b4ac6db4..c38571eff0f 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -417,7 +417,7 @@ if("mode") mode = text2num(params["mode"]) investigate_log("was turned to [get_mode_name(mode)] mode by [key_name(usr)]",INVESTIGATE_ATMOS) - apply_mode() + apply_mode(usr) . = TRUE if("alarm") var/area/A = get_area(src) @@ -456,25 +456,12 @@ else return 0 -/obj/machinery/airalarm/proc/refresh_all() - var/area/A = get_area(src) - for(var/id_tag in A.air_vent_names) - var/list/I = A.air_vent_info[id_tag] - if(I && I["timestamp"] + AALARM_REPORT_TIMEOUT / 2 > world.time) - continue - send_signal(id_tag, list("status")) - for(var/id_tag in A.air_scrub_names) - var/list/I = A.air_scrub_info[id_tag] - if(I && I["timestamp"] + AALARM_REPORT_TIMEOUT / 2 > world.time) - continue - send_signal(id_tag, list("status")) - /obj/machinery/airalarm/proc/set_frequency(new_frequency) SSradio.remove_object(src, frequency) frequency = new_frequency radio_connection = SSradio.add_object(src, frequency, RADIO_TO_AIRALARM) -/obj/machinery/airalarm/proc/send_signal(target, list/command, mob/user)//sends signal 'command' to 'target'. Returns 0 if no radio connection, 1 otherwise +/obj/machinery/airalarm/proc/send_signal(target, list/command, atom/user)//sends signal 'command' to 'target'. Returns 0 if no radio connection, 1 otherwise if(!radio_connection) return 0 @@ -507,7 +494,7 @@ if(AALARM_MODE_FLOOD) return "Flood" -/obj/machinery/airalarm/proc/apply_mode() +/obj/machinery/airalarm/proc/apply_mode(atom/signal_source) var/area/A = get_area(src) switch(mode) if(AALARM_MODE_SCRUBBING) @@ -516,14 +503,14 @@ "power" = 1, "set_filters" = list(/datum/gas/carbon_dioxide), "scrubbing" = 1, - "widenet" = 0, - )) + "widenet" = 0 + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 1, "checks" = 1, "set_external_pressure" = ONE_ATMOSPHERE - )) + ), signal_source) if(AALARM_MODE_CONTAMINATED) for(var/device_id in A.air_scrub_names) send_signal(device_id, list( @@ -542,41 +529,41 @@ /datum/gas/pluoxium ), "scrubbing" = 1, - "widenet" = 1, - )) + "widenet" = 1 + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 1, "checks" = 1, "set_external_pressure" = ONE_ATMOSPHERE - )) + ), signal_source) if(AALARM_MODE_VENTING) for(var/device_id in A.air_scrub_names) send_signal(device_id, list( "power" = 1, "widenet" = 0, "scrubbing" = 0 - )) + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 1, "checks" = 1, "set_external_pressure" = ONE_ATMOSPHERE*2 - )) + ), signal_source) if(AALARM_MODE_REFILL) for(var/device_id in A.air_scrub_names) send_signal(device_id, list( "power" = 1, "set_filters" = list(/datum/gas/carbon_dioxide), "scrubbing" = 1, - "widenet" = 0, - )) + "widenet" = 0 + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 1, "checks" = 1, "set_external_pressure" = ONE_ATMOSPHERE * 3 - )) + ), signal_source) if(AALARM_MODE_PANIC, AALARM_MODE_REPLACEMENT) for(var/device_id in A.air_scrub_names) @@ -584,43 +571,43 @@ "power" = 1, "widenet" = 1, "scrubbing" = 0 - )) + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 0 - )) + ), signal_source) if(AALARM_MODE_SIPHON) for(var/device_id in A.air_scrub_names) send_signal(device_id, list( "power" = 1, "widenet" = 0, "scrubbing" = 0 - )) + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 0 - )) + ), signal_source) if(AALARM_MODE_OFF) for(var/device_id in A.air_scrub_names) send_signal(device_id, list( "power" = 0 - )) + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 0 - )) + ), signal_source) if(AALARM_MODE_FLOOD) for(var/device_id in A.air_scrub_names) send_signal(device_id, list( "power" = 0 - )) + ), signal_source) for(var/device_id in A.air_vent_names) send_signal(device_id, list( "power" = 1, "checks" = 2, "set_internal_pressure" = 0 - )) + ), signal_source) /obj/machinery/airalarm/update_icon() if(panel_open) @@ -683,7 +670,7 @@ apply_danger_level() if(mode == AALARM_MODE_REPLACEMENT && environment_pressure < ONE_ATMOSPHERE * 0.05) mode = AALARM_MODE_SCRUBBING - apply_mode() + apply_mode(src) /obj/machinery/airalarm/proc/post_alert(alert_level) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm index 5b46aa4397f..a783214dfbb 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm @@ -182,7 +182,7 @@ if(!signal.data["tag"] || (signal.data["tag"] != id_tag) || (signal.data["sigtype"]!="command")) return - var/mob/signal_sender = signal.data["user"] + var/atom/signal_sender = signal.data["user"] if("purge" in signal.data) pressure_checks &= ~EXT_BOUND diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index 2984a40a461..615127d4544 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -218,7 +218,7 @@ if(!is_operational() || !signal.data["tag"] || (signal.data["tag"] != id_tag) || (signal.data["sigtype"]!="command")) return 0 - var/mob/signal_sender = signal.data["user"] + var/atom/signal_sender = signal.data["user"] if("power" in signal.data) on = text2num(signal.data["power"])