summaryrefslogtreecommitdiff
path: root/mesecons_temperest/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'mesecons_temperest/init.lua')
-rw-r--r--mesecons_temperest/init.lua93
1 files changed, 40 insertions, 53 deletions
diff --git a/mesecons_temperest/init.lua b/mesecons_temperest/init.lua
index 3c31013..2bda111 100644
--- a/mesecons_temperest/init.lua
+++ b/mesecons_temperest/init.lua
@@ -1,20 +1,5 @@
--TEMPEREST-PLUG
-minetest.register_node("mesecons_temperest:mesecon_plug", {
- drawtype = "raillike",
- paramtype = "light",
- is_ground_content = true,
- tile_images = {"jeija_mesecon_plug.png"},
- inventory_image = "jeija_mesecon_plug.png",
- wield_image = "jeija_mesecon_plug.png",
- groups = {dig_immediate=2},
- walkable = false,
- selection_box = {
- type = "fixed",
- },
- description = "Plug",
-})
-
local set_node_on
local set_node_off
@@ -64,7 +49,8 @@ else
end
end
-local plug_on = function(pos, node)
+local plug_on = function(pos)
+ local node = minetest.env:get_node(pos)
if node.name=="mesecons_temperest:mesecon_plug" then
local lnode = minetest.env:get_node({x=pos.x-1, y=pos.y, z=pos.z}) --a node between this node and the one two nodes away
if lnode.name=="air" then set_node_on({x=pos.x-2, y=pos.y, z=pos.z}) end
@@ -86,7 +72,8 @@ local plug_on = function(pos, node)
end
end
-local plug_off = function(pos, node)
+local plug_off = function(pos)
+ local node = minetest.env:get_node(pos)
if node.name=="mesecons_temperest:mesecon_plug" then
lnode = minetest.env:get_node({x=pos.x-1, y=pos.y, z=pos.z}) --a node between this node and the one two nodes away
if lnode.name=="air" then set_node_off({x=pos.x-2, y=pos.y, z=pos.z}) end
@@ -111,15 +98,29 @@ end
mesecon:register_on_signal_on(plug_on)
mesecon:register_on_signal_off(plug_off)
-minetest.register_on_placenode(plug_off)
-minetest.register_on_dignode(plug_off)
+minetest.register_node("mesecons_temperest:mesecon_plug", {
+ drawtype = "raillike",
+ paramtype = "light",
+ is_ground_content = true,
+ tile_images = {"jeija_mesecon_plug.png"},
+ inventory_image = "jeija_mesecon_plug.png",
+ wield_image = "jeija_mesecon_plug.png",
+ groups = {dig_immediate=2},
+ walkable = false,
+ selection_box = {
+ type = "fixed",
+ },
+ description = "Plug",
+ after_place_node = plug_off,
+ after_dig_node = plug_off
+})
minetest.register_craft({
- output = 'node "mesecons_temperest:mesecon_plug" 2',
+ output = '"mesecons_temperest:mesecon_plug" 2',
recipe = {
- {'', 'node "mesecons:mesecon_off"', ''},
- {'node "mesecons:mesecon_off"', 'craft "default:steel_ingot"', 'node "mesecons:mesecon_off"'},
- {'', 'node "mesecons:mesecon_off"', ''},
+ {'', '"mesecons:mesecon_off"', ''},
+ {'"mesecons:mesecon_off"', '"default:steel_ingot"', '"mesecons:mesecon_off"'},
+ {'', '"mesecons:mesecon_off"', ''},
}
})
@@ -151,25 +152,20 @@ minetest.register_node("mesecons_temperest:mesecon_socket_on", {
type = "fixed",
},
drop='"mesecons_temperest:mesecon_socket_off" 1',
-})
-
-minetest.register_on_dignode(
- function(pos, oldnode, digger)
- if oldnode.name == "mesecons_temperest:mesecon_socket_on" then
- mesecon:receptor_off(pos)
- end
+ after_dig_node = function(pos)
+ mesecon:receptor_off(pos)
end
-)
+})
mesecon:add_receptor_node("mesecons_temperest:mesecon_socket_on")
mesecon:add_receptor_node_off("mesecons_temperest:mesecon_socket_off")
minetest.register_craft({
- output = 'node "mesecons_temperest:mesecon_socket_off" 2',
+ output = '"mesecons_temperest:mesecon_socket_off" 2',
recipe = {
- {'', 'craft "default:steel_ingot"', ''},
- {'craft "default:steel_ingot"', 'node "mesecons_temperest:mesecon_off"', 'craft "default:steel_ingot"'},
- {'', 'craft "default:steel_ingot"', ''},
+ {'', '"default:steel_ingot"', ''},
+ {'"default:steel_ingot"', '"mesecons_temperest:mesecon_off"', '"default:steel_ingot"'},
+ {'', '"default:steel_ingot"', ''},
}
})
@@ -201,32 +197,23 @@ if ENABLE_TEMPEREST==1 then
selection_box = {
type = "fixed",
},
- })
-
- minetest.register_on_placenode(function(pos, node)
- if node.name=="mesecons_temperest:mesecon_inverter_on" then
+ after_place_node = function(pos)
mesecon:receptor_on(pos)
+ end,
+ after_dig_node = function(pos)
+ mesecon:receptor_off(pos)
end
- end
- )
-
- minetest.register_on_dignode(
- function(pos, oldnode, digger)
- if oldnode.name == "mesecons_temperest:mesecon_inverter_on" then
- mesecon:receptor_off(pos)
- end
- end
- )
+ })
mesecon:add_receptor_node("mesecons_temperest:mesecon_inverter_on")
mesecon:add_receptor_node_off("mesecons_temperest:mesecon_inverter_off")
minetest.register_craft({
- output = 'node "mesecons_temperest:mesecon_inverter_on" 2',
+ output = '"mesecons_temperest:mesecon_inverter_on" 2',
recipe = {
- {'node "mesecons_temperest:mesecon_off"', 'craft "default:steel_ingot"', 'node "mesecons:mesecon_off"'},
- {'craft "default:steel_ingot"', '', 'craft "default:steel_ingot"'},
- {'node "mesecons:mesecon_off"', 'craft "default:steel_ingot"', 'node "mesecons:mesecon_off"'},
+ {'"mesecons_temperest:mesecon_off"', '"default:steel_ingot"', '"mesecons:mesecon_off"'},
+ {'"default:steel_ingot"', '', '"default:steel_ingot"'},
+ {'"mesecons:mesecon_off"', '"default:steel_ingot"', '"mesecons:mesecon_off"'},
}
})
end