summaryrefslogtreecommitdiff
path: root/jeija/switch.lua
diff options
context:
space:
mode:
authorJeija <norrepli@gmail.com>2012-01-28 07:13:29 +0100
committerJeija <norrepli@gmail.com>2012-01-28 07:13:29 +0100
commit823d50ff2efa2294f75350020dbc4d6067cbc0b6 (patch)
tree9780faa0ca1854ffa28aefb72ea1788ea43bbbae /jeija/switch.lua
parent764be5dd4cf92086b2208d7c7a357f08d468949e (diff)
downloadmesecons-823d50ff2efa2294f75350020dbc4d6067cbc0b6.tar
mesecons-823d50ff2efa2294f75350020dbc4d6067cbc0b6.tar.gz
mesecons-823d50ff2efa2294f75350020dbc4d6067cbc0b6.tar.bz2
mesecons-823d50ff2efa2294f75350020dbc4d6067cbc0b6.tar.xz
mesecons-823d50ff2efa2294f75350020dbc4d6067cbc0b6.zip
Seperate Switch
Diffstat (limited to 'jeija/switch.lua')
-rw-r--r--jeija/switch.lua46
1 files changed, 46 insertions, 0 deletions
diff --git a/jeija/switch.lua b/jeija/switch.lua
new file mode 100644
index 0000000..8c784b0
--- /dev/null
+++ b/jeija/switch.lua
@@ -0,0 +1,46 @@
+-- MESECON_SWITCH
+
+minetest.register_node("jeija:mesecon_switch_off", {
+ tile_images = {"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"},
+ paramtype2="facedir",
+ material = minetest.digprop_constanttime(0.5),
+})
+
+minetest.register_node("jeija:mesecon_switch_on", {
+ tile_images = {"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",
+ material = minetest.digprop_constanttime(0.5),
+ drop='"jeija:mesecon_switch_off" 1',
+})
+
+mesecon:add_receptor_node("jeija:mesecon_switch_on")
+mesecon:add_receptor_node_off("jeija:mesecon_switch_off")
+
+minetest.register_on_punchnode(function(pos, node, puncher)
+ if node.name == "jeija:mesecon_switch_on" then
+ minetest.env:add_node(pos, {name="jeija:mesecon_switch_off", param1=node.param1})
+ nodeupdate(pos)
+ mesecon:receptor_off(pos)
+ end
+ if node.name == "jeija:mesecon_switch_off" then
+ minetest.env:add_node(pos, {name="jeija:mesecon_switch_on", param1=node.param1})
+ nodeupdate(pos)
+ mesecon:receptor_on(pos)
+ end
+end)
+
+minetest.register_on_dignode(
+ function(pos, oldnode, digger)
+ if oldnode.name == "jeija:mesecon_switch_on" then
+ mesecon:receptor_off(pos)
+ end
+ end
+)
+
+minetest.register_craft({
+ output = '"jeija:mesecon_switch_off" 2',
+ recipe = {
+ {'"default:steel_ingot"', '"default:cobble"', '"default:steel_ingot"'},
+ {'"jeija:mesecon_off"','', '"jeija:mesecon_off"'},
+ }
+})