1
0
Fork 0

Clean and improve profiler info

This commit is contained in:
ancientmarinerdev 2023-03-14 15:26:17 +00:00 committed by Gitea
parent be269b2034
commit ff1b941d19
1 changed files with 10 additions and 11 deletions

View File

@ -5,25 +5,18 @@ local math, vector, minetest, mcl_mobs = math, vector, minetest, mcl_mobs
local PATHFINDING = "gowp" local PATHFINDING = "gowp"
local CRASH_WARN_FREQUENCY = 60 local CRASH_WARN_FREQUENCY = 60
local LIFETIMER_DISTANCE = 47
-- Localize -- Localize
local S = minetest.get_translator("mcl_mobs") local S = minetest.get_translator("mcl_mobs")
local DEVELOPMENT = minetest.settings:get_bool("mcl_development",false) local DEVELOPMENT = minetest.settings:get_bool("mcl_development",false)
local LOGGING_ON = minetest.settings:get_bool("mcl_logging_mobs_villager",false)
local function mcl_log (message)
if LOGGING_ON then
mcl_util.mcl_log (message, "[Mobs]", true)
end
end
-- Invisibility mod check -- Invisibility mod check
mcl_mobs.invis = {} mcl_mobs.invis = {}
local remove_far = true local remove_far = true
local mobs_griefing = minetest.settings:get_bool("mobs_griefing") ~= false
local spawn_protected = minetest.settings:get_bool("mobs_spawn_protected") ~= false
local mobs_debug = minetest.settings:get_bool("mobs_debug", false) -- Shows helpful debug info above each mob local mobs_debug = minetest.settings:get_bool("mobs_debug", false) -- Shows helpful debug info above each mob
local spawn_logging = minetest.settings:get_bool("mcl_logging_mobs_spawn",true) local spawn_logging = minetest.settings:get_bool("mcl_logging_mobs_spawn",true)
@ -503,6 +496,7 @@ end
-- main mob function -- main mob function
function mob_class:on_step(dtime) function mob_class:on_step(dtime)
if not DEVELOPMENT then if not DEVELOPMENT then
-- Removed as bundled Lua (5.1 doesn't support xpcall)
--local status, retVal = xpcall(on_step_work, on_step_error_handler, self, dtime) --local status, retVal = xpcall(on_step_work, on_step_error_handler, self, dtime)
local status, retVal = pcall(on_step_work, self, dtime) local status, retVal = pcall(on_step_work, self, dtime)
if status then if status then
@ -524,12 +518,13 @@ function mob_class:on_step(dtime)
end end
local timer = 0 local timer = 0
minetest.register_globalstep(function(dtime)
local function update_lifetimer(dtime)
timer = timer + dtime timer = timer + dtime
if timer < 1 then return end if timer < 1 then return end
for _, player in pairs(minetest.get_connected_players()) do for _, player in pairs(minetest.get_connected_players()) do
local pos = player:get_pos() local pos = player:get_pos()
for _, obj in pairs(minetest.get_objects_inside_radius(pos, 47)) do for _, obj in pairs(minetest.get_objects_inside_radius(pos, LIFETIMER_DISTANCE)) do
local lua = obj:get_luaentity() local lua = obj:get_luaentity()
if lua and lua.is_mob then if lua and lua.is_mob then
lua.lifetimer = math.max(20, lua.lifetimer) lua.lifetimer = math.max(20, lua.lifetimer)
@ -538,6 +533,10 @@ minetest.register_globalstep(function(dtime)
end end
end end
timer = 0 timer = 0
end
minetest.register_globalstep(function(dtime)
update_lifetimer(dtime)
end) end)