From 368b294c706cd17ff9448b3e67852ac51e4389b7 Mon Sep 17 00:00:00 2001
From: Zemtzov7 <72821250+zmv7@users.noreply.github.com>
Date: Fri, 16 Aug 2024 14:37:44 +0500
Subject: [PATCH] Fix mesecons displayed as unknown(??) mod in the profiler
 (#679)

---
 mesecons/actionqueue.lua | 28 +++++++++++-----------------
 1 file changed, 11 insertions(+), 17 deletions(-)

diff --git a/mesecons/actionqueue.lua b/mesecons/actionqueue.lua
index 72b464df..b3118f06 100644
--- a/mesecons/actionqueue.lua
+++ b/mesecons/actionqueue.lua
@@ -70,7 +70,17 @@ end
 -- However, even that does not work in some cases, that's why we delay the time the globalsteps
 -- start to be execute by 4 seconds
 
+local m_time = 0
+local resumetime = mesecon.setting("resumetime", 4)
+
 local function globalstep_func(dtime)
+	-- don't even try if server has not been running for XY seconds; resumetime = time to wait
+	-- after starting the server before processing the ActionQueue, don't set this too low
+	if m_time < resumetime then
+		m_time = m_time + dtime
+		return
+	end
+
 	local actions = queue.actions
 	-- split into two categories:
 	-- actions_now: actions to execute now
@@ -112,23 +122,7 @@ local function globalstep_func(dtime)
 	end
 end
 
--- delay the time the globalsteps start to be execute by 4 seconds
-do
-	local m_time = 0
-	local resumetime = mesecon.setting("resumetime", 4)
-	local globalstep_func_index = #minetest.registered_globalsteps + 1
-
-	minetest.register_globalstep(function(dtime)
-		m_time = m_time + dtime
-		-- don't even try if server has not been running for XY seconds; resumetime = time to wait
-		-- after starting the server before processing the ActionQueue, don't set this too low
-		if m_time < resumetime then
-			return
-		end
-		-- replace this globalstep function
-		minetest.registered_globalsteps[globalstep_func_index] = globalstep_func
-	end)
-end
+minetest.register_globalstep(globalstep_func)
 
 function queue:execute(action)
 	-- ignore if action queue function name doesn't exist,