diff --git a/code/datums/controllers/process/process.dm b/code/datums/controllers/process/process.dm index 562b182..e397f38 100644 --- a/code/datums/controllers/process/process.dm +++ b/code/datums/controllers/process/process.dm @@ -133,7 +133,7 @@ datum/controller/process/proc/started() datum/controller/process/proc/finished() ticks++ - current_usage += main.world.tick_usage - tick_start + current_usage += world.tick_usage - tick_start last_usage = current_usage current_usage = 0 idle() @@ -217,10 +217,9 @@ datum/controller/process/proc/scheck() // For each tick the process defers, it increments the cpu_defer_count so we don't // defer indefinitely - if (world.tick_usage > 90 || main.world.tick_usage > tick_start + tick_allowance) - current_usage += main.world.tick_usage - tick_start - sleep(world.tick_lag) - LAGCHECK(90) + if (world.tick_usage > 100 || world.tick_usage - tick_start > tick_allowance) + current_usage += world.tick_usage - tick_start + sleep(world.tick_lag * main.running.len) cpu_defer_count++ last_slept = TimeOfHour tick_start = world.tick_usage @@ -327,7 +326,7 @@ datum/controller/process/proc/copyStateFrom(var/datum/controller/process/target) datum/controller/process/proc/onKill() -datum/controller/process/proc/onStart() +datum/controller/process/proc/onStart() LAGCHECK(world.tick_usage > 100 - tick_allowance) datum/controller/process/proc/onFinish() @@ -336,4 +335,4 @@ datum/controller/process/proc/disable() disabled = 1 datum/controller/process/proc/enable() - disabled = 0 + disabled = 0 \ No newline at end of file