From c0d3bd2abbeb8db0d640a604af1c9756f79f4881 Mon Sep 17 00:00:00 2001 From: Jeija Date: Thu, 13 Dec 2012 18:42:45 +0100 Subject: Include experimental vertical wires (needs textures) --- mesecons/internal.lua | 7 +++---- mesecons/presets.lua | 38 ++++++++++++++++++++++---------------- 2 files changed, 25 insertions(+), 20 deletions(-) (limited to 'mesecons') diff --git a/mesecons/internal.lua b/mesecons/internal.lua index 575bee3..0249728 100644 --- a/mesecons/internal.lua +++ b/mesecons/internal.lua @@ -281,7 +281,7 @@ function mesecon:turnon(pos) if mesecon:is_conductor_off(node.name) then local rules = mesecon:conductor_get_rules(node) - mesecon:swap_node(pos, mesecon:get_conductor_on(node.name)) + minetest.env:add_node(pos, {name = mesecon:get_conductor_on(node.name)}) for _, rule in ipairs(rules) do local np = mesecon:addPosRule(pos, rule) @@ -300,12 +300,12 @@ function mesecon:turnon(pos) end end -function mesecon:turnoff(pos) --receptor rules used because output could have been dug +function mesecon:turnoff(pos) local node = minetest.env:get_node(pos) if mesecon:is_conductor_on(node.name) then local rules = mesecon:conductor_get_rules(node) - mesecon:swap_node(pos, mesecon:get_conductor_off(node.name)) + minetest.env:add_node(pos, {name = mesecon:get_conductor_off(node.name)}) for _, rule in ipairs(rules) do local np = mesecon:addPosRule(pos, rule) @@ -363,7 +363,6 @@ end function mesecon:rules_link(output, input, dug_outputrules) --output/input are positions (outputrules optional, used if node has been dug) local outputnode = minetest.env:get_node(output) local inputnode = minetest.env:get_node(input) - local outputrules = dug_outputrules local inputrules diff --git a/mesecons/presets.lua b/mesecons/presets.lua index 9988d22..6c8d3ea 100644 --- a/mesecons/presets.lua +++ b/mesecons/presets.lua @@ -3,26 +3,32 @@ mesecon.state = {} mesecon.rules.default = {{x=0, y=0, z=-1}, -{x=1, y=0, z=0}, -{x=-1, y=0, z=0}, -{x=0, y=0, z=1}, -{x=1, y=1, z=0}, -{x=1, y=-1, z=0}, -{x=-1, y=1, z=0}, -{x=-1, y=-1, z=0}, -{x=0, y=1, z=1}, -{x=0, y=-1, z=1}, -{x=0, y=1, z=-1}, -{x=0, y=-1, z=-1}} + {x=1, y=0, z=0}, + {x=-1, y=0, z=0}, + {x=0, y=0, z=1}, + {x=1, y=1, z=0}, + {x=1, y=-1, z=0}, + {x=-1, y=1, z=0}, + {x=-1, y=-1, z=0}, + {x=0, y=1, z=1}, + {x=0, y=-1, z=1}, + {x=0, y=1, z=-1}, + {x=0, y=-1, z=-1}} mesecon.rules.buttonlike = {{x = 1, y = 0, z = 0}, -{x = 1, y = 1, z = 0}, -{x = 1, y =-1, z = 0}, -{x = 1, y =-1, z = 1}, -{x = 1, y =-1, z =-1}, -{x = 2, y = 0, z = 0}} + {x = 1, y = 1, z = 0}, + {x = 1, y =-1, z = 0}, + {x = 1, y =-1, z = 1}, + {x = 1, y =-1, z =-1}, + {x = 2, y = 0, z = 0}} +mesecon.rules.flat = +{{x = 1, y = 0, z = 0}, + {x =-1, y = 0, z = 0}, + {x = 0, y = 0, z = 1}, + {x = 0, y = 0, z =-1}} + mesecon.rules.buttonlike_get = function(node) local rules = mesecon.rules.buttonlike if node.param2 == 2 then -- cgit v1.2.3