summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-04-05let tubes break if they're "over-pressure"Novatux
that is, if there are more than X number of items in a tube. Default is 40 in a tube, but breaking is also disabled by default. (original framework by Novatux, with changes by VanessaE)
2017-04-05always set item start pos on reverse.Vanessa Ezekowitz
2017-04-04Namespace pollution cleanup (Used list at #154)ForbiddenJ
2017-03-31allow pipeworks to skip server steps when moving entities around.Vanessa Ezekowitz
2017-03-29if an item should reverse dir (e.g. full destination),Vanessa Ezekowitz
and it's not going back into a tube, reject it and pop out as an item
2017-03-29add a warning if a tubed item turns aroundVanessa Ezekowitz
(too many means that something is wrong with that tube circuit)
2017-03-28Merge pull request #165 from cheapie/masterVanessa Ezekowitz
Tweak listring behavior of autocrafter
2017-03-28Tweak listring behavior of autocrafterCarter Kolwey
Now goes player->source->player and destination->player
2017-03-17prevent being able to place "loaded" and "on" itemsVanessa Ezekowitz
(forces them to "empty" and "off")
2017-03-17increase length of signal tube pulseVanessa Ezekowitz
2017-03-17add turn-to-vertical handling to valve, flow sensorVanessa Ezekowitz
reuse the code from entry panel
2017-03-17add screwdriver rotation handling on most pipes-related nodesVanessa Ezekowitz
caveats: in order to cleanly handle the entry panel, valve, and sensor I had to rotate the valve and sensor models 90 degrees so that their in-/outlet pipes point the same direction as the entry panel. This also enables proper handling of a valve or sensor turned vertically. Some objects have rotation disabled entirely (as flipping them over/around makes no sense) When a valve is rotated, it is turned off automatically, to work around a glitch in the rotation code.
2017-03-17make valve and pump turn on/off via on_rightclickVanessa Ezekowitz
(instead of on_punch)
2017-03-17Make filter-injector work with latest chest versionsThomas--S
2017-03-17Add missing table entriesCarter Kolwey
2017-03-01Merge pull request #160 from cheapie/masterVanessa Ezekowitz
Special-case technic machines
2017-02-28Special-case technic machinesCarter Kolwey
This makes them work correctly with filters.
2017-03-01Allow reversing direction if there's nowhere to goCarter Kolwey
2017-02-26Merge pull request #158 from cheapie/masterVanessa Ezekowitz
Add digilines support to autocrafter
2017-02-26Add digilines support to autocrafterCarter Kolwey
"on" and "off" messages turn it on or off, "single" crafts one item, and sending nested tables in the shape of the crafting grid sets the craft. Example message: { {"default:wood","default:wood","default:wood"}, {"default:wood","","default:wood"}, {"default:wood","default:wood","default:wood"} }
2017-02-07update description a bit (typo, outdated a little)Vanessa Ezekowitz
2017-01-25Use node texture colorizationVanessa Ezekowitz
for priority tube, instead of [colorize (except for inv image). Saves a tiny bit of RAM.
2016-10-10Allow Digiline Filter-Injector to match wear, metadata, and groupelectrodude
You can now make reqyests like `{group="stick"}`, `"default:pick_wood 1 30000"`, and `"mod:block <count> <exact wear> <meta>"` to match items precisely. If you don't specify a field, that field won't be checked. If you specify a field in an invalid way, that rule will match nothing. You can also specify wear as a table `wear={min, max}` to specify a range `[min, max)` of acceptable wear values. For example, `{name="default:pick_wood", wear={0, 32768}}` matches only wooden pickaxes that have at least half of their life left. You can even do things like `{count=2, metadata="whatever")}`, which will match any item at all, as long as its metadata matches, and will retrieve at most two of those items.
2016-10-10Digiline Filter-Injector tweakselectrodude
* Made digiline filter-injectors not pull a whole stack if the count is exactly 1 * Made digiline filter-injectors pull a whole stack if no count specified * `default:dirt` still has a count of 1, but `{name="name"}` has no count
2016-08-30Merge pull request #150 from t4im/masterVanessa Ezekowitz
Add list rings and enable sorting tube reordering
2016-08-29add list rings to pipework inventoriesTim
2016-08-29allow reordering of itemstacks in sorting tubeTim
2016-08-29update .gitignoreTim
2016-06-11Add digiline detector tube (#139)electrodude
* Add digiline detector tube The digiline detector tube outputs an itemstring of every stack that passes through it on the channel specified in its formspec. * Don't store digiline detector tube's formspec in a temporary local
2016-06-11Do not trust node.param2.Auke Kok
The table lookup will fail if node.param2 is outside [0-3] which is easily possible since there are several ways to modify param2 values of nodes. Force truncating param2 to always be 0-3 before using it in a table lookup.
2016-05-27Don't make passing arguments this complex.Auke Kok
This shouldn't be this complex. For me, both syntaxes work, but I bet it breaks others.
2016-05-23Fixed settings file leak and invalid io.close (#136)electrodude
Before, init.lua called io.open on pipeworks.worldpath..'/pipeworks_settings.txt' to see if it existed, but did not close the resulting file handle if it was found to exist. It instead erroneously called io.close() with no argument, which does nothing if the default output file is set to stdout, which it is. Now, the result of io.open is saved to a local variable. If that value is not nil (i.e. if the world settings file exists), the file handle is passed to io.close before calling dofile. Also, this saves pipeworks.worldpath..'/pipeworks_settings.txt' to a local variable to reduce redundancy.
2016-05-10Add Digiline Filter-Injectorelectrodude
This adds a new type of Filter-Injector that waits for a digiline message on its channel and then pulls the items described by the message out of the inventory. It is basically a Stackwise Injector that, on receiving a digiline message, sets its filter to the contents of the digiline message and then activates itself. Sending the message {name="default:brick", count=2} should do the same thing as setting the filter of a Stackwise Filter-Injector to two Brick Blocks and then punching it. If no count is specified, it defaults to 1. Since this is based off of the Stackwise Injector, it might make more sense if the default were an entire stack. I can change this trivially. You can also send requests like {{name="default:brick", count=1}, {name="default:dirt", count=1}}, which acts the same as setting the filter to one Brick Block and one Dirt Block and then punching it. If you send a string "default:dirt" instead of a table {name="default:dirt"}, the string is passed to ItemStack and the name and count are extracted from the resulting ItemStack. You can also send a list of strings instead of tables: {"default:dirt", "default:brick"}, and the first item found will be pulled. Punching this or activating it with Mesecons currently does nothing. I'm not really sure what would be the right thing to do in either of those two cases, so I made it do nothing. I guess I could make it use the previously-used filter, but I can't really see any usefulness in that. The recipe is probably too cheap. The darker of the two blue texture colors could probably be better.
2016-04-17Merge pull request #135 from electrodude/bugsAuke Kok
Fixed mixup between enables for conductor and detector tubes
2016-04-17Fixed mixup between enables for conductor and detector tubeselectrodude
pipeworks.enable_detector_tube would define detector tubes but the recipe for conductor tubes, and vice versa
2016-04-14Squelch a warning if no mesecons.Auke Kok
2016-04-14add exact mode to the filterProt EuPhobos
2016-04-01Don't use item_drop(, nil,)Auke Kok
2016-04-01Changed item_drop to add_item for items dropped during transport.greencopper
item_drop makes Minetest 0.4.13 crash, but add_item works in all versions and the behavior is identical when looking at the blocks.
2016-03-27Add screenshot.pngAuke Kok
2016-03-27Adding standard mod filesAuke Kok
2016-03-27Merge pull request #134 from sofar/furnacefixVanessa Ezekowitz
Work with NodeTimer based furnaces.
2016-03-27Work with NodeTimer based furnaces.Auke Kok
If we insert items through tubes, we must start the furnace timer otherwise it will never start operating. This shouldn't break older versions, as not having a timer function should just cancel out.
2015-11-18fix 2 other minetest.item_dropsHybridDog
2015-11-17fix crash caused by deprecated usage of minetest.item_drop, fixes #122HybridDog
2015-11-17reduce texture sizesHybridDog
reduce texture sizes
2015-11-15fix "sand" vacuum tubes not workingLeMagnesium
2015-10-10added is_fake_player entry to the fake player table passed on to ↵Sokomine
allow_metadata_* functions
2015-09-26removed hud_change from TODOThomas--S
2015-09-26Fixed typoThomas--S
Changed hud_channge to hud_change