diff --git a/minetest.conf b/minetest.conf index f4c3767..e2ab4d8 100644 --- a/minetest.conf +++ b/minetest.conf @@ -6,6 +6,8 @@ mgv6_spflags = nojungles, biomeblend, mudflow, nosnowbiomes, noflat map_generation_limit = 160 vote.kick_vote = false barrier = 102 +regen_interval = 10 +regen_amount = 1 # # CTF_PVP_ENGINE diff --git a/mods/hpregen/init.lua b/mods/hpregen/init.lua new file mode 100644 index 0000000..32a6c4f --- /dev/null +++ b/mods/hpregen/init.lua @@ -0,0 +1,20 @@ +local regen_interval = tonumber(minetest.setting_get("regen_interval")) +if regen_interval <= 0 then + regen_interval = 10 +end +local regen_amount = tonumber(minetest.setting_get("regen_amount")) +if regen_amount <= 0 then + regen_amount = 1 +end + +local function regen_all() + for _, player in pairs(minetest.get_connected_players()) do + local newhp = player:get_hp() + regen_amount + if newhp > 20 then + newhp = 20 + end + player:set_hp(newhp) + end + minetest.after(regen_interval, regen_all) +end +minetest.after(regen_interval, regen_all)