aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--builtin/game/misc.lua6
1 files changed, 5 insertions, 1 deletions
diff --git a/builtin/game/misc.lua b/builtin/game/misc.lua
index 4afcdb99e..a392386f1 100644
--- a/builtin/game/misc.lua
+++ b/builtin/game/misc.lua
@@ -11,11 +11,15 @@ core.register_globalstep(function(dtime)
table.insert(core.timers, timer)
end
core.timers_to_add = {}
- for index, timer in ipairs(core.timers) do
+ local index = 1
+ while index <= #core.timers do
+ local timer = core.timers[index]
timer.time = timer.time - dtime
if timer.time <= 0 then
timer.func(unpack(timer.args or {}))
table.remove(core.timers,index)
+ else
+ index = index + 1
end
end
end)