mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 20:43:10 +01:00
Lowers roundstart strain on SStimers (#9794)
This commit is contained in:
@@ -41,6 +41,8 @@
|
||||
//2: Do not pass input_pressure_min
|
||||
//4: Do not pass output_pressure_max
|
||||
|
||||
var/broadcast_status_next_process = FALSE
|
||||
|
||||
/obj/machinery/atmospherics/binary/dp_vent_pump/Initialize()
|
||||
. = ..()
|
||||
air1.volume = ATMOS_DEFAULT_VOLUME_PUMP
|
||||
@@ -106,6 +108,10 @@
|
||||
if(stat & (NOPOWER|BROKEN) || !use_power)
|
||||
return 0
|
||||
|
||||
if (broadcast_status_next_process)
|
||||
broadcast_status()
|
||||
broadcast_status_next_process = FALSE
|
||||
|
||||
var/datum/gas_mixture/environment = loc.return_air()
|
||||
|
||||
var/power_draw = -1
|
||||
@@ -248,10 +254,10 @@
|
||||
)
|
||||
|
||||
if(signal.data["status"])
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
return //do not update_icon
|
||||
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
update_icon()
|
||||
|
||||
#undef DEFAULT_PRESSURE_DELTA
|
||||
|
||||
@@ -24,6 +24,8 @@
|
||||
var/id = null
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
var/broadcast_status_next_process = FALSE
|
||||
|
||||
/obj/machinery/atmospherics/binary/passive_gate/Initialize()
|
||||
. = ..()
|
||||
air1.volume = ATMOS_DEFAULT_VOLUME_PUMP * 2.5
|
||||
@@ -47,6 +49,10 @@
|
||||
/obj/machinery/atmospherics/binary/passive_gate/machinery_process()
|
||||
..()
|
||||
|
||||
if (broadcast_status_next_process)
|
||||
broadcast_status()
|
||||
broadcast_status_next_process = FALSE
|
||||
|
||||
last_flow_rate = 0
|
||||
|
||||
if(!unlocked)
|
||||
@@ -152,10 +158,10 @@
|
||||
regulate_mode = text2num(signal.data["set_flow_rate"])
|
||||
|
||||
if("status" in signal.data)
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
return //do not update_icon
|
||||
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
update_icon()
|
||||
return
|
||||
|
||||
|
||||
@@ -34,6 +34,8 @@ Thus, the two variables affect pump operation are set in New():
|
||||
var/id = null
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
var/broadcast_status_next_process = FALSE
|
||||
|
||||
/obj/machinery/atmospherics/binary/pump/Initialize()
|
||||
. = ..()
|
||||
air1.volume = ATMOS_DEFAULT_VOLUME_PUMP
|
||||
@@ -69,6 +71,10 @@ Thus, the two variables affect pump operation are set in New():
|
||||
if((stat & (NOPOWER|BROKEN)) || !use_power)
|
||||
return
|
||||
|
||||
if (broadcast_status_next_process)
|
||||
broadcast_status()
|
||||
broadcast_status_next_process = FALSE
|
||||
|
||||
var/power_draw = -1
|
||||
var/pressure_delta = target_pressure - air2.return_pressure()
|
||||
|
||||
@@ -169,12 +175,11 @@ Thus, the two variables affect pump operation are set in New():
|
||||
)
|
||||
|
||||
if(signal.data["status"])
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
return //do not update_icon
|
||||
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
update_icon()
|
||||
return
|
||||
|
||||
/obj/machinery/atmospherics/binary/pump/attack_hand(user as mob)
|
||||
if(..())
|
||||
|
||||
@@ -23,6 +23,8 @@
|
||||
var/id = null
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
var/broadcast_status_next_process = FALSE
|
||||
|
||||
level = 1
|
||||
|
||||
/obj/machinery/atmospherics/unary/outlet_injector/Initialize()
|
||||
@@ -55,9 +57,13 @@
|
||||
last_power_draw = 0
|
||||
last_flow_rate = 0
|
||||
|
||||
if (broadcast_status_next_process)
|
||||
broadcast_status()
|
||||
broadcast_status_next_process = FALSE
|
||||
|
||||
if((stat & (NOPOWER|BROKEN)) || !use_power)
|
||||
return
|
||||
|
||||
|
||||
var/power_draw = -1
|
||||
var/datum/gas_mixture/environment = loc.return_air()
|
||||
|
||||
@@ -143,10 +149,10 @@
|
||||
volume_rate = between(0, number, air_contents.volume)
|
||||
|
||||
if(signal.data["status"])
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
return //do not update_icon
|
||||
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/atmospherics/unary/outlet_injector/hide(var/i)
|
||||
|
||||
@@ -49,6 +49,8 @@
|
||||
var/radio_filter_out
|
||||
var/radio_filter_in
|
||||
|
||||
var/broadcast_status_next_process = FALSE
|
||||
|
||||
/obj/machinery/atmospherics/unary/vent_pump/on
|
||||
use_power = 1
|
||||
icon_state = "map_vent_out"
|
||||
@@ -166,6 +168,10 @@
|
||||
/obj/machinery/atmospherics/unary/vent_pump/machinery_process()
|
||||
..()
|
||||
|
||||
if (broadcast_status_next_process)
|
||||
broadcast_status()
|
||||
broadcast_status_next_process = FALSE
|
||||
|
||||
if (hibernate > world.time)
|
||||
return 1
|
||||
|
||||
@@ -336,14 +342,11 @@
|
||||
return
|
||||
|
||||
if(signal.data["status"] != null)
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
return //do not update_icon
|
||||
|
||||
//log_debug("DEBUG \[[world.timeofday]\]: vent_pump/receive_signal: unknown command \"[signal.data["command"]]\"\n[signal.debug_print()]")
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
|
||||
broadcast_status_next_process = TRUE
|
||||
update_icon()
|
||||
return
|
||||
|
||||
/obj/machinery/atmospherics/unary/vent_pump/attackby(obj/item/W, mob/user)
|
||||
if(W.iswelder())
|
||||
|
||||
@@ -31,6 +31,8 @@
|
||||
|
||||
var/welded = 0
|
||||
|
||||
var/broadcast_status_next_process = FALSE
|
||||
|
||||
/obj/machinery/atmospherics/unary/vent_scrubber/on
|
||||
use_power = 1
|
||||
icon_state = "map_scrubber_on"
|
||||
@@ -138,7 +140,11 @@
|
||||
|
||||
if (!node)
|
||||
use_power = 0
|
||||
//broadcast_status()
|
||||
|
||||
if (broadcast_status_next_process)
|
||||
broadcast_status()
|
||||
broadcast_status_next_process = FALSE
|
||||
|
||||
if(!use_power || (stat & (NOPOWER|BROKEN)))
|
||||
return 0
|
||||
if(welded)
|
||||
@@ -244,11 +250,10 @@
|
||||
return
|
||||
|
||||
if(signal.data["status"] != null)
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
return //do not update_icon
|
||||
|
||||
// log_debug("DEBUG \[[world.timeofday]\]: vent_scrubber/receive_signal: unknown command \"[signal.data["command"]]\"\n[signal.debug_print()]")
|
||||
addtimer(CALLBACK(src, .proc/broadcast_status), 2, TIMER_UNIQUE)
|
||||
broadcast_status_next_process = TRUE
|
||||
update_icon()
|
||||
return
|
||||
|
||||
|
||||
Reference in New Issue
Block a user