From c5eec28a6957969d6f9dfdff9a88ab888125d1d7 Mon Sep 17 00:00:00 2001 From: ESwordTheCat Date: Sat, 5 Apr 2014 05:22:18 +0800 Subject: [PATCH] Process diseases optimized loop. --- code/controllers/master_controller.dm | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/code/controllers/master_controller.dm b/code/controllers/master_controller.dm index 8c1b2d82c7b..ae4446dd124 100644 --- a/code/controllers/master_controller.dm +++ b/code/controllers/master_controller.dm @@ -168,7 +168,7 @@ datum/controller/game_controller/proc/process() //DISEASES timer = world.timeofday - process_diseases() + processDiseases() diseases_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) @@ -245,16 +245,14 @@ datum/controller/game_controller/proc/process() mob_list = mob_list - Mob -datum/controller/game_controller/proc/process_diseases() - var/i = 1 - while(i<=active_diseases.len) - var/datum/disease/Disease = active_diseases[i] +/datum/controller/game_controller/proc/processDiseases() + for (var/datum/disease/Disease in active_diseases) if(Disease) last_thing_processed = Disease.type Disease.process() - i++ continue - active_diseases.Cut(i,i+1) + + active_diseases = active_diseases - Disease /datum/controller/game_controller/proc/processMachines()