Commit Graph

746 Commits

Author SHA1 Message Date
Vanessa Ezekowitz
bd80f18cfc local-ize pretty muchg everything that was previously global except where
stuff needs to be globally-visible.  Also, fix a bad drop on valve.
2013-12-15 02:53:10 -05:00
Vanessa Ezekowitz
b43a1036ca catch a similar nil condition in the node breaker 2013-12-10 22:39:53 -05:00
Vanessa Ezekowitz
29da8992ec More sanity checks on the nodeside() function, courtesy ShadowNinja 2013-12-10 21:41:15 -05:00
Vanessa Ezekowitz
e4a7af5858 Better way to catch that incoming nil, return a real value on the way out 2013-12-10 21:18:29 -05:00
Vanessa Ezekowitz
ebfa12205a Revert "catch nil return from facedir_to_dir() in tube autoplace code"
This reverts commit 4f9c7a43c9.
2013-12-10 21:16:33 -05:00
Vanessa Ezekowitz
4f9c7a43c9 catch nil return from facedir_to_dir() in tube autoplace code 2013-12-10 21:09:38 -05:00
Vanessa Ezekowitz
bd58778810 add "metallic" tube connection image for other mods to use 2013-12-03 15:05:52 -05:00
Vanessa Ezekowitz
a15b69802e make the tube connection images for furnaces/chests into overlays
also don't redefine furnace top - tubes don't connect there anyways
2013-12-02 19:29:35 -05:00
Vanessa Ezekowitz
3dfe770272 Phased out old register_on_punchnode() calls in favor of per-node on_punch
callbacks.  Got rid of all the old backward-compat device aliases.
2013-11-28 02:33:31 -05:00
Vanessa Ezekowitz
65901b7dd7 Removed code that detects technic and disables default recipes.
Made tubes and conductor tubes more expensive (yield 6 instead of 12).
2013-11-28 01:20:34 -05:00
Vanessa Ezekowitz
604d5310a1 Add recipes for fountainhead and one-way tube 2013-11-27 18:13:35 -05:00
Vanessa Ezekowitz
713cf01585 limit tube autoconnect checking to only run if tube.connect_sides
is defined for a particular node (rather than the whole tube table).

Also, tweak wording of an error message to account for line
numbering changes.
2013-11-26 00:46:36 -05:00
Vanessa Ezekowitz
bd1d8bbd86 Make the tube_connects={} method work properly for technic devices.
Also phase out "old new" API, leaving only the "tube_connects={}" method,
as nothing in technic or pipeworks uses it.

Fix a few more places where minetest.facedir_to_dir() was duplicated, since
that code is part of Minetest 0.4.8.
2013-11-26 00:26:38 -05:00
Vanessa Ezekowitz
bf7993b802 get rid of some extraneous print statements 2013-11-25 23:59:52 -05:00
Vanessa Ezekowitz
7289bfcfba Split pipe and tube autorouting functions into separate files. 2013-11-25 23:55:52 -05:00
Vanessa Ezekowitz
d3825b6db6 fix bad lighting on one-way tube 2013-11-19 13:10:35 -05:00
Vanessa Ezekowitz
e7a1fed5d3 stop leaking clone_node() function outside of pipeworks namespace 2013-11-14 18:54:50 -05:00
Vanessa Ezekowitz
1c7f2722d6 fix non-working water flow sensor, add proper side texture for it 2013-11-09 13:21:19 -05:00
Novatux
c7e9c7c160 Fix node breaker crash. 2013-10-30 08:45:29 +01:00
Novatux
dc1ef38a58 Fix autocrafter not taking enough items if number of needed items of a kind > stack max for that item. 2013-10-30 08:33:34 +01:00
Vanessa Ezekowitz
7887d28e08 make worldpath and modpath pipeworks-namespace-specific and global 2013-10-29 14:08:23 -04:00
Vanessa Ezekowitz
3d19cca557 Add fountainhead (vertical spigot, basically). 2013-10-27 22:38:19 -04:00
Vanessa Ezekowitz
a59e147013 Make nodebreaker and deployer use wood group instead of default wood 2013-10-24 21:18:40 -04:00
Novatux
2e2862576d Fix for player height 2013-10-24 12:49:07 +02:00
Novatux
2d4c5cf257 Complete fake player for deployer 2013-10-24 07:51:56 +02:00
Novatux
12eb772d18 Fix crossing tube and one way tube. 2013-10-21 11:34:10 +02:00
Novatux
6eaf8eac62 FiX CYCLIC option being ignored. 2013-10-21 11:15:12 +02:00
Vanessa Ezekowitz
b62b5bc9e1 Merge branch 'master' of github.com:VanessaE/pipeworks 2013-10-20 21:09:53 -04:00
Vanessa Ezekowitz
89cd1c86a7 Furnace and chest textures now have pipeworks-specific names to allow
for texture packs to cover them.  Also, added proper top and bottom
textures for both.
2013-10-20 21:08:46 -04:00
Novatux
3c8266d3ee Add one way tube 2013-10-19 15:34:04 +02:00
Cy
ce1acebf6d Check for on_metadata_inventory_take 2013-10-15 18:37:45 -04:00
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