diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm
index 71c62327e6..4846610671 100644
--- a/code/game/machinery/computer/cloning.dm
+++ b/code/game/machinery/computer/cloning.dm
@@ -1,3 +1,5 @@
+#define AUTOCLONING_MINIMAL_LEVEL 3
+
/obj/machinery/computer/cloning
name = "cloning console"
desc = "Used to clone people and manage DNA."
@@ -79,6 +81,10 @@
src.scanner = findscanner()
if(findfirstcloner && !LAZYLEN(pods))
findcloner()
+ if(!autoprocess)
+ STOP_PROCESSING(SSmachines, src)
+ else
+ START_PROCESSING(SSmachines, src)
/obj/machinery/computer/cloning/proc/findscanner()
var/obj/machinery/dna_scannernew/scannerf = null
@@ -151,7 +157,7 @@
var/dat = ""
dat += "Refresh"
- if(scanner && HasEfficientPod() && scanner.scan_level > 2)
+ if(scanner && HasEfficientPod() && scanner.scan_level >= AUTOCLONING_MINIMAL_LEVEL)
if(!autoprocess)
dat += "Autoprocess"
else
@@ -276,10 +282,13 @@
if(href_list["task"])
switch(href_list["task"])
if("autoprocess")
- autoprocess = 1
- playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
+ if(scanner && HasEfficientPod() && scanner.scan_level >= AUTOCLONING_MINIMAL_LEVEL)
+ autoprocess = TRUE
+ START_PROCESSING(SSmachines, src)
+ playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
if("stopautoprocess")
- autoprocess = 0
+ autoprocess = FALSE
+ STOP_PROCESSING(SSmachines, src)
playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0)
else if ((href_list["scan"]) && !isnull(scanner) && scanner.is_operational())