Commit Graph

721 Commits

Author SHA1 Message Date
thetaepsilon-gamedev
e41167813b new flow logic: flowable node registry: add directional flow type class 2017-10-16 23:18:00 +01:00
thetaepsilon-gamedev
0e74978a73 new flow logic: abm_register.lua: give core ABM a label 2017-10-16 21:01:09 +01:00
Vanessa Ezekowitz
04db73aa6c Merge pull request #206 from Hawk777/more-tube-parameters
Enhance params to can_remove and remove_item
2017-10-16 10:24:51 -04:00
Christopher Head
15bb7b129c
Enhance params to can_remove and remove_item
By passing the list name and the slot index, these functions now receive
all data related to removal of an item from an inventory: the side on
which the removal is taking place, as well as which stack is being
pulled from. This means it’s no longer necessary to choose between
implementing `on_metadata_inventory_take` (which tells you which item
stack was pulled from but not from which side of the node) or
`remove_item` (which tells you which side the filter is on but not which
item stack it wants to take).
2017-10-15 22:59:20 -07:00
thetaepsilon-gamedev
30bedbfecc new flow logic: abms.lua: hoist simple flowable neighbour calculation into if-block in preparation for directional flowables support 2017-10-15 18:18:48 +01:00
thetaepsilon-gamedev
edbb3aace9 todo: new flow logic: spigot/fountainheads to place flowing water on turn-off; make decorative gratings do something useful 2017-10-15 15:32:07 +01:00
thetaepsilon-gamedev
fa4817136c changelog.txt: add entry for node breaker work 2017-10-14 21:48:44 +01:00
Vanessa Ezekowitz
2e0891cf1b revise nodebreaker front/business end textures 2017-10-14 16:11:05 -04:00
thetaepsilon-gamedev
cd9102cef1 wielder.lua: add LBM to refund mese picks for pre-transition node breakers 2017-10-14 20:00:46 +01:00
thetaepsilon-gamedev
eefcbc1e86 wielder.lua: can_tool_dig_node(): try falling back to hand if inserted tool can't break node 2017-10-14 19:29:33 +01:00
thetaepsilon-gamedev
47ba123113 wielder.lua: change node breaker recipe to use gear items 2017-10-14 19:17:03 +01:00
thetaepsilon-gamedev
4915b2564f wielder.lua: properly implement can_tool_dig_node() 2017-10-14 19:04:51 +01:00
thetaepsilon-gamedev
f8cb55a60e wielder.lua: set default ghost tool for node breaker to the hand, add stub implementation of can_tool_dig_node() to check if set tool can dig node 2017-10-14 18:51:57 +01:00
Vanessa Ezekowitz
366dd24e5b add a proper gear image 2017-10-14 12:48:43 -04:00
thetaepsilon-gamedev
a81834558a crafts.lua: add gear item for node breaker crafting 2017-10-14 17:13:45 +01:00
thetaepsilon-gamedev
b0de9d9958 clean up node breaker textures to remove spikes 2017-10-13 22:39:14 +01:00
Vanessa Ezekowitz
a028aef9c9 Merge pull request #204 from thetaepsilon-gamedev/master
More pressure_logic work
2017-10-09 06:38:54 -04:00
thetaepsilon-gamedev
467907602b changelog.txt: back entries for pressure_logic work 2017-10-08 19:22:07 +01:00
thetaepsilon-gamedev
085ee7b497 todo: remove new flow logic item about node variant switching 2017-10-08 19:13:52 +01:00
thetaepsilon-gamedev
72f793e2b3 new flow logic: abm_register.lua: add extra safeguarding for conditional activation of new flow logic 2017-10-08 19:11:58 +01:00
thetaepsilon-gamedev
084174123d default_settings.lua: remove old default for new_flow_logic left over from transition to pipeworks.toggles.pressure_logic 2017-10-08 18:21:17 +01:00
thetaepsilon-gamedev
d5e3f1cf68 new flow logic: implement post-transition hook with mesecons support, add mesecons transition rules for flow sensor 2017-10-08 17:38:28 +01:00
thetaepsilon-gamedev
ce0983d239 devices.lua: adjust flow sensor threshold to more closely model classic mode 2017-10-08 16:41:00 +01:00
thetaepsilon-gamedev
c2553928f2 new flow logic: flowable_node_registry_install.lua: add set size checking guard 2017-10-08 16:20:30 +01:00
thetaepsilon-gamedev
eaf6c33bae new flow logic: abms.lua: implement node transitions 2017-10-08 16:19:51 +01:00
thetaepsilon-gamedev
32a24730f1 new flow logic: change simple transition set logic to take list of key-value pairs, add set registration for flow sensor pipe 2017-10-08 15:07:12 +01:00
thetaepsilon-gamedev
e98e4e268b new flow logic: flowable node registry: add initial support for transition triggers 2017-10-08 14:27:40 +01:00
thetaepsilon-gamedev
7e09da50c2 todo: update new flow logic items for cleanup handler work 2017-10-08 11:41:42 +01:00
thetaepsilon-gamedev
6a25e56336 new flow logic: algorithmic and value tuning for non-finite mode 2017-10-08 11:32:08 +01:00
thetaepsilon-gamedev
f94c93bb59 new flow logic: abms.lua: implement non-finite mode cleanupfn invocation in run_output() 2017-10-07 22:35:08 +01:00
thetaepsilon-gamedev
d4346919bc new flow logic: abms.lua: pass initial pressure to run_output() to allow falling-level event detection 2017-10-07 22:29:17 +01:00
thetaepsilon-gamedev
9ab197af2f new flow logic: abms.lua: implement non-finite mode behaviour for neighbour output helper 2017-10-07 22:21:54 +01:00
thetaepsilon-gamedev
07e769d1b9 new flow logic: abms.lua: pass finite mod flag to output handler callbacks in flowlogic.run_output() 2017-10-07 22:07:30 +01:00
thetaepsilon-gamedev
bd32b4fca2 new flow logic: abms.lua: pass finite mode flag to run_output() 2017-10-07 22:03:53 +01:00
thetaepsilon-gamedev
453a114cd0 new flow logic: flowable_node_registry_install.lua: add cleanupfn argument to register.output() 2017-10-07 21:55:49 +01:00
thetaepsilon-gamedev
187e755aa5 new flow logic: abms.lua: don't unpack outputdef variables in flowlogic.run(), leave to flowlogic.run_output() 2017-10-07 21:44:33 +01:00
thetaepsilon-gamedev
ea92bfe4d3 devices.lua: raise maximum pressure for pumps 2017-10-07 21:36:41 +01:00
thetaepsilon-gamedev
91d057fcab new flow logic: tear out old abm registration code 2017-10-07 19:42:49 +01:00
thetaepsilon-gamedev
9c770532e6 new flow logic: abms.lua: refactor run_input to run as part of master run() ABM 2017-10-07 19:19:09 +01:00
thetaepsilon-gamedev
be1a6d53aa new flow logic: flowable_node_registry_install.lua: factor out register.intake_simple into generic registration and helper wrapper 2017-10-07 18:07:55 +01:00
thetaepsilon-gamedev
65b3448796 new flow logic: abms.lua: refactor flowlogic.run_output() into a processing stage of flowlogic.run() 2017-10-07 17:55:14 +01:00
thetaepsilon-gamedev
016f9de82f new flow logic: abms.lua: refactor ABM logic into new master ABM, make balance_pressure() take current pressure and return new pressure 2017-10-07 17:33:42 +01:00
thetaepsilon-gamedev
608a9a6980 new flow logic: abms.lua: wrap up pressure value accesses behind accessor object 2017-10-07 17:14:50 +01:00
thetaepsilon-gamedev
34cfee8a2f new flow logic: start adding replacement ABM logic 2017-10-07 16:12:36 +01:00
thetaepsilon-gamedev
1669cfd451 new flow logic: flowable_node_registry_install.lua: add duplicate registration guard for register.output() 2017-10-07 15:42:00 +01:00
thetaepsilon-gamedev
d175f0b94f todo: new flow logic: add item for node variant switching 2017-10-07 13:49:33 +01:00
thetaepsilon-gamedev
157f117c62 todo: new flow logic: add directionality code and ABM ordering items 2017-10-07 13:40:38 +01:00
thetaepsilon-gamedev
57362118dc todo: remove old item for is_node_flowable() 2017-10-07 13:25:44 +01:00
thetaepsilon-gamedev
6f90ee0875 new flow logic: abms.lua: add companion cleaner helper for neighbour output 2017-10-07 13:24:46 +01:00
thetaepsilon-gamedev
31a67cf4f9 new flow logic: flowable_node_registry_install.lua: add proper documentation for register.output_simple() 2017-10-07 13:15:42 +01:00