zefram/minetest/pipeworks.git
10 years agoFix possible race condition crash
Novatux [Sat, 16 Aug 2014 09:16:23 +0000 (11:16 +0200)]
Fix possible race condition crash

10 years agoFix mese tube formspec
Novatux [Fri, 15 Aug 2014 13:35:42 +0000 (15:35 +0200)]
Fix mese tube formspec

10 years agoRename tube_item() to tube_inject_item()
Zefram [Thu, 14 Aug 2014 20:59:15 +0000 (21:59 +0100)]
Rename tube_item() to tube_inject_item()

The new function has no API compatibility with the old one, so give it
a different name to avoid confusion among caller mods, which need to
change their usage.  Have a function under the old name that outputs a
helpful error message.

10 years agoFix old mese tube detection
Novatux [Fri, 15 Aug 2014 09:51:23 +0000 (11:51 +0200)]
Fix old mese tube detection

10 years agoFix wielder
Novatux [Thu, 14 Aug 2014 20:10:39 +0000 (22:10 +0200)]
Fix wielder

10 years agoFix typo
Novatux [Thu, 14 Aug 2014 20:02:36 +0000 (22:02 +0200)]
Fix typo

10 years agoRemove useless callbacks
Novatux [Thu, 14 Aug 2014 19:24:20 +0000 (21:24 +0200)]
Remove useless callbacks

10 years agoAdd legacy code for items in tubes
Novatux [Thu, 14 Aug 2014 19:18:48 +0000 (21:18 +0200)]
Add legacy code for items in tubes

10 years agoMajor rewrite of items in tubes
Novatux [Thu, 14 Aug 2014 14:22:03 +0000 (16:22 +0200)]
Major rewrite of items in tubes

10 years agoNode breaker fixup for ones lacking pick slot
Zefram [Sat, 9 Aug 2014 14:51:18 +0000 (15:51 +0100)]
Node breaker fixup for ones lacking pick slot

This has been seen on Vanessa's server, and caused the wielding code
to crash.

10 years agodon't add active furnace to creative inv
Vanessa Ezekowitz [Wed, 6 Aug 2014 21:14:16 +0000 (17:14 -0400)]
don't add active furnace to creative inv

10 years agoUse 'group:stick' instead of 'default:stick'
Kevin Zheng [Wed, 30 Jul 2014 21:22:28 +0000 (16:22 -0500)]
Use 'group:stick' instead of 'default:stick'

10 years agoget rid of the old pipeworks clone node function
Vanessa Ezekowitz [Wed, 30 Jul 2014 18:13:17 +0000 (14:13 -0400)]
get rid of the old pipeworks clone node function
use minetest.override_item() instead

10 years agouse current homedecor plastic sheet texture
Vanessa Ezekowitz [Tue, 29 Jul 2014 01:18:40 +0000 (21:18 -0400)]
use current homedecor plastic sheet texture

10 years agoupdate pipeworks to use modern homedecor-style crafting chain
Vanessa Ezekowitz [Tue, 29 Jul 2014 01:08:49 +0000 (21:08 -0400)]
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.

10 years agoRefactor node breaker
Zefram [Wed, 23 Jul 2014 00:47:40 +0000 (01:47 +0100)]
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.

10 years agoRefactor deployer and dispenser
Zefram [Tue, 22 Jul 2014 14:33:16 +0000 (15:33 +0100)]
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.

10 years agoSlot sequencing modes for filter-injectors
Zefram [Mon, 21 Jul 2014 22:55:38 +0000 (23:55 +0100)]
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.

10 years agorename "filter" to "filter-injector"
Zefram [Mon, 21 Jul 2014 18:45:13 +0000 (19:45 +0100)]
rename "filter" to "filter-injector"

"Injector" better describes the nodes' main purpose.

10 years agoMake sorting tube dialog lag-resistant
Zefram [Mon, 21 Jul 2014 17:34:46 +0000 (18:34 +0100)]
Make sorting tube dialog lag-resistant

10 years agoBetter teleport tube control dialog
Zefram [Mon, 21 Jul 2014 17:20:26 +0000 (18:20 +0100)]
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.

10 years agoAdd dispenser
Zefram [Mon, 21 Jul 2014 13:29:45 +0000 (14:29 +0100)]
Add dispenser

The dispenser is an automated item dropper.

10 years agoLet stack of projectiles diminish in node breaker
Zefram [Mon, 21 Jul 2014 11:24:06 +0000 (12:24 +0100)]
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.

10 years agoAdd trash can
Zefram [Mon, 14 Jul 2014 23:52:33 +0000 (00:52 +0100)]
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.

10 years agoDon't show legacy auto-tree-tap in creative invy
Zefram [Mon, 14 Jul 2014 18:42:17 +0000 (19:42 +0100)]
Don't show legacy auto-tree-tap in creative invy

10 years agoSet infotext for node breakers
Zefram [Sun, 6 Jul 2014 22:14:51 +0000 (23:14 +0100)]
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.

10 years agoDon't spill an extra pick from old node breakers
Zefram [Sun, 6 Jul 2014 22:35:12 +0000 (23:35 +0100)]
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.

10 years agoFix detector tube item counting
Zefram [Mon, 14 Jul 2014 18:34:15 +0000 (19:34 +0100)]
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.

10 years agoadd conversion routine for cheapie's auto tree taps
Vanessa Ezekowitz [Fri, 11 Jul 2014 13:15:37 +0000 (09:15 -0400)]
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.

10 years agoName tube items for function rather than material
Zefram [Sat, 5 Jul 2014 15:27:09 +0000 (16:27 +0100)]
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.

10 years agoFix drops for storage tanks
Zefram [Thu, 3 Jul 2014 01:00:24 +0000 (02:00 +0100)]
Fix drops for storage tanks

10 years agoMake non-node items in tubes look more solid
Zefram [Thu, 3 Jul 2014 01:22:55 +0000 (02:22 +0100)]
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".

10 years agoDon't wear tools out in nodebreaker if it's mechanical wear (tools which are repaired...
Novatux [Wed, 2 Jul 2014 12:29:51 +0000 (14:29 +0200)]
Don't wear tools out in nodebreaker if it's mechanical wear (tools which are repaired by the tool workshop of technic)

10 years agoFix bug with multiple input inventories with the filters
Novatux [Wed, 2 Jul 2014 10:42:33 +0000 (12:42 +0200)]
Fix bug with multiple input inventories with the filters

10 years agoTry to fix some bugs that happen on server restart
Novatux [Tue, 1 Jul 2014 16:42:52 +0000 (18:42 +0200)]
Try to fix some bugs that happen on server restart

10 years agoFix problems with incorrectly destructed teleport tubes.
Novatux [Sun, 29 Jun 2014 10:36:22 +0000 (12:36 +0200)]
Fix problems with incorrectly destructed teleport tubes.

10 years agoFix crash with legacy nodebreakers
Novatux [Sat, 21 Jun 2014 06:29:41 +0000 (08:29 +0200)]
Fix crash with legacy nodebreakers

10 years agoUgly attempt to fix detector tube.
Novatux [Sat, 14 Jun 2014 14:54:31 +0000 (16:54 +0200)]
Ugly attempt to fix detector tube.

10 years agoFilter inventory fix
Novatux [Sat, 14 Jun 2014 13:35:39 +0000 (15:35 +0200)]
Filter inventory fix

10 years agoTry to fix old node breakers dropping items
Novatux [Sun, 8 Jun 2014 20:49:30 +0000 (22:49 +0200)]
Try to fix old node breakers dropping items

10 years agoSupport for detection of pipeworks fake players by other mods (item drop, etc.)
Novatux [Sun, 8 Jun 2014 14:04:36 +0000 (16:04 +0200)]
Support for detection of pipeworks fake players by other mods (item drop, etc.)

10 years agoFix deployer sometimes destroying items
Novatux [Sun, 8 Jun 2014 09:04:13 +0000 (11:04 +0200)]
Fix deployer sometimes destroying items

10 years agoTry to fix #67
Novatux [Sun, 1 Jun 2014 06:51:18 +0000 (08:51 +0200)]
Try to fix #67

10 years agoFix #66
Novatux [Sun, 25 May 2014 20:24:08 +0000 (22:24 +0200)]
Fix #66

10 years agodelete redundant check
Vanessa Ezekowitz [Sun, 25 May 2014 01:20:31 +0000 (21:20 -0400)]
delete redundant check

10 years agoAccept multiple input inventories, fix bug with mesecons_mvps
Novatux [Fri, 23 May 2014 17:49:35 +0000 (19:49 +0200)]
Accept multiple input inventories, fix bug with mesecons_mvps

10 years agoBugfix
Novatux [Sun, 18 May 2014 14:41:37 +0000 (16:41 +0200)]
Bugfix

10 years agoMuch better node breaker, own contents of deployer too (but still allow IO with tubes)
Novatux [Sun, 18 May 2014 12:30:58 +0000 (14:30 +0200)]
Much better node breaker, own contents of deployer too (but still allow IO with tubes)

10 years agoRemove debug code
Novatux [Sun, 20 Apr 2014 17:59:54 +0000 (19:59 +0200)]
Remove debug code

10 years agoDeployer fixes
Novatux [Sun, 13 Apr 2014 07:25:17 +0000 (09:25 +0200)]
Deployer fixes

10 years agouse leaves group for ALL parts of the plastic base recipe, derp
Vanessa Ezekowitz [Thu, 10 Apr 2014 05:29:37 +0000 (01:29 -0400)]
use leaves group for ALL parts of the plastic base recipe, derp

10 years agochange the decorative grating recipe to something more unique, fixes #58
Tim [Fri, 28 Mar 2014 19:57:54 +0000 (20:57 +0100)]
change the decorative grating recipe to something more unique, fixes #58

10 years agofix valve recipe crafting unknown nodes
Tim [Fri, 28 Mar 2014 19:37:08 +0000 (20:37 +0100)]
fix valve recipe crafting unknown nodes

10 years agoAdd optional before/after filter callbacks
Ciaran Gultnieks [Mon, 10 Feb 2014 19:18:18 +0000 (19:18 +0000)]
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.

10 years agocheck for malformed table in scan_for_tube_objects()
Vanessa Ezekowitz [Sun, 9 Feb 2014 02:54:06 +0000 (21:54 -0500)]
check for malformed table in scan_for_tube_objects()

10 years agoAdd alternate sand tube recipes using desert sand
Vanessa Ezekowitz [Thu, 16 Jan 2014 22:10:41 +0000 (17:10 -0500)]
Add alternate sand tube recipes using desert sand

10 years agoMake unprocessed plastic base from any kinds of leaves that are in group:leaves
Vanessa Ezekowitz [Thu, 16 Jan 2014 18:39:13 +0000 (13:39 -0500)]
Make unprocessed plastic base from any kinds of leaves that are in group:leaves
also, retire the junglegrass- and dry shrub-based recipes for same, as those
nodes are somewhat rare now.

10 years agofix missing tubelike meta on legacy tubes
Vanessa Ezekowitz [Sun, 12 Jan 2014 07:10:34 +0000 (02:10 -0500)]
fix missing tubelike meta on legacy tubes
(kept them from properly routing items after placement)

10 years agoallow_metadata_inventory_take returns a number, not a bool
Novatux [Sat, 11 Jan 2014 07:04:11 +0000 (08:04 +0100)]
allow_metadata_inventory_take returns a number, not a bool

10 years agoPrevent items from leaving below filters
Novatux [Fri, 10 Jan 2014 20:26:14 +0000 (21:26 +0100)]
Prevent items from leaving below filters

10 years agoFix
Novatux [Fri, 10 Jan 2014 19:15:53 +0000 (20:15 +0100)]
Fix

10 years agoadd recipe for crossing tube
Vanessa Ezekowitz [Fri, 10 Jan 2014 18:20:01 +0000 (13:20 -0500)]
add recipe for crossing tube

10 years agofix nil reference crash in tube autorouter when unknown nodes are nearby
Vanessa Ezekowitz [Mon, 6 Jan 2014 02:56:14 +0000 (21:56 -0500)]
fix nil reference crash in tube autorouter when unknown nodes are nearby
(?)

10 years agoSupport for the mesecons mvps callback
Novatux [Fri, 3 Jan 2014 12:29:38 +0000 (13:29 +0100)]
Support for the mesecons mvps callback

10 years agomisc fixed
Vanessa Ezekowitz [Thu, 2 Jan 2014 09:36:52 +0000 (04:36 -0500)]
misc fixed

10 years agoUpdate all recipes to use the new node names
Vanessa Ezekowitz [Thu, 2 Jan 2014 04:44:23 +0000 (23:44 -0500)]
Update all recipes to use the new node names

10 years agofix missing wield/inventory image on "compatibility" tubes
Vanessa Ezekowitz [Thu, 2 Jan 2014 04:14:27 +0000 (23:14 -0500)]
fix missing wield/inventory image on "compatibility" tubes
gave them fuller node defs with descriptions et al. also and
made them directly call the scan-for-tube-objects function
when placed.

10 years agofix facedir getting reset in detector tubes on state change
Vanessa Ezekowitz [Thu, 2 Jan 2014 03:36:52 +0000 (22:36 -0500)]
fix facedir getting reset in detector tubes on state change

10 years agofix pipes not becoming empty when pump is turned off
Vanessa Ezekowitz [Wed, 1 Jan 2014 18:56:13 +0000 (13:56 -0500)]
fix pipes not becoming empty when pump is turned off

10 years agofix wield image of pipes
Vanessa Ezekowitz [Wed, 1 Jan 2014 18:34:30 +0000 (13:34 -0500)]
fix wield image of pipes
give legacy compat pipes inventory images
alias them to real pipes on place
fix flicker when placing them

10 years agofix tube and pipe drops
Vanessa Ezekowitz [Wed, 1 Jan 2014 18:26:25 +0000 (13:26 -0500)]
fix tube and pipe drops

10 years agofix pipe inventory images
Vanessa Ezekowitz [Wed, 1 Jan 2014 18:21:40 +0000 (13:21 -0500)]
fix pipe inventory images

10 years agoalways check for CONTENT_IGNORE around a pipe/tube before converting it
Vanessa Ezekowitz [Wed, 1 Jan 2014 17:26:33 +0000 (12:26 -0500)]
always check for CONTENT_IGNORE around a pipe/tube before converting it

10 years agoFix conversion
Novatux [Wed, 1 Jan 2014 17:04:45 +0000 (18:04 +0100)]
Fix conversion

10 years agoUse 6d for pipes too
Novatux [Wed, 1 Jan 2014 16:40:22 +0000 (17:40 +0100)]
Use 6d for pipes too

10 years agoUse crossing textures
Novatux [Tue, 31 Dec 2013 12:59:25 +0000 (13:59 +0100)]
Use crossing textures

10 years agoFix conversion
Novatux [Tue, 31 Dec 2013 11:29:31 +0000 (12:29 +0100)]
Fix conversion

10 years agoLast forgotten spaces
Novatux [Tue, 31 Dec 2013 10:03:29 +0000 (11:03 +0100)]
Last forgotten spaces

10 years agoRemove old code
Novatux [Tue, 31 Dec 2013 09:53:14 +0000 (10:53 +0100)]
Remove old code

10 years agoAdd a few comments
Novatux [Tue, 31 Dec 2013 09:32:53 +0000 (10:32 +0100)]
Add a few comments

10 years agoFix some more coding style, fix a crash, get rid of a conversion table (only used...
Novatux [Tue, 31 Dec 2013 09:26:25 +0000 (10:26 +0100)]
Fix some more coding style, fix a crash, get rid of a conversion table (only used for the table generation)

10 years agoFix indentation and coding style
Novatux [Tue, 31 Dec 2013 09:12:25 +0000 (10:12 +0100)]
Fix indentation and coding style

10 years agoIndent correctly the function
Novatux [Tue, 31 Dec 2013 08:08:18 +0000 (09:08 +0100)]
Indent correctly the function

10 years agoAdd 6d tubes, cleanup code a bit
Novatux [Tue, 31 Dec 2013 06:36:04 +0000 (07:36 +0100)]
Add 6d tubes, cleanup code a bit

10 years agomake crossing tube wield texture look a little better
Vanessa Ezekowitz [Tue, 31 Dec 2013 11:57:31 +0000 (06:57 -0500)]
make crossing tube wield texture look a little better
(I kinda half-assed it initially ;-) )

10 years agoadd crossing tube textures
Vanessa Ezekowitz [Tue, 31 Dec 2013 11:50:34 +0000 (06:50 -0500)]
add crossing tube textures
(to be used shortly)

10 years agofix copy&paste error
Vanessa Ezekowitz [Tue, 24 Dec 2013 14:53:36 +0000 (09:53 -0500)]
fix copy&paste error

10 years agook, on second thought, allow tubes to connect to the fronts. Also, define
Vanessa Ezekowitz [Tue, 24 Dec 2013 14:51:38 +0000 (09:51 -0500)]
ok, on second thought, allow tubes to connect to the fronts.  Also, define
top-side overlays for furnaces.

10 years agoFix glitch in tube autorouter
Vanessa Ezekowitz [Tue, 24 Dec 2013 14:11:26 +0000 (09:11 -0500)]
Fix glitch in tube autorouter
(brain-o in how I was handling unknown/bad nodes being passed to it.  this
works better and lets the code do its job properly).

10 years agochests, furnaces are not supposed to connect to tubes from the front sides
Vanessa Ezekowitz [Tue, 24 Dec 2013 13:44:19 +0000 (08:44 -0500)]
chests, furnaces are not supposed to connect to tubes from the front sides

10 years agofix filters and mese filters not working correctly
Novatux [Tue, 24 Dec 2013 13:29:33 +0000 (08:29 -0500)]
fix filters and mese filters not working correctly

10 years agoA few more fixes (spamming the commit log again...)
Novatux [Sat, 21 Dec 2013 10:11:36 +0000 (11:11 +0100)]
A few more fixes (spamming the commit log again...)

10 years agoFix node breaker, use new minetest.swap_node
Novatux [Sat, 21 Dec 2013 09:24:55 +0000 (10:24 +0100)]
Fix node breaker, use new minetest.swap_node

10 years agoFix item transport code
Novatux [Sat, 21 Dec 2013 09:16:58 +0000 (10:16 +0100)]
Fix item transport code

10 years agolocal-ize a couple of variables, code style fixes
Vanessa Ezekowitz [Sat, 21 Dec 2013 08:45:45 +0000 (03:45 -0500)]
local-ize a couple of variables, code style fixes

10 years agofix a missed function name (due to being renamed)
Vanessa Ezekowitz [Sat, 21 Dec 2013 08:38:08 +0000 (03:38 -0500)]
fix a missed function name (due to being renamed)

10 years agolocal-ize a couple more variables
Vanessa Ezekowitz [Sat, 21 Dec 2013 08:35:39 +0000 (03:35 -0500)]
local-ize a couple more variables

10 years agomesecons_rules must be global. made so, confined to pipeworks.{} table.
Vanessa Ezekowitz [Sat, 21 Dec 2013 08:33:06 +0000 (03:33 -0500)]
mesecons_rules must be global.  made so, confined to pipeworks.{} table.

10 years agorules_all has to be global. made it so, confined to pipeworks.{} table
Vanessa Ezekowitz [Sat, 21 Dec 2013 08:30:07 +0000 (03:30 -0500)]
rules_all has to be global.  made it so, confined to pipeworks.{} table

10 years agolocal-ize a couple of variables
Vanessa Ezekowitz [Sat, 21 Dec 2013 08:26:47 +0000 (03:26 -0500)]
local-ize a couple of variables