From 90bfec8472b166aa7b1f9faca8e2c845c241d8de Mon Sep 17 00:00:00 2001 From: ESwordTheCat Date: Sat, 5 Apr 2014 04:38:01 +0800 Subject: [PATCH] Process mobs optimized loop. --- code/controllers/master_controller.dm | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/code/controllers/master_controller.dm b/code/controllers/master_controller.dm index 06cd444ab67..f022db22f0a 100644 --- a/code/controllers/master_controller.dm +++ b/code/controllers/master_controller.dm @@ -161,7 +161,7 @@ datum/controller/game_controller/proc/process() //MOBS timer = world.timeofday - process_mobs() + processMobs() mobs_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) @@ -236,16 +236,14 @@ datum/controller/game_controller/proc/process() else sleep(10) -datum/controller/game_controller/proc/process_mobs() - var/i = 1 - while(i<=mob_list.len) - var/mob/M = mob_list[i] - if(M) - last_thing_processed = M.type - M.Life() - i++ +datum/controller/game_controller/proc/processMobs() + for (var/mob/Mob in mob_list) + if (Mob) + last_thing_processed = Mob.type + Mob.Life() continue - mob_list.Cut(i,i+1) + + mob_list = mob_list - Mob datum/controller/game_controller/proc/process_diseases() var/i = 1 @@ -270,6 +268,7 @@ datum/controller/game_controller/proc/process_diseases() Machinery.auto_use_power() continue + machines = machines - Machinery datum/controller/game_controller/proc/process_objects()