summaryrefslogtreecommitdiff
path: root/devices.lua
diff options
context:
space:
mode:
authorVanessa Ezekowitz <vanessaezekowitz@gmail.com>2017-03-17 11:04:59 -0400
committerVanessa Ezekowitz <vanessaezekowitz@gmail.com>2017-03-17 11:04:59 -0400
commit64b2611d8adbbc07bb92315eca9d71b74ea51756 (patch)
tree124e48b2d6b6de84e7d158f34d3d053f0e10be47 /devices.lua
parent1bfc2d4e5b19b643190c4996b458eb3d63f8152c (diff)
downloadpipeworks-64b2611d8adbbc07bb92315eca9d71b74ea51756.tar
pipeworks-64b2611d8adbbc07bb92315eca9d71b74ea51756.tar.gz
pipeworks-64b2611d8adbbc07bb92315eca9d71b74ea51756.tar.bz2
pipeworks-64b2611d8adbbc07bb92315eca9d71b74ea51756.tar.xz
pipeworks-64b2611d8adbbc07bb92315eca9d71b74ea51756.zip
prevent being able to place "loaded" and "on" items
(forces them to "empty" and "off")
Diffstat (limited to 'devices.lua')
-rw-r--r--devices.lua24
1 files changed, 5 insertions, 19 deletions
diff --git a/devices.lua b/devices.lua
index b64fe5e..4b7f574 100644
--- a/devices.lua
+++ b/devices.lua
@@ -65,7 +65,9 @@ function pipeworks.rotate_on_place(itemstack, placer, pointed_thing)
if minetest.registered_nodes[minetest.get_node(pos1).name]
and not minetest.registered_nodes[minetest.get_node(pos1).name]["buildable_to"] then return end
- local placednode = itemstack:get_name()
+ local placednode = string.gsub(itemstack:get_name(), "_loaded", "_empty")
+ placednode = string.gsub(placednode, "_on", "_off")
+
minetest.add_node(pos1, {name = placednode, param2 = fdir })
pipeworks.scan_for_pipe_objects(pos1)
@@ -179,9 +181,6 @@ for s in ipairs(states) do
sounds = default.node_sound_wood_defaults(),
walkable = true,
on_place = pipeworks.rotate_on_place,
- after_place_node = function(pos)
- pipeworks.scan_for_pipe_objects(pos)
- end,
after_dig_node = function(pos)
pipeworks.scan_for_pipe_objects(pos)
end,
@@ -222,9 +221,6 @@ minetest.register_node("pipeworks:valve_on_loaded", {
sounds = default.node_sound_wood_defaults(),
walkable = true,
on_place = pipeworks.rotate_on_place,
- after_place_node = function(pos)
- pipeworks.scan_for_pipe_objects(pos)
- end,
after_dig_node = function(pos)
pipeworks.scan_for_pipe_objects(pos)
end,
@@ -323,6 +319,7 @@ minetest.register_node("pipeworks:spigot_pouring", {
sounds = default.node_sound_wood_defaults(),
walkable = true,
after_place_node = function(pos)
+ minetest.set_node(pos, { name = "pipeworks:spigot", param2 = minetest.get_node(pos).param2 })
pipeworks.scan_for_pipe_objects(pos)
end,
after_dig_node = function(pos)
@@ -362,9 +359,6 @@ minetest.register_node("pipeworks:entry_panel_empty", {
sounds = default.node_sound_wood_defaults(),
walkable = true,
on_place = pipeworks.rotate_on_place,
- after_place_node = function(pos)
- pipeworks.scan_for_pipe_objects(pos)
- end,
after_dig_node = function(pos)
pipeworks.scan_for_pipe_objects(pos)
end,
@@ -384,9 +378,6 @@ minetest.register_node("pipeworks:entry_panel_loaded", {
sounds = default.node_sound_wood_defaults(),
walkable = true,
on_place = pipeworks.rotate_on_place,
- after_place_node = function(pos)
- pipeworks.scan_for_pipe_objects(pos)
- end,
after_dig_node = function(pos)
pipeworks.scan_for_pipe_objects(pos)
end,
@@ -408,9 +399,6 @@ minetest.register_node("pipeworks:flow_sensor_empty", {
sounds = default.node_sound_wood_defaults(),
walkable = true,
on_place = pipeworks.rotate_on_place,
- after_place_node = function(pos)
- pipeworks.scan_for_pipe_objects(pos)
- end,
after_dig_node = function(pos)
pipeworks.scan_for_pipe_objects(pos)
end,
@@ -449,9 +437,6 @@ minetest.register_node("pipeworks:flow_sensor_loaded", {
sounds = default.node_sound_wood_defaults(),
walkable = true,
on_place = pipeworks.rotate_on_place,
- after_place_node = function(pos)
- pipeworks.scan_for_pipe_objects(pos)
- end,
after_dig_node = function(pos)
pipeworks.scan_for_pipe_objects(pos)
end,
@@ -592,6 +577,7 @@ minetest.register_node("pipeworks:fountainhead_pouring", {
sounds = default.node_sound_wood_defaults(),
walkable = true,
after_place_node = function(pos)
+ minetest.set_node(pos, { name = "pipeworks:fountainhead", param2 = minetest.get_node(pos).param2 })
pipeworks.scan_for_pipe_objects(pos)
end,
after_dig_node = function(pos)