Commit Graph

409 Commits

Author SHA1 Message Date
Novatux
8cc2ecb55f Fix wielder 2014-08-14 22:10:39 +02:00
Novatux
bf6fe237de Fix typo 2014-08-14 22:02:36 +02:00
Novatux
15db1d23cc Remove useless callbacks 2014-08-14 21:24:20 +02:00
Novatux
d4e14bc891 Add legacy code for items in tubes 2014-08-14 21:18:48 +02:00
Novatux
d5480f5ff0 Major rewrite of items in tubes 2014-08-14 16:22:03 +02:00
Zefram
a9866aa5d5 Node breaker fixup for ones lacking pick slot
This has been seen on Vanessa's server, and caused the wielding code
to crash.
2014-08-09 10:57:43 -04:00
Vanessa Ezekowitz
487007f2a4 don't add active furnace to creative inv 2014-08-06 17:14:16 -04:00
Kevin Zheng
a7d8d99913 Use 'group:stick' instead of 'default:stick' 2014-07-30 16:22:28 -05:00
Vanessa Ezekowitz
e2a8c03066 get rid of the old pipeworks clone node function
use minetest.override_item() instead
2014-07-30 14:13:17 -04:00
Vanessa Ezekowitz
3c348592cb use current homedecor plastic sheet texture 2014-07-28 21:18:40 -04:00
Vanessa Ezekowitz
39b56074ad update pipeworks to use modern homedecor-style crafting chain
craft 6 any leaves -> oil extract, cook oil -> paraffin,
cook paraffin -> plastic

old "plastic base" is aliased to paraffin.
2014-07-28 21:14:38 -04:00
Zefram
7cf5e3cfb9 Refactor node breaker
Merge node breaker into the generic wielder mechanism.  Center the wield
inventory in all wielders' formspecs.  Implement full auto-upgrade of
legacy node breakers, occurring upon use or punching of the node breaker.
Make node breaker respect on_dig hooks.
2014-07-23 09:50:50 -04:00
Zefram
46d44eebcf Refactor deployer and dispenser
Merge implementations into a single "wielder" mechanism.  Clean up the
code a bit.  Fix get_player_control_bits for the dispenser (it wasn't
indicating the sneak setting).  Fix drops for dispenser (dispenser_on was
dropping as itself).  Show item image, as well as name, at head of form.
2014-07-23 09:50:50 -04:00
Zefram
b832c0ad06 Slot sequencing modes for filter-injectors
The filter-injectors used to always prefer to take items from the
beginning of the source inventory.  Because items also tend to get placed
at the beginning of an inventory, this could lead to a chest+injector
buffer only passing through a trickle of one type of item, where other
item types are flowing in and getting later inventory slots.  So now,
the sequencing of source inventory slots is configurable, per-injector,
by form.  In addition to the old priority mode, there's now a random
mode and a rotation mode.

Incidentally refactor the filter-injector code, to avoid duplication
between the itemwise and stackwise variants.
2014-07-21 19:03:56 -04:00
Zefram
1c3fb6b1c5 rename "filter" to "filter-injector"
"Injector" better describes the nodes' main purpose.
2014-07-21 14:47:50 -04:00
Zefram
bd37e96222 Make sorting tube dialog lag-resistant 2014-07-21 14:43:37 -04:00
Zefram
c5ab801741 Better teleport tube control dialog
Describe the two modes as "Send and Receive" and "Send only", rather
than the misleading "On" and "Off".  Also make the mode toggle button
lag-resistant.
2014-07-21 14:43:37 -04:00
Zefram
ebccf81758 Add dispenser
The dispenser is an automated item dropper.
2014-07-21 09:52:58 -04:00
Zefram
22eb00e5d1 Let stack of projectiles diminish in node breaker
The logic that prevents mechanically wearing a tool was also preventing
the diminution of a stack of items to use, such as a stack of snowballs.
Restrict the use of pickcopy to the case where the stack still has the
same item type, count, and metadata.
2014-07-21 09:52:53 -04:00
Zefram
aee9f7e6d6 Add trash can
The trash can can be used either manually (via form) or at the end of
a pipe.  It destroys whatever is placed in it.
2014-07-15 00:52:33 +01:00
Zefram
571d1d45ee Don't show legacy auto-tree-tap in creative invy 2014-07-14 14:55:31 -04:00
Zefram
2b5aeda9d1 Set infotext for node breakers
As node breakers now have a form, they should also have infotext to draw
attention to it, as do most form-containing nodes.
2014-07-14 14:55:29 -04:00
Zefram
6432bf721d Don't spill an extra pick from old node breakers
Due to historical shenanigans around the addition of the pick slot to
node breakers, some breakers that were placed before the addition have
ended up with a mese pick in their newly-acquired pick slot, rather than
in the ghost_pick slot where it belongs.  This causes these breakers to
spill this ghost pick when they are broken.  To avoid this, make pick
spilling conditional on the breaker having a formspec: pre-slot breakers
don't have one.
2014-07-14 14:55:27 -04:00
Zefram
ce1505d008 Fix detector tube item counting
A detector tube would sometimes miss a decrement, due to the pos structure
passed to can_go being modified by the tubed-item entity while it's also
sitting in the timer queue as an argument to item_exit.  As the can_go
API actually depends on being able to mutate the pos structure (see the
teleporter tube), we can't just start passing in a never-mutated copy
of pos.  So for now just fix in the detector tube's can_go, by copying the
structure there.  Incidentally, make the decrement mechanism consistent
between the two forms of increment.
2014-07-14 14:55:22 -04:00
Vanessa Ezekowitz
8aea4b1a13 add conversion routine for cheapie's auto tree taps
turns them into nodebreakers with technic taps if auto tree taps are not
defined and if technic tree taps are.
2014-07-11 09:48:43 -04:00
Zefram
87d87c91fa Name tube items for function rather than material
Previously, some tube types were named based on their function, and others
based on some arbitrarily-chosen material used in their construction,
with no meaningful system governing which was in each category.  With this
change they are consistently named according to function.  Naming style
is also made consistent in the wording that identifies tubes as such,
and in capitalisation.
2014-07-05 12:55:33 -04:00
Zefram
a7cd0e3ddb Fix drops for storage tanks 2014-07-02 21:40:36 -04:00
Zefram
65baf218be Make non-node items in tubes look more solid
Use the "wielditem" visual type for non-node items, with a fixed 45
degree yaw.  This matches the recent change of dropped-item entities from
"sprite" visual to "wielditem".
2014-07-02 21:39:28 -04:00
Novatux
f8bbe908cd Don't wear tools out in nodebreaker if it's mechanical wear (tools which are repaired by the tool workshop of technic) 2014-07-02 14:29:51 +02:00
Novatux
df1c9d0874 Fix bug with multiple input inventories with the filters 2014-07-02 12:42:33 +02:00
Novatux
99a902a8b8 Try to fix some bugs that happen on server restart 2014-07-01 18:42:52 +02:00
Novatux
d532e646f6 Fix problems with incorrectly destructed teleport tubes. 2014-06-29 12:36:22 +02:00
Novatux
5a5bb3bf12 Fix crash with legacy nodebreakers 2014-06-21 08:29:41 +02:00
Novatux
a31a9d573f Ugly attempt to fix detector tube. 2014-06-14 16:54:31 +02:00
Novatux
9a63a16140 Filter inventory fix 2014-06-14 15:35:39 +02:00
Novatux
5ab329285c Try to fix old node breakers dropping items 2014-06-08 22:49:30 +02:00
Novatux
8b0c56ad08 Support for detection of pipeworks fake players by other mods (item drop, etc.) 2014-06-08 16:04:36 +02:00
Novatux
0444d738d7 Fix deployer sometimes destroying items 2014-06-08 11:04:13 +02:00
Novatux
eeff32781c Try to fix #67 2014-06-01 08:51:18 +02:00
Novatux
476a60b848 Fix #66 2014-05-25 22:24:42 +02:00
Vanessa Ezekowitz
ec8796f8d3 delete redundant check 2014-05-24 21:20:31 -04:00
Novatux
fd3c88eb86 Accept multiple input inventories, fix bug with mesecons_mvps 2014-05-23 19:49:35 +02:00
Novatux
8efcd39e39 Bugfix 2014-05-18 16:41:37 +02:00
Novatux
3f72bbf3d0 Much better node breaker, own contents of deployer too (but still allow IO with tubes) 2014-05-18 14:30:58 +02:00
Novatux
ee47216140 Remove debug code 2014-04-20 19:59:54 +02:00
Novatux
274d7fb048 Deployer fixes 2014-04-13 09:25:31 +02:00
Vanessa Ezekowitz
d662a37920 use leaves group for ALL parts of the plastic base recipe, derp 2014-04-10 01:29:37 -04:00
Tim
d6d513d0f8 change the decorative grating recipe to something more unique, fixes #58 2014-03-28 20:57:54 +01:00
Tim
df4d0a08d0 fix valve recipe crafting unknown nodes 2014-03-28 20:37:08 +01:00
Ciaran Gultnieks
7bac96c588 Add optional before/after filter callbacks
These allow nodes that manage inventory in a non-standard manner (e.g. a
barrel) to still be able to work with pipeworks filters.
2014-02-10 19:19:57 +00:00