From d3a165d21b5fa3247a039cc5dcf427b4199e988e Mon Sep 17 00:00:00 2001 From: Tim Date: Wed, 31 Dec 2014 04:44:32 +0100 Subject: [PATCH] optimize timer of bones --- mods/bones/init.lua | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/mods/bones/init.lua b/mods/bones/init.lua index ae72d897..214013f8 100644 --- a/mods/bones/init.lua +++ b/mods/bones/init.lua @@ -9,6 +9,8 @@ local function is_owner(pos, name) return false end +local share_bones_time = tonumber(minetest.setting_get("share_bones_time") or 1200) + minetest.register_node("bones:bones", { description = "Bones", tiles = { @@ -84,15 +86,8 @@ minetest.register_node("bones:bones", { on_timer = function(pos, elapsed) local meta = minetest.get_meta(pos) - local time = meta:get_int("time")+elapsed - local publish = 1200 - if tonumber(minetest.setting_get("share_bones_time")) then - publish = tonumber(minetest.setting_get("share_bones_time")) - end - if publish == 0 then - return - end - if time >= publish then + local time = meta:get_int("time") + elapsed + if time >= share_bones_time then meta:set_string("infotext", meta:get_string("owner").."'s old bones") meta:set_string("owner", "") else @@ -188,10 +183,13 @@ minetest.register_on_dieplayer(function(player) meta:set_string("formspec", "size[8,9;]".. "list[current_name;main;0,0;8,4;]".. "list[current_player;main;0,5;8,4;]") - meta:set_string("infotext", player_name.."'s fresh bones") meta:set_string("owner", player_name) - meta:set_int("time", 0) - local timer = minetest.get_node_timer(pos) - timer:start(10) + if share_bones_time ~= 0 then + meta:set_string("infotext", player_name.."'s fresh bones") + meta:set_int("time", 0) + minetest.get_node_timer(pos):start(10) + else + meta:set_string("infotext", player_name.."'s bones") + end end)