From 3a1edac06ce193179b58ffcd055b492839d30018 Mon Sep 17 00:00:00 2001 From: thetaepsilon-gamedev Date: Sun, 1 Oct 2017 13:00:41 +0100 Subject: new flow logic: register_local_pipes.lua: make spigots work again --- new_flow_logic/flowable_node_registry.lua | 2 +- new_flow_logic/register_local_pipes.lua | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'new_flow_logic') diff --git a/new_flow_logic/flowable_node_registry.lua b/new_flow_logic/flowable_node_registry.lua index f3548a4..f2ebdcb 100644 --- a/new_flow_logic/flowable_node_registry.lua +++ b/new_flow_logic/flowable_node_registry.lua @@ -76,7 +76,7 @@ register.output = function(nodename, threshold, outputfn) checkbase(nodename) pipeworks.flowables.outputs.list[nodename] = { threshold=threshold, outputfn=outputfn } if pipeworks.enable_new_flow_logic then - abmregister.output(nodename, maxpressure, outputfn) + abmregister.output(nodename, threshold, outputfn) end end diff --git a/new_flow_logic/register_local_pipes.lua b/new_flow_logic/register_local_pipes.lua index ca12244..b8cb7f0 100644 --- a/new_flow_logic/register_local_pipes.lua +++ b/new_flow_logic/register_local_pipes.lua @@ -8,6 +8,9 @@ local thresholds = {} -- limit on pump pressure - will not absorb more than can be taken thresholds.pump_pressure = 2 +-- activation threshold for spigot +-- should not be below 1, as spigot helper code indiscriminately places a water source node if run. +thresholds.spigot_min = 1 @@ -15,6 +18,7 @@ local pipes_full_nodenames = pipeworks.pipes_full_nodenames local pipes_empty_nodenames = pipeworks.pipes_empty_nodenames local register = pipeworks.flowables.register +local flowlogic = pipeworks.flowlogic @@ -40,5 +44,9 @@ if pipeworks.enable_pipes then register.simple(spigot_off) register.intake_simple(pump_on, thresholds.pump_pressure) + -- TODO: the code doesn't currently care if the spigot is the visually flowing node or not. + -- So some mechanism to register on/off states would be nice + register.output(spigot_off, thresholds.spigot_min, flowlogic.helpers.output_spigot) + register.output(spigot_on, thresholds.spigot_min, flowlogic.helpers.output_spigot) end end -- cgit v1.2.3