From bcae0e66ff53c7ad673ccd1ea901aa36a7b96aa6 Mon Sep 17 00:00:00 2001 From: Darius <5933805+LeDrascol@users.noreply.github.com> Date: Fri, 16 Dec 2022 16:25:45 -0500 Subject: [PATCH 1/3] Fix init_process not preventing processing Prevents machines from running faster when set to both not init_process and not speed_process. Changes mineral machine to init_process to fix potential issues caused by this. --- code/game/machinery/_machinery.dm | 9 +++++---- code/modules/mining/machine_processing.dm | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 62b2a6da8d..e1d7737f5c 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -149,10 +149,11 @@ Class Procs: circuit = new circuit(src) circuit.apply_default_parts(src) - if(!speed_process && init_process) - START_PROCESSING(SSmachines, src) - else - START_PROCESSING(SSfastprocess, src) + if(init_process) // Required to prevent non-speed non-init machines from running + if(speed_process) + START_PROCESSING(SSfastprocess, src) + else + START_PROCESSING(SSmachines, src) RegisterSignal(src, COMSIG_ENTER_AREA, .proc/power_change) if (occupant_typecache) diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index 3d89377952..9aceaa9f34 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -4,7 +4,7 @@ /obj/machinery/mineral speed_process = TRUE - init_process = FALSE + init_process = TRUE // Must be true after init_process fix /// The current direction of `input_turf`, in relation to the machine. var/input_dir = NORTH /// The current direction, in relation to the machine, that items will be output to. From dae235f97cd0bc3590349de0896e9042d78a2ed8 Mon Sep 17 00:00:00 2001 From: Darius <5933805+LeDrascol@users.noreply.github.com> Date: Fri, 23 Dec 2022 16:16:57 -0500 Subject: [PATCH 2/3] Selective mineral machine init_process Requested by SandPoot. Disables init_process for mineral (mining) machines, and enables it on a case-by-case basis. Downstream mineral machines must be updated with this change. --- code/modules/mining/machine_processing.dm | 3 ++- code/modules/mining/machine_redemption.dm | 1 + code/modules/mining/machine_unloading.dm | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index 9aceaa9f34..0c9585d850 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -4,7 +4,7 @@ /obj/machinery/mineral speed_process = TRUE - init_process = TRUE // Must be true after init_process fix + init_process = FALSE /// The current direction of `input_turf`, in relation to the machine. var/input_dir = NORTH /// The current direction, in relation to the machine, that items will be output to. @@ -126,6 +126,7 @@ var/datum/material/selected_material = null var/selected_alloy = null var/datum/techweb/stored_research + init_process = TRUE /obj/machinery/mineral/processing_unit/Initialize(mapload) . = ..() diff --git a/code/modules/mining/machine_redemption.dm b/code/modules/mining/machine_redemption.dm index eabab35c3b..32b79343e8 100644 --- a/code/modules/mining/machine_redemption.dm +++ b/code/modules/mining/machine_redemption.dm @@ -11,6 +11,7 @@ output_dir = SOUTH req_access = list(ACCESS_MINERAL_STOREROOM) speed_process = TRUE + init_process = TRUE circuit = /obj/item/circuitboard/machine/ore_redemption layer = BELOW_OBJ_LAYER var/points = 0 diff --git a/code/modules/mining/machine_unloading.dm b/code/modules/mining/machine_unloading.dm index b39b0df6ab..16b3b3967f 100644 --- a/code/modules/mining/machine_unloading.dm +++ b/code/modules/mining/machine_unloading.dm @@ -9,6 +9,7 @@ input_dir = WEST output_dir = EAST speed_process = TRUE + init_process = TRUE /obj/machinery/mineral/unloading_machine/proc/horrible_quadratic_monster(var/turf/T) set waitfor = FALSE From b8079b108fdc5b9f49e91f026e6fcad6e923bc66 Mon Sep 17 00:00:00 2001 From: Darius <5933805+LeDrascol@users.noreply.github.com> Date: Mon, 26 Dec 2022 22:35:22 -0500 Subject: [PATCH 3/3] Move furnace init variable Moves the init_process variable above the var defines to drastically improve style. Requested by SandPoot. --- code/modules/mining/machine_processing.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index 0c9585d850..0b7ca7adfd 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -121,12 +121,12 @@ icon_state = "furnace" density = TRUE needs_item_input = TRUE + init_process = TRUE var/obj/machinery/mineral/CONSOLE = null var/on = FALSE var/datum/material/selected_material = null var/selected_alloy = null var/datum/techweb/stored_research - init_process = TRUE /obj/machinery/mineral/processing_unit/Initialize(mapload) . = ..()