Commit Graph

907 Commits

Author SHA1 Message Date
Vanessa Ezekowitz
41ce9be8f3 notvel function can't be local - made global and confined to pipeworks.{} 2013-12-15 16:05:35 -05:00
Vanessa Ezekowitz
a4a74413c0 tube_item has to be global. confined it to pipeworks.{} table. 2013-12-15 14:41:03 -05:00
Vanessa Ezekowitz
6785ba39f4 local-ize one last var 2013-12-15 06:21:39 -05:00
Vanessa Ezekowitz
030ae3283d local-ize a few more variables 2013-12-15 06:10:03 -05:00
Vanessa Ezekowitz
072f78a360 local-ize yet a few more variables 2013-12-15 06:00:04 -05:00
Vanessa Ezekowitz
c0ce62dacf local-ize a few more variables and functions 2013-12-15 05:53:11 -05:00
Vanessa Ezekowitz
d099b9f8f0 get rid of an excess print() call 2013-12-15 05:46:39 -05:00
Vanessa Ezekowitz
53f6e67399 local-ize a few more functions 2013-12-15 05:40:26 -05:00
Vanessa Ezekowitz
2481c06bf0 fix incorrect variable name 2013-12-15 05:26:39 -05:00
Vanessa Ezekowitz
eabced6976 default settings have to be global or pipeworks can't see them
(duh!)  confined them to pipeworks.{} table.
2013-12-15 04:43:13 -05:00
Vanessa Ezekowitz
659b4e42b2 local-ize a few more variables, move all of the nodebox models
into their own file and confine them and pretty much everything
else to the pipeworks.{} table (still global though).  More to
come.
2013-12-15 04:35:59 -05:00
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 4f9c7a43c9f1f0ab3286c755c49bd8d2951b4dc8.
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