diff --git a/ctf_flag/api.lua b/ctf_flag/api.lua index 6650dba..478a5c1 100644 --- a/ctf_flag/api.lua +++ b/ctf_flag/api.lua @@ -152,6 +152,11 @@ function ctf_flag.update(pos) end end +function ctf_flag.flag_tick(pos) + ctf_flag.update(pos) + minetest.get_node_timer(pos):start(5) +end + -- get a flag from a team function ctf_flag.get(pos) if not pos then diff --git a/ctf_flag/flag_func.lua b/ctf_flag/flag_func.lua index f0fd4cd..a8a97bc 100644 --- a/ctf_flag/flag_func.lua +++ b/ctf_flag/flag_func.lua @@ -179,6 +179,7 @@ ctf_flag = { on_construct = function(pos) local meta = minetest.get_meta(pos) meta:set_string("infotext", "Unowned flag") + minetest.get_node_timer(pos):start(5) end, after_place_node = function(pos, placer) local name = placer:get_player_name() diff --git a/ctf_flag/flags.lua b/ctf_flag/flags.lua index 067e561..a7a9d8d 100644 --- a/ctf_flag/flags.lua +++ b/ctf_flag/flags.lua @@ -23,7 +23,8 @@ minetest.register_node("ctf_flag:flag", { on_punch = ctf_flag.on_punch, on_rightclick = ctf_flag.on_rightclick, on_construct = ctf_flag.on_construct, - after_place_node = ctf_flag.after_place_node + after_place_node = ctf_flag.after_place_node, + on_timer = ctf_flag.flag_tick }) for color, _ in pairs(ctf.flag_colors) do @@ -77,13 +78,6 @@ minetest.register_node("ctf_flag:flag_captured_top",{ on_rightclick = ctf_flag.on_rightclick_top }) -minetest.register_abm({ - nodenames = {"group:flag_bottom"}, - inteval = 5, - chance = 1, - action = ctf_flag.update -}) - if ctf.setting("flag.crafting") then minetest.register_craft({ output = "ctf_flag:flag",