From aaef5eb22b439c3e410942c39726e58c0c041c40 Mon Sep 17 00:00:00 2001 From: thetaepsilon-gamedev Date: Sat, 30 Sep 2017 22:56:12 +0100 Subject: register_flow_logic.lua: factor out per-node input ABM registration --- register_flow_logic.lua | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/register_flow_logic.lua b/register_flow_logic.lua index f82b8a9..60fc820 100644 --- a/register_flow_logic.lua +++ b/register_flow_logic.lua @@ -32,16 +32,22 @@ for nodename, _ in pairs(pipeworks.flowables.list.simple) do register_abm_balance(nodename) end -if pipeworks.enable_pipe_devices then - -- absorb water into pumps if it'll fit +local register_abm_input = function(nodename, properties) minetest.register_abm({ - nodenames = pipeworks.flowables.inputs.nodenames, + nodenames = { nodename }, interval = 1, chance = 1, action = function(pos, node, active_object_count, active_object_count_wider) pipeworks.flowlogic.run_pump_intake(pos, node) end }) +end + +if pipeworks.enable_pipe_devices then + -- absorb water into pumps if it'll fit + for nodename, properties in pairs(pipeworks.flowables.inputs.list) do + register_abm_input(nodename, properties) + end -- output water from spigots -- add both "on/off" spigots so one can be used to indicate a certain level of fluid. -- cgit v1.2.3