Commit Graph

80 Commits

Author SHA1 Message Date
thetaepsilon-gamedev
40eeaac2ec internal refactoring of flowable node registration in preparation for enhanced flow checking logic 2017-09-30 21:27:50 +01:00
thetaepsilon-gamedev
9d01482488 init.lua: add missing dofile for new flow logic 2017-09-27 17:53:08 +01:00
thetaepsilon-gamedev
2d70d2b657 init.lua: turn off by-default new flow logic for now 2017-09-27 17:37:46 +01:00
thetaepsilon-gamedev
69133818f7 pipes.lua: split out new flow logic registration and make it respect feature toggles 2017-09-27 17:01:46 +01:00
thetaepsilon-gamedev
59ac978093 pipes.lua: place old ABM code registration behind if-guard for new flag 2017-09-27 15:19:20 +01:00
DS
e8e9de04dd Add lua controlled tube (#199)
* add lua controlled tube

* make textures and fix some bugs
2017-09-25 23:21:15 -04:00
DS
05c0a8670b Add digiline_conductor and mesecon_and_digiline_conductor tubes (#195)
* add digiline_connecting_tube

* add mesecon and digiline conductiong tube

* add more recipes
2017-09-25 23:19:35 -04:00
Jordan Irwin
69d994a2a2 Replace deprecated methods: (#179)
- 'setting_get' with 'settings:get'
- 'setting_getbool' with 'settings:get_bool'
2017-05-18 05:33:56 -04:00
DS
d82227942d Nice settings (#171)
* improve style

* do something

* make settingtypes nicer

* fix settingtypes new lines

* fix it and so make it work 🐈
2017-04-13 21:13:30 -04:00
Vanessa Ezekowitz
15fe8e068f cache button "base" field since it's also standard 2017-04-11 19:16:21 -04:00
Vanessa Ezekowitz
5e26aa5f91 cache on/off button image refs and commonly-used label for same 2017-04-11 18:52:39 -04:00
Vanessa Ezekowitz
8f3d8cc586 allow stack per-chest/per-furnace stack splitting
defaults to disabled, whether the node has a new formspec or not
note that furnace fuel stacks can't be split.
2017-04-11 01:33:06 -04:00
Auke Kok
32f331e7c4 Don't make passing arguments this complex.
This shouldn't be this complex. For me, both syntaxes work,
but I bet it breaks others.
2016-05-27 17:37:56 -07:00
electrodude
10bfa30b93 Fixed settings file leak and invalid io.close (#136)
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-23 10:52:26 -07:00
Vanessa Ezekowitz
f80dec1220 drop direct support for dedicated protection mods
just use minetest's standard protection functions instead

(leave it up to those protection mods to do their job properly)
2015-03-23 17:40:00 -04:00
Tim
d167aacf4d add ownership/protection handling for device configuration
take any available ownership into account before deciding on area protection
2015-03-11 19:36:41 +01:00
Tim
4379b1904d add decorative tubes: one steel block embedded the other passing through an airtight pane 2015-02-01 00:02:52 +01:00
Tim
61af474116 rename tubes to tube_registration to avoid catch-all usage 2015-01-29 22:53:03 +01:00
Tim
a98af7bf15 split the big tubes file up into functional modules independend from the tube registration and add their respective crafting recipes
use this opportunity to remove some whitespaces issues from it
2015-01-29 22:37:29 +01:00
Tim
b54a868c33 chmod -x *.lua 2015-01-29 21:59:35 +01:00
Tim
009b9e9276 split the filter-injector specific code out of the generic item_transport 2015-01-29 19:57:23 +01:00
Vanessa Ezekowitz
50359104c7 Use mesh nodes for all nodebox-based pipe-related nodes 2015-01-15 06:25:41 -05:00
Novatux
d5480f5ff0 Major rewrite of items in tubes 2014-08-14 16:22:03 +02: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
ebccf81758 Add dispenser
The dispenser is an automated item dropper.
2014-07-21 09:52:58 -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
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
Vanessa Ezekowitz
f57443e96f mesecons_rules must be global. made so, confined to pipeworks.{} table. 2013-12-21 03:33:06 -05:00
Vanessa Ezekowitz
bdbdab0dfd rules_all has to be global. made it so, confined to pipeworks.{} table 2013-12-21 03:30:07 -05:00
Vanessa Ezekowitz
f697b94dae get rid of a redundant comment 2013-12-17 20:38:30 -05:00
Vanessa Ezekowitz
177966013a close the file handle after checking if the config file exists, add a comment 2013-12-17 20:36:21 -05:00
Vanessa Ezekowitz
01e76e1ea7 remove redundant ~= nil 2013-12-17 20:28:54 -05:00
Vanessa Ezekowitz
dfed550cae don't write pipeworks config file anymore. if a user needs one, they can
create it themselves :-)
2013-12-17 20:27:46 -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
7289bfcfba Split pipe and tube autorouting functions into separate files. 2013-11-25 23:55:52 -05:00
Vanessa Ezekowitz
7887d28e08 make worldpath and modpath pipeworks-namespace-specific and global 2013-10-29 14:08:23 -04:00
Novatux
6eaf8eac62 FiX CYCLIC option being ignored. 2013-10-21 11:15:12 +02:00
Novatux
79897c8fe6 Better deployer and node breaker mesecons rules. 2013-10-06 10:35:53 +02: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
Vanessa Ezekowitz
c0af957167 added ability to disable most components via config file in world folder
moved pipes out of init.lua and into a separate file.
some minor formatting changes
2013-07-13 22:39:25 -04:00
Vanessa Ezekowitz
2f843fdd76 remove a bunch of useless metadata and settings
("pipelike" everywhere, but it isn't used for anything)
2013-07-04 03:12:45 -04:00
Vanessa Ezekowitz
7d8be5ddf0 got rid of oldpipes.lua 2013-07-04 02:58:44 -04:00
Vanessa Ezekowitz
17ee4f6aab Phased out all deprecated minetest.env:* uses in favor of minetest.* 2013-06-30 23:55:07 -04:00
Novatux
89be094a1e Add option to disable cyclic behaviour 2013-06-28 15:16:28 +02:00
Anthony Zhang
e728df46df Super duper pipeworks deployer and node breaker updates. 2013-06-23 19:15:31 -04:00
Vanessa Ezekowitz
47b6c25abe minor tweaks to various dofile() calls, moved one from tubes.lua to init.lua 2013-06-22 17:51:57 -04:00