diff options
| author | Jeija <jeija@mesecons.net> | 2014-11-22 20:49:54 +0100 | 
|---|---|---|
| committer | Jeija <jeija@mesecons.net> | 2014-11-22 20:49:54 +0100 | 
| commit | 80d136125ef8f17af85d0045800d5e761ace3229 (patch) | |
| tree | f3c564c4151795f6852a64355a58813eb66aba15 /mesecons_switch | |
| parent | a550323fea995437896d809df5e5c3795271219c (diff) | |
Fix bug in mesecon.find_receptor that caused false turnoffs and rewrite lever +
switch
Diffstat (limited to 'mesecons_switch')
| -rw-r--r-- | mesecons_switch/init.lua | 41 | 
1 files changed, 17 insertions, 24 deletions
| diff --git a/mesecons_switch/init.lua b/mesecons_switch/init.lua index 1b7f478..074dc62 100644 --- a/mesecons_switch/init.lua +++ b/mesecons_switch/init.lua @@ -1,35 +1,28 @@  -- MESECON_SWITCH -minetest.register_node("mesecons_switch:mesecon_switch_off", { -	tiles = {"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_off.png"}, +mesecon.register_node("mesecons_switch:mesecon_switch", {  	paramtype2="facedir",  	groups = {dig_immediate=2},  	description="Switch",  	sounds = default.node_sound_stone_defaults(), -	mesecons = {receptor = { -		state = mesecon.state.off -	}}, -	on_punch = function(pos, node) -		minetest.swap_node(pos, {name = "mesecons_switch:mesecon_switch_on", param2 = node.param2}) -		mesecon:receptor_on(pos) -		minetest.sound_play("mesecons_switch", {pos=pos}) -	end -}) - -minetest.register_node("mesecons_switch:mesecon_switch_on", { -	tiles = {"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", "jeija_mesecon_switch_on.png"}, -	paramtype2="facedir", -	groups = {dig_immediate=2,not_in_creative_inventory=1}, -	drop="mesecons_switch:mesecon_switch_off 1", -	sounds = default.node_sound_stone_defaults(), -	mesecons = {receptor = { -		state = mesecon.state.on -	}}, -	on_punch = function(pos, node) -		minetest.swap_node(pos, {name = "mesecons_switch:mesecon_switch_off", param2 = node.param2}) -		mesecon:receptor_off(pos) +	on_punch = function (pos, node) +		if(mesecon.flipstate(pos, node) == "on") then +			mesecon.receptor_on(pos) +		else +			mesecon.receptor_off(pos) +		end  		minetest.sound_play("mesecons_switch", {pos=pos})  	end +},{ +	tiles = {	"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", +			"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", +			"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_off.png"}, +	mesecons = {receptor = { state = mesecon.state.off }} +},{ +	tiles = {	"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", +			"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_side.png", +			"jeija_mesecon_switch_side.png", "jeija_mesecon_switch_on.png"}, +	mesecons = {receptor = { state = mesecon.state.on }}  })  minetest.register_craft({ | 
