diff options
Diffstat (limited to 'mesecons_button')
| -rw-r--r-- | mesecons_button/init.lua | 16 | 
1 files changed, 9 insertions, 7 deletions
| diff --git a/mesecons_button/init.lua b/mesecons_button/init.lua index 11c328c..c67c149 100644 --- a/mesecons_button/init.lua +++ b/mesecons_button/init.lua @@ -4,12 +4,13 @@  mesecon.button_turnoff = function (pos)  	local node = minetest.get_node(pos) -	if node.name=="mesecons_button:button_on" then --has not been dug -		minetest.swap_node(pos, {name = "mesecons_button:button_off", param2=node.param2}) -		minetest.sound_play("mesecons_button_pop", {pos=pos}) -		local rules = mesecon.rules.buttonlike_get(node) -		mesecon.receptor_off(pos, rules) +	if node.name ~= "mesecons_button:button_on" then -- has been dug +		return  	end +	minetest.swap_node(pos, {name = "mesecons_button:button_off", param2 = node.param2}) +	minetest.sound_play("mesecons_button_pop", {pos = pos}) +	local rules = mesecon.rules.buttonlike_get(node) +	mesecon.receptor_off(pos, rules)  end  minetest.register_node("mesecons_button:button_off", { @@ -45,7 +46,7 @@ minetest.register_node("mesecons_button:button_off", {  		minetest.swap_node(pos, {name = "mesecons_button:button_on", param2=node.param2})  		mesecon.receptor_on(pos, mesecon.rules.buttonlike_get(node))  		minetest.sound_play("mesecons_button_push", {pos=pos}) -		minetest.after(1, mesecon.button_turnoff, pos) +		minetest.get_node_timer(pos):start(1)  	end,  	sounds = default.node_sound_stone_defaults(),  	mesecons = {receptor = { @@ -89,7 +90,8 @@ minetest.register_node("mesecons_button:button_on", {  	mesecons = {receptor = {  		state = mesecon.state.on,  		rules = mesecon.rules.buttonlike_get -	}} +	}}, +	on_timer = mesecon.button_turnoff,  })  minetest.register_craft({ | 
