summaryrefslogtreecommitdiff
path: root/builtin/builtin.lua
diff options
context:
space:
mode:
Diffstat (limited to 'builtin/builtin.lua')
-rw-r--r--builtin/builtin.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/builtin/builtin.lua b/builtin/builtin.lua
index 9b2bed33f..4c74b1c5f 100644
--- a/builtin/builtin.lua
+++ b/builtin/builtin.lua
@@ -796,6 +796,30 @@ minetest.registered_on_dieplayers, minetest.register_on_dieplayer = make_registr
minetest.registered_on_respawnplayers, minetest.register_on_respawnplayer = make_registration()
--
+-- Misc. API functions
+--
+
+minetest.timers_to_add = {}
+minetest.timers = {}
+minetest.register_globalstep(function(dtime)
+ for indes, timer in ipairs(minetest.timers_to_add) do
+ table.insert(minetest.timers, timer)
+ end
+ minetest.timers_to_add = {}
+ for index, timer in ipairs(minetest.timers) do
+ timer.time = timer.time - dtime
+ if timer.time <= 0 then
+ timer.func()
+ minetest.timers[index] = nil
+ end
+ end
+end)
+
+function minetest.after(time, func)
+ table.insert(minetest.timers_to_add, {time=time, func=func})
+end
+
+--
-- Set random seed
--