1
0
mirror of https://github.com/mt-mods/pipeworks.git synced 2024-11-05 18:10:21 +01:00
Commit Graph

515 Commits

Author SHA1 Message Date
Cy
28328d975c Multiple updates:
1)  Refactor autoplace,

There was a lot of redundant code and like a dozen unneccessary string
scans for every node next to every tube placed! I put it all into
indexed tables and loops instead of bizarre and unexplainable variable
names and copy and pasted code. There was also no support for notifying
a chest when an item has been taken from it by a filter, so I added
something for that.

I also thought it prudent to fall back on the
allow_metadata_inventory_take function should a special can_remove not
exist. In fact if can_insert doesn't exist, it calls
allow_metadata_inventory_put instead.

I also added a thing for allowing pipes to attach to nodes of other
modules, without having to hard code type all those node names into
autoplace.lua.  Basically node.tube.collects(i,param2) and i is the
direction from the pipe and param2 is the param2 of what it's pointing
at.

I also abstracted the inscrutable correlation between i and
param2 by trial and error (and the paramwand mod) into understandable
functions. There was no pipeworks namespace so I created it, and put
these functions into pipeworks.collects (as distinguished from a
        node.tube.collects function, which uses those functions)

And now it's too late to cart my old clothes to the thrift store,
dangit.

2)  My "node.tube.collects" idea might be redundant with the
node.tube.connect_sides thing, though possibly more versatile so I'll
leave it in.

3) I was using node.tube.connects and fancy functions for checking if it's
the sides or top or whatnot, and this connect_side thing came in. This
should make both my way and the way using connect_side work.

Also removed some debugging cruft
2013-10-14 23:45:07 -04:00
Novatux
79897c8fe6 Better deployer and node breaker mesecons rules. 2013-10-06 10:35:53 +02:00
Vanessa Ezekowitz
7546bb17fb tweak readme to mention the correct place for the documentation 2013-10-04 15:45:21 -04:00
Vanessa Ezekowitz
9830e26d90 Moved crafting guide to a separate branch (gh-pages) 2013-10-04 15:34:06 -04:00
Vanessa Ezekowitz
c80eeadf9c fix incorrect usage of after_place_node 2013-10-04 14:36:17 -04:00
chlue
6a9fdae4a1 simplify autocrafterCache, remove cache entry on node dig and disable debug output 2013-10-04 17:56:03 +02:00
Vanessa Ezekowitz
b9bbfbb754 clean up formatting a bit 2013-10-04 11:03:27 -04:00
chlue
0fadfa5372 Made autocrafter take less CPU/time 2013-10-04 10:41:23 -04:00
Pilcrow
cedb49d887 Fix hacky_swap_node to not repeatedly swap the same node in over and over 2013-09-13 11:09:57 -04:00
Uberi
59362e3d20 Add note about teleporter tubes reserved channels. 2013-08-12 18:51:56 -04:00
Vanessa Ezekowitz
b310c201b5 fix nil references in flowing_logic.lua 2013-08-07 22:16:47 -04:00
hdastwb
f66336394e added reserved teleport channels 2013-08-06 14:58:11 -04:00
Vanessa Ezekowitz
6323a923e0 always read default_settings.txt before reading the world-folder's settings file
also close the file after copying.
2013-08-05 04:36:50 -04:00
VanessaE
10d49abb2b Merge pull request #49 from hdastwb/notechalias
remove aliases to the technic deployers/node breakers
2013-07-25 16:00:02 -07:00
hdastwb
d44c2e6d3b removed aliases to the technic deployers/node breakers 2013-07-25 18:53:51 -04:00
Vanessa Ezekowitz
d3cb83c7eb oops, technic doesn't need to load first, it depends on pipeworks! duh 2013-07-22 01:07:42 -04:00
Vanessa Ezekowitz
c9b180116f fix the check for technic for craft recipes, use optional depends to
make sure it loads first
2013-07-22 01:02:29 -04:00
hdastwb
ec416df794 added support for 6d facedir for all tube components, changed autoplace.lua to follow tubes.connect_sides rather than having each component coded individually, and added support for placing deployers and node breakers facing vertically 2013-07-19 19:16:26 -04:00
Vanessa Ezekowitz
3862070bfd add license file 2013-07-18 12:25:05 -04:00
Vanessa Ezekowitz
26bcbd8d6f fixed a nil reference (filter code didn't check for unknown nodes) 2013-07-15 18:50:28 -04:00
Vanessa Ezekowitz
c0af957167 added ability to disable most components via config file in world folder
moved pipes out of init.lua and into a separate file.
some minor formatting changes
2013-07-13 22:39:25 -04:00
VanessaE
1a9a940e84 Merge pull request #47 from hdastwb/mesesandtube
MESE Sand Tubes
2013-07-13 18:26:56 -07:00
hdastwb
31680fcf80 added more powerful sand tubes (MESE sand tubes), along with associated crafts, textures, and documentation 2013-07-13 21:16:44 -04:00
VanessaE
b19b57ef4b Merge pull request #46 from hdastwb/lockedchest
Locked chest documentation
2013-07-09 20:13:50 -07:00
VanessaE
f42486f038 Merge pull request #45 from hdastwb/lockedchest
Locked chest integration
2013-07-08 20:40:13 -07:00
hdastwb
eb63173b08 added locked chests in Overview.html 2013-07-08 20:54:05 -04:00
hdastwb
2c89692b4a added locked chests to autoplace.lua 2013-07-08 20:29:53 -04:00
hdastwb
92f12404a3 added locked chests in compat.lua 2013-07-08 11:58:27 -04:00
Vanessa Ezekowitz
2f843fdd76 remove a bunch of useless metadata and settings
("pipelike" everywhere, but it isn't used for anything)
2013-07-04 03:12:45 -04:00
Vanessa Ezekowitz
7d8be5ddf0 got rid of oldpipes.lua 2013-07-04 02:58:44 -04:00
Vanessa Ezekowitz
7e7ddd9c95 rewrite flowing logic a bit to eliminate excessive add_node/remove_node calls
also got rid of obsolete optdepends
2013-07-04 00:01:08 -04:00
Anthony Zhang
479df82f2b Fix for older mod versions that used a different alias. 2013-07-01 20:38:10 -04:00
Vanessa Ezekowitz
df68784cec optdepends.txt is depecated. switched to ? syntax in depends.txt 2013-07-01 00:28:36 -04:00
Vanessa Ezekowitz
17ee4f6aab Phased out all deprecated minetest.env:* uses in favor of minetest.* 2013-06-30 23:55:07 -04:00
Vanessa Ezekowitz
4a88ed096d typo fix 2013-06-28 09:26:46 -04:00
VanessaE
9a3a9616f6 Merge pull request #44 from Novatux/simple
Add option to disable cyclic behaviour
2013-06-28 06:18:23 -07:00
Novatux
89be094a1e Add option to disable cyclic behaviour 2013-06-28 15:16:28 +02:00
VanessaE
5aceb445c4 Merge pull request #43 from Novatux/crossing
Add crossing tubes
2013-06-28 06:06:57 -07:00
Novatux
6ca5da4c3a Add crossing tubes 2013-06-28 15:03:24 +02:00
Vanessa Ezekowitz
01bfa588ce Added support to autoroute code for technic deployer and nodebreaker 2013-06-26 03:34:28 -04:00
Anthony Zhang
6b411ab8ad Node breakers now make sure the node is actually diggable before digging (implements the functionality of minetest.node_dig). Now can dig working mesecons and can't dig locked chests or other indestructable nodes. 2013-06-24 16:25:23 -04:00
Anthony Zhang
86fd181519 Update Overview.html with documentation about the node breaker and deployer, plus docuent the fact that tubes only connect to certain sides of certain devices, like injectors and furnaces. 2013-06-24 15:52:22 -04:00
Vanessa Ezekowitz
afc4981960 actually, filters should only connect from the right/output side since they
can't actually receive anything from the input side via a tube.
2013-06-24 07:59:14 -04:00
Vanessa Ezekowitz
3a0fd39bf6 rewrote autoplacement code to make it more aware of filters,
autocrafter, nodebreaker, deployer, and made sure each item will only
initiate a connection to those sides which can accept such.  Fixed
various autorouting bugs as I ran across them.  Autorouting for various
devices is now:

filters: left and right sides only
nodebreaker, deployer:  back only
autocrafter:  all six sides
chests:  top, bottom, left, right, back (not front)
furnace: bottom, left, right, back (not the top or front)
2013-06-23 21:36:13 -04:00
Anthony Zhang
5537257185 Whoops, tubes ought to connect to deployers! 2013-06-23 19:52:01 -04:00
Anthony Zhang
df0161f65e No infinite stacks allowed! Fix the bug where deployers have infinite stacks just like players. 2013-06-23 19:30:16 -04:00
Anthony Zhang
e728df46df Super duper pipeworks deployer and node breaker updates. 2013-06-23 19:15:31 -04:00
Vanessa Ezekowitz
47b6c25abe minor tweaks to various dofile() calls, moved one from tubes.lua to init.lua 2013-06-22 17:51:57 -04:00
Vanessa Ezekowitz
00e6d148d5 minor tweak to allow the register_tube() function to use any arbitrary
namespace for the tube instead of forcing it to be pipeworks:
2013-06-22 15:08:05 -04:00
Vanessa Ezekowitz
9a42a5f18b workaround for transported items sometimes just appearing out of nowhere
but not being diggable.  Made them have a really tiny collision box so
they can be pointed at if carefully done
2013-06-21 02:56:21 -04:00