From 3a7b9fa31ce872ca15b590bf7f2667aa10ec8646 Mon Sep 17 00:00:00 2001 From: Vanessa Ezekowitz Date: Mon, 14 Jan 2013 14:17:07 -0500 Subject: [PATCH] Added a little stub to the bottom of the spigot, showing the water texture, so that when a spigot is flowing, it looks like water is actually pouring out of it. --- devices.lua | 53 +++++++++++++++++++++++++- flowing_logic.lua | 6 ++- textures/pipeworks_spigot_bottom2.png | Bin 0 -> 3389 bytes textures/pipeworks_spigot_sides.png | Bin 3232 -> 338 bytes textures/pipeworks_spigot_sides2.png | Bin 0 -> 267 bytes 5 files changed, 56 insertions(+), 3 deletions(-) create mode 100644 textures/pipeworks_spigot_bottom2.png create mode 100644 textures/pipeworks_spigot_sides2.png diff --git a/devices.lua b/devices.lua index 9d6a6d8..faa1b86 100644 --- a/devices.lua +++ b/devices.lua @@ -48,6 +48,12 @@ spigot_bottomstub = { { -8/64, -16/64, -3/64, 8/64, -14/64, 3/64 } } +spigot_stream = { + { -3/64, -48/64, -5/64, 3/64, -16/64, 5/64 }, + { -4/64, -48/64, -4/64, 4/64, -16/64, 4/64 }, + { -5/64, -48/64, -3/64, 5/64, -16/64, 3/64 } +} + entry_panel = { { -8/16, -8/16, -1/16, 8/16, 8/16, 1/16 } } @@ -194,12 +200,18 @@ minetest.register_node("pipeworks:grating", { pipe_addbox(spigotboxes, spigot_bottomstub) pipe_addbox(spigotboxes, pipe_bendsphere) + local spigotboxes_pouring = {} + pipe_addbox(spigotboxes_pouring, spigot_stream) + pipe_addbox(spigotboxes_pouring, pipe_backstub) + pipe_addbox(spigotboxes_pouring, spigot_bottomstub) + pipe_addbox(spigotboxes_pouring, pipe_bendsphere) + minetest.register_node("pipeworks:spigot", { description = "Spigot outlet", drawtype = "nodebox", tiles = { "pipeworks_spigot_sides.png", - "pipeworks_pipe_end_empty.png", + "pipeworks_spigot_sides.png", "pipeworks_spigot_sides.png", "pipeworks_spigot_sides.png", "pipeworks_pipe_end_empty.png", @@ -231,6 +243,45 @@ minetest.register_node("pipeworks:spigot", { } }) +minetest.register_node("pipeworks:spigot_pouring", { + description = "Spigot outlet", + drawtype = "nodebox", + tiles = { + "pipeworks_spigot_sides.png", + "pipeworks_spigot_sides.png", + "default_water.png^pipeworks_spigot_sides2.png", + "default_water.png^pipeworks_spigot_sides2.png", + "default_water.png^pipeworks_spigot_sides2.png", + "default_water.png^pipeworks_spigot_sides2.png" + }, + paramtype = "light", + paramtype2 = "facedir", + groups = {snappy=3, pipe=1}, + sounds = default.node_sound_wood_defaults(), + walkable = true, + pipelike=1, + on_construct = function(pos) + local meta = minetest.env:get_meta(pos) + meta:set_int("pipelike",1) + end, + after_place_node = function(pos) + pipe_scanforobjects(pos) + end, + after_dig_node = function(pos) + pipe_scanforobjects(pos) + end, + node_box = { + type = "fixed", + fixed = spigotboxes_pouring, + }, + selection_box = { + type = "fixed", + fixed = { -2/16, -6/16, -2/16, 2/16, 2/16, 8/16 } + }, + drop = "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) diff --git a/flowing_logic.lua b/flowing_logic.lua index d58d124..dffdabf 100644 --- a/flowing_logic.lua +++ b/flowing_logic.lua @@ -79,8 +79,10 @@ local spigot_check = function(pos,node) local top = minetest.env:get_node(check[node.param2+1]).name dbg('found '..top) if string.find(top,'_loaded') then + minetest.env:add_node({x=pos.x,y=pos.y,z=pos.z},{name='pipeworks:spigot_pouring'}) minetest.env:add_node({x=pos.x,y=pos.y-1,z=pos.z},{name='default:water_source'}) elseif minetest.env:get_node({x=pos.x,y=pos.y-1,z=pos.z}).name == 'default:water_source' then + minetest.env:add_node({x=pos.x,y=pos.y,z=pos.z},{name='pipeworks:spigot'}) minetest.env:remove_node({x=pos.x,y=pos.y-1,z=pos.z}) end end @@ -100,11 +102,11 @@ minetest.register_abm({ }) minetest.register_abm({ - nodenames = {'pipeworks:outlet','pipeworks:spigot'}, + nodenames = {'pipeworks:outlet','pipeworks:spigot','pipeworks:spigot_pouring'}, interval = 1, chance = 1, action = function(pos, node, active_object_count, active_object_count_wider) if node.name == 'pipeworks:outlet' then update_outlet(pos) - elseif node.name == 'pipeworks:spigot' then spigot_check(pos,node) end + elseif node.name == 'pipeworks:spigot' or node.name == 'pipeworks:spigot_pouring' then spigot_check(pos,node) end end }) diff --git a/textures/pipeworks_spigot_bottom2.png b/textures/pipeworks_spigot_bottom2.png new file mode 100644 index 0000000000000000000000000000000000000000..3d4435b018cfb9f876294d124460a185515b05ac GIT binary patch literal 3389 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 Tal>Np00000NkvXXu0mjfvYMHF literal 0 HcmV?d00001 diff --git a/textures/pipeworks_spigot_sides.png b/textures/pipeworks_spigot_sides.png index e41599f1cb7c9d2684f976cefd97a10f92e94523..ce7d90a2510cf3f323ca3139a1eb5af24f248c94 100644 GIT binary patch delta 317 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 N44$rjF6*2UngC|~YV803 literal 0 HcmV?d00001