mirror of
https://github.com/minetest-mods/technic.git
synced 2025-02-22 23:00:22 +01:00
skip radiation check if the lag is elevated (> 1.5 seconds)
This commit is contained in:
parent
7b1d6b5625
commit
8a7563c096
@ -347,8 +347,23 @@ local function dmg_object(pos, object, strength)
|
||||
end
|
||||
end
|
||||
|
||||
-- max lag tracker
|
||||
local last_max_lag = 0
|
||||
local function trackMaxLag()
|
||||
last_max_lag = technic.get_max_lag()
|
||||
minetest.after(5, trackMaxLag)
|
||||
end
|
||||
|
||||
-- kick off lag tracking function
|
||||
trackMaxLag()
|
||||
|
||||
local rad_dmg_mult_sqrt = math.sqrt(1 / rad_dmg_cutoff)
|
||||
local function dmg_abm(pos, node)
|
||||
if last_max_lag > 1.5 then
|
||||
-- too much lag, skip radiation check entirely
|
||||
return
|
||||
end
|
||||
|
||||
local strength = minetest.get_item_group(node.name, "radioactive")
|
||||
local max_dist = strength * rad_dmg_mult_sqrt
|
||||
for _, o in pairs(minetest.get_objects_inside_radius(pos,
|
||||
|
Loading…
x
Reference in New Issue
Block a user