Skip to content

Commit e8e9de0

Browse files
DesourVanessa Ezekowitz
authored and
Vanessa Ezekowitz
committed
Add lua controlled tube (#199)
* add lua controlled tube * make textures and fix some bugs
1 parent 05c0a86 commit e8e9de0

9 files changed

+1049
-2
lines changed

LICENSE

Lines changed: 191 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -500,3 +500,194 @@ necessary. Here is a sample; alter the names:
500500
Ty Coon, President of Vice
501501

502502
That's all there is to it!
503+
504+
505+
--------------------------------------------------------------------------------
506+
507+
Some code in lua_tube.lua is copied from The Mesecons Mod for Minetest:
508+
509+
License of source code
510+
----------------------
511+
Copyright (C) 2011-2016 Mesecons Mod Developer Team and contributors
512+
513+
This program is free software; you can redistribute the Mesecons Mod and/or
514+
modify it under the terms of the GNU Lesser General Public License version 3
515+
published by the Free Software Foundation.
516+
517+
This library is distributed in the hope that it will be useful,
518+
but WITHOUT ANY WARRANTY; without even the implied warranty of
519+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
520+
Library General Public License for more details.
521+
522+
You should have received a copy of the GNU Library General Public
523+
License along with this library; if not, write to the
524+
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
525+
Boston, MA 02110-1301, USA.
526+
527+
528+
GNU LESSER GENERAL PUBLIC LICENSE
529+
Version 3, 29 June 2007
530+
531+
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
532+
Everyone is permitted to copy and distribute verbatim copies
533+
of this license document, but changing it is not allowed.
534+
535+
536+
This version of the GNU Lesser General Public License incorporates
537+
the terms and conditions of version 3 of the GNU General Public
538+
License, supplemented by the additional permissions listed below.
539+
540+
0. Additional Definitions.
541+
542+
As used herein, "this License" refers to version 3 of the GNU Lesser
543+
General Public License, and the "GNU GPL" refers to version 3 of the GNU
544+
General Public License.
545+
546+
"The Library" refers to a covered work governed by this License,
547+
other than an Application or a Combined Work as defined below.
548+
549+
An "Application" is any work that makes use of an interface provided
550+
by the Library, but which is not otherwise based on the Library.
551+
Defining a subclass of a class defined by the Library is deemed a mode
552+
of using an interface provided by the Library.
553+
554+
A "Combined Work" is a work produced by combining or linking an
555+
Application with the Library. The particular version of the Library
556+
with which the Combined Work was made is also called the "Linked
557+
Version".
558+
559+
The "Minimal Corresponding Source" for a Combined Work means the
560+
Corresponding Source for the Combined Work, excluding any source code
561+
for portions of the Combined Work that, considered in isolation, are
562+
based on the Application, and not on the Linked Version.
563+
564+
The "Corresponding Application Code" for a Combined Work means the
565+
object code and/or source code for the Application, including any data
566+
and utility programs needed for reproducing the Combined Work from the
567+
Application, but excluding the System Libraries of the Combined Work.
568+
569+
1. Exception to Section 3 of the GNU GPL.
570+
571+
You may convey a covered work under sections 3 and 4 of this License
572+
without being bound by section 3 of the GNU GPL.
573+
574+
2. Conveying Modified Versions.
575+
576+
If you modify a copy of the Library, and, in your modifications, a
577+
facility refers to a function or data to be supplied by an Application
578+
that uses the facility (other than as an argument passed when the
579+
facility is invoked), then you may convey a copy of the modified
580+
version:
581+
582+
a) under this License, provided that you make a good faith effort to
583+
ensure that, in the event an Application does not supply the
584+
function or data, the facility still operates, and performs
585+
whatever part of its purpose remains meaningful, or
586+
587+
b) under the GNU GPL, with none of the additional permissions of
588+
this License applicable to that copy.
589+
590+
3. Object Code Incorporating Material from Library Header Files.
591+
592+
The object code form of an Application may incorporate material from
593+
a header file that is part of the Library. You may convey such object
594+
code under terms of your choice, provided that, if the incorporated
595+
material is not limited to numerical parameters, data structure
596+
layouts and accessors, or small macros, inline functions and templates
597+
(ten or fewer lines in length), you do both of the following:
598+
599+
a) Give prominent notice with each copy of the object code that the
600+
Library is used in it and that the Library and its use are
601+
covered by this License.
602+
603+
b) Accompany the object code with a copy of the GNU GPL and this license
604+
document.
605+
606+
4. Combined Works.
607+
608+
You may convey a Combined Work under terms of your choice that,
609+
taken together, effectively do not restrict modification of the
610+
portions of the Library contained in the Combined Work and reverse
611+
engineering for debugging such modifications, if you also do each of
612+
the following:
613+
614+
a) Give prominent notice with each copy of the Combined Work that
615+
the Library is used in it and that the Library and its use are
616+
covered by this License.
617+
618+
b) Accompany the Combined Work with a copy of the GNU GPL and this license
619+
document.
620+
621+
c) For a Combined Work that displays copyright notices during
622+
execution, include the copyright notice for the Library among
623+
these notices, as well as a reference directing the user to the
624+
copies of the GNU GPL and this license document.
625+
626+
d) Do one of the following:
627+
628+
0) Convey the Minimal Corresponding Source under the terms of this
629+
License, and the Corresponding Application Code in a form
630+
suitable for, and under terms that permit, the user to
631+
recombine or relink the Application with a modified version of
632+
the Linked Version to produce a modified Combined Work, in the
633+
manner specified by section 6 of the GNU GPL for conveying
634+
Corresponding Source.
635+
636+
1) Use a suitable shared library mechanism for linking with the
637+
Library. A suitable mechanism is one that (a) uses at run time
638+
a copy of the Library already present on the user's computer
639+
system, and (b) will operate properly with a modified version
640+
of the Library that is interface-compatible with the Linked
641+
Version.
642+
643+
e) Provide Installation Information, but only if you would otherwise
644+
be required to provide such information under section 6 of the
645+
GNU GPL, and only to the extent that such information is
646+
necessary to install and execute a modified version of the
647+
Combined Work produced by recombining or relinking the
648+
Application with a modified version of the Linked Version. (If
649+
you use option 4d0, the Installation Information must accompany
650+
the Minimal Corresponding Source and Corresponding Application
651+
Code. If you use option 4d1, you must provide the Installation
652+
Information in the manner specified by section 6 of the GNU GPL
653+
for conveying Corresponding Source.)
654+
655+
5. Combined Libraries.
656+
657+
You may place library facilities that are a work based on the
658+
Library side by side in a single library together with other library
659+
facilities that are not Applications and are not covered by this
660+
License, and convey such a combined library under terms of your
661+
choice, if you do both of the following:
662+
663+
a) Accompany the combined library with a copy of the same work based
664+
on the Library, uncombined with any other library facilities,
665+
conveyed under the terms of this License.
666+
667+
b) Give prominent notice with the combined library that part of it
668+
is a work based on the Library, and explaining where to find the
669+
accompanying uncombined form of the same work.
670+
671+
6. Revised Versions of the GNU Lesser General Public License.
672+
673+
The Free Software Foundation may publish revised and/or new versions
674+
of the GNU Lesser General Public License from time to time. Such new
675+
versions will be similar in spirit to the present version, but may
676+
differ in detail to address new problems or concerns.
677+
678+
Each version is given a distinguishing version number. If the
679+
Library as you received it specifies that a certain numbered version
680+
of the GNU Lesser General Public License "or any later version"
681+
applies to it, you have the option of following the terms and
682+
conditions either of that published version or of any later version
683+
published by the Free Software Foundation. If the Library as you
684+
received it does not specify a version number of the GNU Lesser
685+
General Public License, you may choose any version of the GNU Lesser
686+
General Public License ever published by the Free Software Foundation.
687+
688+
If the Library as you received it specifies that a proxy can decide
689+
whether future versions of the GNU Lesser General Public License shall
690+
apply, that proxy's public statement of acceptance of any version is
691+
permanent authorization for you to choose that version for the
692+
Library.
693+

default_settings.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ local settings = {
2222
enable_mese_sand_tube = true,
2323
enable_one_way_tube = true,
2424
enable_priority_tube = true,
25+
enable_lua_tube = true,
2526
enable_cyclic_mode = true,
2627
drop_on_routing_fail = false,
2728

init.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ if pipeworks.enable_redefines then
119119
dofile(pipeworks.modpath.."/compat-furnaces.lua")
120120
end
121121
if pipeworks.enable_autocrafter then dofile(pipeworks.modpath.."/autocrafter.lua") end
122+
if pipeworks.enable_lua_tube then dofile(pipeworks.modpath.."/lua_tube.lua") end
122123

123124
minetest.register_alias("pipeworks:pipe", "pipeworks:pipe_110000_empty")
124125

0 commit comments

Comments
 (0)