From 1ebd50ac75032cd8a90e54a7f1ac4a84b0c08460 Mon Sep 17 00:00:00 2001 From: Vanessa Ezekowitz Date: Mon, 1 Sep 2014 20:59:28 -0400 Subject: [PATCH] use one ABM for blinkyplant instead of two. using two ABMs allows the engine to desynchronize them, which makes the duty cycle unpredictable. --- mesecons_blinkyplant/init.lua | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/mesecons_blinkyplant/init.lua b/mesecons_blinkyplant/init.lua index 475d953..39dcc67 100644 --- a/mesecons_blinkyplant/init.lua +++ b/mesecons_blinkyplant/init.lua @@ -77,26 +77,21 @@ minetest.register_craft({ } }) -minetest.register_abm( - {nodenames = {"mesecons_blinkyplant:blinky_plant_off"}, +minetest.register_abm({ + nodenames = { + "mesecons_blinkyplant:blinky_plant_off", + "mesecons_blinkyplant:blinky_plant_on" + }, interval = BLINKY_PLANT_INTERVAL, chance = 1, action = function(pos, node, active_object_count, active_object_count_wider) - --minetest.remove_node(pos) - minetest.add_node(pos, {name="mesecons_blinkyplant:blinky_plant_on"}) + if node.name == "mesecons_blinkyplant:blinky_plant_off" then + minetest.add_node(pos, {name="mesecons_blinkyplant:blinky_plant_on"}) + else + minetest.add_node(pos, {name="mesecons_blinkyplant:blinky_plant_off"}) + end nodeupdate(pos) mesecon:receptor_on(pos) end, }) -minetest.register_abm({ - nodenames = {"mesecons_blinkyplant:blinky_plant_on"}, - interval = BLINKY_PLANT_INTERVAL, - chance = 1, - action = function(pos, node, active_object_count, active_object_count_wider) - --minetest.remove_node(pos) - minetest.add_node(pos, {name="mesecons_blinkyplant:blinky_plant_off"}) - nodeupdate(pos) - mesecon:receptor_off(pos) - end, -})