diff --git a/code/modules/atmospherics/machinery/other/miner.dm b/code/modules/atmospherics/machinery/other/miner.dm index d12204d8ad..20439e5c2b 100644 --- a/code/modules/atmospherics/machinery/other/miner.dm +++ b/code/modules/atmospherics/machinery/other/miner.dm @@ -29,6 +29,10 @@ idle_power_usage = 150 active_power_usage = 2000 +/obj/machinery/atmospherics/miner/Initialize() + . = ..() + set_active(active) //Force overlay update. + /obj/machinery/atmospherics/miner/examine(mob/user) ..() if(broken) @@ -40,31 +44,41 @@ var/turf/T = get_turf(src) if(!isopenturf(T)) broken_message = "VENT BLOCKED" - broken = TRUE + set_broken(TRUE) return FALSE var/turf/open/OT = T if(OT.planetary_atmos) broken_message = "DEVICE NOT ENCLOSED IN A PRESSURIZED ENVIRONMENT" - broken = TRUE + set_broken(TRUE) return FALSE if(isspaceturf(T)) broken_message = "AIR VENTING TO SPACE" - broken = TRUE + set_broken(TRUE) return FALSE var/datum/gas_mixture/G = OT.return_air() if(G.return_pressure() > (max_ext_kpa - ((spawn_mol*spawn_temp*R_IDEAL_GAS_EQUATION)/(CELL_VOLUME)))) broken_message = "EXTERNAL PRESSURE OVER THRESHOLD" - broken = TRUE + set_broken(TRUE) return FALSE if(G.total_moles() > max_ext_mol) broken_message = "EXTERNAL AIR CONCENTRATION OVER THRESHOLD" - broken = TRUE + set_broken(TRUE) return FALSE if(broken) - broken = FALSE + set_broken(FALSE) broken_message = "" return TRUE +/obj/machinery/atmospherics/miner/proc/set_active(setting) + if(active != setting) + active = setting + update_icon() + +/obj/machinery/atmospherics/miner/proc/set_broken(setting) + if(broken != setting) + broken = setting + update_icon() + /obj/machinery/atmospherics/miner/proc/update_power() if(!active) active_power_usage = idle_power_usage @@ -96,7 +110,7 @@ return FALSE /obj/machinery/atmospherics/miner/update_icon() - overlays.Cut() + cut_overlays() if(broken) add_overlay("broken") else if(active) @@ -106,7 +120,6 @@ /obj/machinery/atmospherics/miner/process() update_power() - update_icon() check_operation() if(active && !broken) if(isnull(spawn_id))