added a "sealed" entry/exit panel (really just a horizontal pipe with a metal
authorVanessa Ezekowitz <vanessaezekowitz@gmail.com>
Tue, 1 Jan 2013 21:30:21 +0000 (16:30 -0500)
committerVanessa Ezekowitz <vanessaezekowitz@gmail.com>
Tue, 1 Jan 2013 21:30:21 +0000 (16:30 -0500)
panel overlayed into the middle).   Also, tweaked pipes to always drop the
empty ones.

autoplace.lua
devices.lua
init.lua

index 2e5556f05f74229e13167782f5b12e6b882fbf78..c70095f60d72f69c135edefa821ad1d39385320d 100644 (file)
@@ -149,6 +149,28 @@ function pipes_scansurroundings(pos)
                pzp=1
        end
 
+-- ...sealed pipe entry/exit...
+
+       if (string.find(nxm.name, "pipeworks:entry_panel") ~= nil)
+         and (nxm.param2 == 1 or nxm.param2 == 3) then
+               pxm=1
+       end
+
+       if (string.find(nxp.name, "pipeworks:entry_panel") ~= nil)
+         and (nxp.param2 == 1 or nxp.param2 == 3) then
+               pxp=1
+       end
+
+       if (string.find(nzm.name, "pipeworks:entry_panel") ~= nil)
+         and (nzm.param2 == 0 or nzm.param2 == 2) then
+               pzm=1
+       end
+
+       if (string.find(nzp.name, "pipeworks:entry_panel") ~= nil)
+         and (nzp.param2 == 0 or nzp.param2 == 2) then
+               pzp=1
+       end
+
 -- ...pumps, grates, and storage tanks
 
        if (string.find(nym.name, "pipeworks:storage_tank_") ~= nil) or
index 513104acbfa3673b68a1449eb947001afa661a84..fadba0955afb07e6e95d333676c2d1b45ec10c3d 100644 (file)
@@ -213,6 +213,48 @@ minetest.register_node("pipeworks:spigot", {
        }
 })
 
+-- sealed pipe entry/exit (decorative horizontal pipe passing through a metal
+-- wall, for use in places where walls should look like they're airtight)
+
+       local airtightboxes = {}
+       pipe_addbox(airtightboxes, pipe_frontstub)
+       pipe_addbox(airtightboxes, pipe_backstub)
+       pipe_addbox(airtightboxes, entry_panel)
+
+minetest.register_node("pipeworks:entry_panel", {
+       description = "Airtight Pipe entry/exit",
+       drawtype = "nodebox",
+       tiles = {
+               "pipeworks_plain.png",
+               "pipeworks_plain.png",
+               "pipeworks_plain.png",
+               "pipeworks_plain.png",
+               "pipeworks_pipe_end_empty.png",
+               "pipeworks_pipe_end_empty.png"
+       },
+       paramtype = "light",
+       paramtype2 = "facedir",
+       groups = {snappy=3, pipe=1},
+       sounds = default.node_sound_wood_defaults(),
+       walkable = true,
+       stack_max = 99,
+       after_place_node = function(pos)
+               pipe_scanforobjects(pos)
+       end,
+       after_dig_node = function(pos)
+               pipe_scanforobjects(pos)
+       end,
+       pipelike=1,
+       on_construct = function(pos)
+       local meta = minetest.env:get_meta(pos)
+       meta:set_int("pipelike",1)
+       end,
+       node_box = {
+               type = "fixed",
+               fixed = airtightboxes,
+       },
+})
+
 -- tanks
 
 for fill = 0, 10 do
index f875ce302c0eb60dc25d85d8dc526c4b0970baf1..f4d2514eb97b867fb2c180b422be743bb434c7fe 100644 (file)
--- a/init.lua
+++ b/init.lua
@@ -121,6 +121,10 @@ spigot_bottomstub = {
        { -8/64, -16/64, -3/64, 8/64, -14/64, 3/64 }
 }
 
+entry_panel = {
+       { -8/16, -8/16, -1/16, 8/16, 8/16, 1/16 }
+}
+
 --  Functions
 
 dbg = function(s)
@@ -307,7 +311,7 @@ for zp = 0, 1 do
                sounds = default.node_sound_wood_defaults(),
                walkable = true,
                stack_max = 99,
-               drop = "pipeworks:pipe_110000_loaded",
+               drop = "pipeworks:pipe_110000_empty",
                pipelike=1,
                on_construct = function(pos)
                local meta = minetest.env:get_meta(pos)