diff options
author | Anthony Zhang <azhang9@gmail.com> | 2012-02-23 19:43:03 -0500 |
---|---|---|
committer | Anthony Zhang <azhang9@gmail.com> | 2012-02-23 19:43:03 -0500 |
commit | 8bdb2e86ad5ffcfbbd65117167920f61c3083241 (patch) | |
tree | 5e983f62aa0af23d532f36bd6d492d3fa2e60f95 | |
parent | cbd77d8f3d7a5957102481deff0728bc496f1c54 (diff) | |
download | mesecons-8bdb2e86ad5ffcfbbd65117167920f61c3083241.tar mesecons-8bdb2e86ad5ffcfbbd65117167920f61c3083241.tar.gz mesecons-8bdb2e86ad5ffcfbbd65117167920f61c3083241.tar.bz2 mesecons-8bdb2e86ad5ffcfbbd65117167920f61c3083241.tar.xz mesecons-8bdb2e86ad5ffcfbbd65117167920f61c3083241.zip |
Change the ENABLE_TEMPEREST flag to affect only the inclusion of the inverter socket, since that is the only element that can lead to a crash.
-rw-r--r-- | jeija/init.lua | 5 | ||||
-rw-r--r-- | jeija/temperest.lua | 172 |
2 files changed, 99 insertions, 78 deletions
diff --git a/jeija/init.lua b/jeija/init.lua index 1a5fce7..9da01b5 100644 --- a/jeija/init.lua +++ b/jeija/init.lua @@ -877,10 +877,7 @@ dofile(minetest.get_modpath("jeija").."/switch.lua") dofile(minetest.get_modpath("jeija").."/pistons.lua") dofile(minetest.get_modpath("jeija").."/lightstone.lua") dofile(minetest.get_modpath("jeija").."/lever.lua") ---TEMPEREST's STUFF -if ENABLE_TEMPEREST==1 then - dofile(minetest.get_modpath("jeija").."/temperest.lua") -end +dofile(minetest.get_modpath("jeija").."/temperest.lua") --INIT mesecon:read_wlre_from_file() diff --git a/jeija/temperest.lua b/jeija/temperest.lua index 6a0e63a..267962d 100644 --- a/jeija/temperest.lua +++ b/jeija/temperest.lua @@ -15,29 +15,52 @@ minetest.register_node("jeija:mesecon_plug", { description = "Plug", }) -local set_node_on = function(pos) - local node = minetest.env:get_node(pos) - if node.name=="jeija:mesecon_socket_off" then - minetest.env:add_node(pos, {name="jeija:mesecon_socket_on"}) - nodeupdate(pos) - mesecon:receptor_on(pos) - elseif node.name=="jeija:mesecon_inverter_on" then - minetest.env:add_node(pos, {name="jeija:mesecon_inverter_off"}) - nodeupdate(pos) - mesecon:receptor_off(pos) +local set_node_on +local set_node_off + +if ENABLE_TEMPEREST==1 then + set_node_on = function(pos) + local node = minetest.env:get_node(pos) + if node.name=="jeija:mesecon_socket_off" then + minetest.env:add_node(pos, {name="jeija:mesecon_socket_on"}) + nodeupdate(pos) + mesecon:receptor_on(pos) + elseif node.name=="jeija:mesecon_inverter_on" then + minetest.env:add_node(pos, {name="jeija:mesecon_inverter_off"}) + nodeupdate(pos) + mesecon:receptor_off(pos) + end end -end - -local set_node_off = function(pos) - node = minetest.env:get_node(pos) - if node.name=="jeija:mesecon_socket_on" then - minetest.env:add_node(pos, {name="jeija:mesecon_socket_off"}) - nodeupdate(pos) - mesecon:receptor_off(pos) - elseif node.name=="jeija:mesecon_inverter_off" then - minetest.env:add_node(pos, {name="jeija:mesecon_inverter_on"}) - nodeupdate(pos) - mesecon:receptor_on(pos) + + set_node_off = function(pos) + node = minetest.env:get_node(pos) + if node.name=="jeija:mesecon_socket_on" then + minetest.env:add_node(pos, {name="jeija:mesecon_socket_off"}) + nodeupdate(pos) + mesecon:receptor_off(pos) + elseif node.name=="jeija:mesecon_inverter_off" then + minetest.env:add_node(pos, {name="jeija:mesecon_inverter_on"}) + nodeupdate(pos) + mesecon:receptor_on(pos) + end + end +else + set_node_on = function(pos) + local node = minetest.env:get_node(pos) + if node.name=="jeija:mesecon_socket_off" then + minetest.env:add_node(pos, {name="jeija:mesecon_socket_on"}) + nodeupdate(pos) + mesecon:receptor_on(pos) + end + end + + set_node_off = function(pos) + node = minetest.env:get_node(pos) + if node.name=="jeija:mesecon_socket_on" then + minetest.env:add_node(pos, {name="jeija:mesecon_socket_off"}) + nodeupdate(pos) + mesecon:receptor_off(pos) + end end end @@ -139,58 +162,59 @@ minetest.register_craft({ }) --TEMPEREST-INVERTER - -minetest.register_node("jeija:mesecon_inverter_off", { - drawtype = "raillike", - paramtype = "light", - is_ground_content = true, - tile_images = {"jeija_mesecon_inverter_off.png"}, - material = minetest.digprop_constanttime(0.1), - walkable = false, - selection_box = { - type = "fixed", - }, - drop='"jeija:mesecon_inverter_on" 1', -}) - -minetest.register_node("jeija:mesecon_inverter_on", { - description = "Inverter", - drawtype = "raillike", - paramtype = "light", - is_ground_content = true, - tile_images = {"jeija_mesecon_inverter_on.png"}, - inventory_image = "jeija_mesecon_inverter_on.png", - wield_image = "jeija_mesecon_inverter_on.png", - material = minetest.digprop_constanttime(0.1), - walkable = false, - selection_box = { - type = "fixed", - }, -}) - -minetest.register_on_placenode(function(pos, node) - if node.name=="jeija:mesecon_inverter" then - mesecon:receptor_on(pos) - end -end -) - -minetest.register_on_dignode( - function(pos, oldnode, digger) - if oldnode.name == "jeija:mesecon_inverter_on" then - mesecon:receptor_off(pos) +if ENABLE_TEMPEREST==1 then + minetest.register_node("jeija:mesecon_inverter_off", { + drawtype = "raillike", + paramtype = "light", + is_ground_content = true, + tile_images = {"jeija_mesecon_inverter_off.png"}, + material = minetest.digprop_constanttime(0.1), + walkable = false, + selection_box = { + type = "fixed", + }, + drop='"jeija:mesecon_inverter_on" 1', + }) + + minetest.register_node("jeija:mesecon_inverter_on", { + description = "Inverter", + drawtype = "raillike", + paramtype = "light", + is_ground_content = true, + tile_images = {"jeija_mesecon_inverter_on.png"}, + inventory_image = "jeija_mesecon_inverter_on.png", + wield_image = "jeija_mesecon_inverter_on.png", + material = minetest.digprop_constanttime(0.1), + walkable = false, + selection_box = { + type = "fixed", + }, + }) + + minetest.register_on_placenode(function(pos, node) + if node.name=="jeija:mesecon_inverter" then + mesecon:receptor_on(pos) end end -) - -mesecon:add_receptor_node("jeija:mesecon_inverter_on") -mesecon:add_receptor_node_off("jeija:mesecon_inverter_off") + ) -minetest.register_craft({ - output = 'node "jeija:mesecon_inverter_on" 2', - recipe = { - {'node "jeija:mesecon_off"', 'craft "default:steel_ingot"', 'node "jeija:mesecon_off"'}, - {'craft "default:steel_ingot"', '', 'craft "default:steel_ingot"'}, - {'node "jeija:mesecon_off"', 'craft "default:steel_ingot"', 'node "jeija:mesecon_off"'}, - } -})
\ No newline at end of file + minetest.register_on_dignode( + function(pos, oldnode, digger) + if oldnode.name == "jeija:mesecon_inverter_on" then + mesecon:receptor_off(pos) + end + end + ) + + mesecon:add_receptor_node("jeija:mesecon_inverter_on") + mesecon:add_receptor_node_off("jeija:mesecon_inverter_off") + + minetest.register_craft({ + output = 'node "jeija:mesecon_inverter_on" 2', + recipe = { + {'node "jeija:mesecon_off"', 'craft "default:steel_ingot"', 'node "jeija:mesecon_off"'}, + {'craft "default:steel_ingot"', '', 'craft "default:steel_ingot"'}, + {'node "jeija:mesecon_off"', 'craft "default:steel_ingot"', 'node "jeija:mesecon_off"'}, + } + }) +end
\ No newline at end of file |