diff options
| author | thetaepsilon-gamedev <thetaepsilon-gamedev@noreply.users.github.com> | 2017-09-27 16:20:07 +0100 | 
|---|---|---|
| committer | thetaepsilon-gamedev <thetaepsilon-gamedev@noreply.users.github.com> | 2017-09-27 16:20:07 +0100 | 
| commit | 67350b55bb00a8787ebfa3e5ab6763748cfd792d (patch) | |
| tree | 73dc6b2f58f5177d048d87c71c54457ccfd8171c | |
| parent | c5e5aa069fd45ba8d617bf4192f59699ddcdb186 (diff) | |
pipes.lua: wire up pump intake ABM and add pumps to balancing logic
| -rw-r--r-- | pipes.lua | 21 | 
1 files changed, 20 insertions, 1 deletions
| @@ -239,10 +239,19 @@ else  -- run pressure balancing ABM over all water-moving nodes +-- FIXME: DRY principle, get this from elsewhere in the code +local pump_on = "pipeworks:pump_on" +local pump_off = "pipeworks:pump_off" +  local pipes_all_nodenames = pipes_full_nodenames  for _, pipe in ipairs(pipes_empty_nodenames) do  	table.insert(pipes_all_nodenames, pipe)  end +table.insert(pipes_all_nodenames, pump_off) +table.insert(pipes_all_nodenames, pump_on) + + +  minetest.register_abm({  	nodenames = pipes_all_nodenames,  	interval = 1, @@ -252,6 +261,16 @@ minetest.register_abm({  	end  }) +-- absorb water into pumps if it'll fit +minetest.register_abm({ +	nodenames = { pump_on }, +	interval = 1, +	chance = 1, +	action = function(pos, node, active_object_count, active_object_count_wider) +		pipeworks.run_pump_intake(pos, node) +	end +}) + -end
\ No newline at end of file +end | 
