1
0
mirror of https://github.com/mt-mods/pipeworks.git synced 2025-06-28 22:36:31 +02:00

5 Commits

Author SHA1 Message Date
a69c210b56 remove value/sensor conversion LBM
no longer needed, broken anyway
2018-09-08 16:20:27 -04:00
cb8a4f3cec Merge branch 'fix-wiki-link' into 'master'
Fix link to wiki documentation

See merge request VanessaE/pipeworks!2
2018-08-24 07:06:19 +00:00
002bcbf850 Fix link to wiki documentation 2018-08-23 23:29:30 -07:00
6fdda18390 Handle nil return value for add_item
Remove old comments. Current HEAD requires version ~0.4.16
2018-08-04 12:27:09 +02:00
6492b8ec76 Add node breaker sounds (#219)
Also, disallow node breakers to dig unknown nodes
and a bit whitespace fix
2018-08-01 16:41:55 +02:00
4 changed files with 23 additions and 26 deletions

2
README
View File

@ -1,7 +1,7 @@
This mod uses nodeboxes to supply a complete set of 3D pipes and tubes,
along devices that work with them.
See https://github.com/VanessaE/pipeworks/wiki/ for detailed information about usage of this mod.
See https://gitlab.com/VanessaE/pipeworks/wikis/ for detailed information about usage of this mod.
Unlike the previous version of this mod, these pipes are rounded, and when
placed, they'll automatically join together as needed. Pipes can go vertically

View File

@ -738,21 +738,3 @@ new_flow_logic_register.directional_horizonal_rotate(nodename_sp_loaded, true)
minetest.register_alias("pipeworks:valve_off_loaded", "pipeworks:valve_off_empty")
minetest.register_alias("pipeworks:entry_panel", "pipeworks:entry_panel_empty")
minetest.register_lbm({
name = "pipeworks:rotate_valves_flowsensors",
label = "Flip pipeworks valves and flow sensors around X/Z",
run_at_every_load = false,
nodenames = {
"pipeworks:flow_sensor_empty",
"pipeworks:flow_sensor_loaded",
"pipeworks:valve_off_empty",
"pipeworks:valve_on_empty",
"pipeworks:valve_off_loaded",
},
action = function(pos, node)
local dir = minetest.facedir_to_dir(node.param2)
local newdir = { x=dir.z, y=dir.y, z=dir.x }
local newfdir = minetest.dir_to_facedir(newdir)
minetest.swap_node(pos, { name = node.name, param2 = newfdir })
end
})

View File

@ -350,8 +350,10 @@ luaentity.register_entity("pipeworks:tubed_item", {
-- compatible with Minetest 0.4.13.
-- Using item_drop here makes Minetest 0.4.13 crash.
local dropped_item = minetest.add_item(self.start_pos, stack)
dropped_item:set_velocity(vector.multiply(velocity, 5))
self:remove()
if dropped_item then
dropped_item:set_velocity(vector.multiply(velocity, 5))
self:remove()
end
return
else
velocity = vector.multiply(velocity, -1)

View File

@ -331,12 +331,25 @@ if pipeworks.enable_node_breaker then
virtplayer:set_wielded_item(wieldstack)
else
local under_node = minetest.get_node(pointed_thing.under)
local on_dig = (minetest.registered_nodes[under_node.name] or {on_dig=minetest.node_dig}).on_dig
-- check that the current tool is capable of destroying the target node.
local def = minetest.registered_nodes[under_node.name]
if not def then
-- do not dig an unknown node
return
end
-- check that the current tool is capable of destroying the
-- target node.
-- if we can't, don't dig, and leave the wield stack unchanged.
-- note that wieldstack:get_tool_capabilities() returns hand properties if the item has none of it's own.
if can_tool_dig_node(under_node.name, wieldstack:get_tool_capabilities(), wieldstack:get_name()) then
on_dig(pointed_thing.under, under_node, virtplayer)
-- note that wieldstack:get_tool_capabilities() returns hand
-- properties if the item has none of it's own.
if can_tool_dig_node(under_node.name,
wieldstack:get_tool_capabilities(),
wieldstack:get_name()) then
def.on_dig(pointed_thing.under, under_node, virtplayer)
local sound = def.sounds and def.sounds.dug
if sound then
minetest.sound_play(sound.name,
{pos=pointed_thing.under, gain=sound.gain})
end
wieldstack = virtplayer:get_wielded_item()
else
--pipeworks.logger(dname.."couldn't dig node!")