From 82e9bdbac407d1f0170ef6b46079f9ee65f7b9f1 Mon Sep 17 00:00:00 2001 From: 1F616EMO Date: Fri, 5 Jan 2024 19:42:33 +0800 Subject: [PATCH] Modifications and bug fixes --- LICENSE.txt | 678 +----------------------------- README.md | 10 +- agpl-3.0.md | 660 +++++++++++++++++++++++++++++ alias.lua | 32 +- craft.lua | 76 ++-- init.lua | 303 +++++-------- mod.conf | 4 + textures/down_mr.png | Bin 220 -> 206 bytes textures/down_sbahnblock.png | Bin 0 -> 4338 bytes textures/down_subwayblock.png | Bin 205 -> 192 bytes textures/front_line1.png | Bin 215 -> 197 bytes textures/front_line10.png | Bin 179 -> 160 bytes textures/front_line2.png | Bin 243 -> 214 bytes textures/front_line3.png | Bin 202 -> 169 bytes textures/front_line4.png | Bin 197 -> 176 bytes textures/front_line5.png | Bin 196 -> 172 bytes textures/front_line6.png | Bin 188 -> 171 bytes textures/front_line7.png | Bin 199 -> 174 bytes textures/front_line8.png | Bin 195 -> 170 bytes textures/front_line9.png | Bin 200 -> 174 bytes textures/front_mr.png | Bin 311 -> 275 bytes textures/front_platform1.png | Bin 230 -> 213 bytes textures/front_platform10.png | Bin 243 -> 216 bytes textures/front_platform2.png | Bin 241 -> 217 bytes textures/front_platform3.png | Bin 239 -> 214 bytes textures/front_platform4.png | Bin 246 -> 220 bytes textures/front_platform5.png | Bin 246 -> 217 bytes textures/front_platform6.png | Bin 244 -> 216 bytes textures/front_platform7.png | Bin 245 -> 218 bytes textures/front_platform8.png | Bin 241 -> 214 bytes textures/front_platform9.png | Bin 246 -> 218 bytes textures/front_sbahnblock.png | Bin 241 -> 209 bytes textures/front_station_sign.png | Bin 186 -> 157 bytes textures/front_subwayblock.png | Bin 225 -> 202 bytes textures/inventory_line1.png | Bin 189 -> 177 bytes textures/inventory_line10.png | Bin 167 -> 139 bytes textures/inventory_line2.png | Bin 198 -> 183 bytes textures/inventory_line3.png | Bin 173 -> 152 bytes textures/inventory_line4.png | Bin 159 -> 144 bytes textures/inventory_line5.png | Bin 157 -> 142 bytes textures/inventory_line6.png | Bin 153 -> 144 bytes textures/inventory_line7.png | Bin 156 -> 141 bytes textures/inventory_line8.png | Bin 151 -> 139 bytes textures/inventory_line9.png | Bin 159 -> 142 bytes textures/inventory_platform1.png | Bin 190 -> 177 bytes textures/inventory_platform10.png | Bin 208 -> 180 bytes textures/inventory_platform2.png | Bin 200 -> 183 bytes textures/inventory_platform3.png | Bin 193 -> 180 bytes textures/inventory_platform4.png | Bin 201 -> 185 bytes textures/inventory_platform5.png | Bin 200 -> 183 bytes textures/inventory_platform6.png | Bin 197 -> 182 bytes textures/inventory_platform7.png | Bin 198 -> 182 bytes textures/inventory_platform8.png | Bin 192 -> 180 bytes textures/inventory_platform9.png | Bin 201 -> 183 bytes textures/sbahn_sign2.png | Bin 287 -> 201 bytes textures/sbahn_sign2l.png | Bin 287 -> 201 bytes textures/sbahn_sign3.png | Bin 210 -> 168 bytes textures/station_sign2.png | Bin 285 -> 208 bytes textures/station_sign3.png | Bin 203 -> 165 bytes textures/subway_sign2.png | Bin 278 -> 222 bytes textures/subway_sign3.png | Bin 210 -> 168 bytes 61 files changed, 870 insertions(+), 893 deletions(-) create mode 100644 agpl-3.0.md create mode 100644 mod.conf create mode 100644 textures/down_sbahnblock.png diff --git a/LICENSE.txt b/LICENSE.txt index 2eed822..4e3ed2d 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,666 +1,16 @@ -Copyright (C) 2018 -textures by maxx and gpcf -code by maxx and LuLa + TRAINBLOCKS: Adds signs fitting the advtrains theme + Copyright (C) 2018 maxx, LuLa, gpcf + Copyright (C) 2024 1F616EMO + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - GNU AFFERO GENERAL PUBLIC LICENSE - 2 Version 3, 19 November 2007 - 3 - 4 Copyright (C) 2007 Free Software Foundation, Inc. - 5 Everyone is permitted to copy and distribute verbatim copies - 6 of this license document, but changing it is not allowed. - 7 - 8 Preamble - 9 - 10 The GNU Affero General Public License is a free, copyleft license for - 11 software and other kinds of works, specifically designed to ensure - 12 cooperation with the community in the case of network server software. - 13 - 14 The licenses for most software and other practical works are designed - 15 to take away your freedom to share and change the works. By contrast, - 16 our General Public Licenses are intended to guarantee your freedom to - 17 share and change all versions of a program--to make sure it remains free - 18 software for all its users. - 19 - 20 When we speak of free software, we are referring to freedom, not - 21 price. Our General Public Licenses are designed to make sure that you - 22 have the freedom to distribute copies of free software (and charge for - 23 them if you wish), that you receive source code or can get it if you - 24 want it, that you can change the software or use pieces of it in new - 25 free programs, and that you know you can do these things. - 26 - 27 Developers that use our General Public Licenses protect your rights - 28 with two steps: (1) assert copyright on the software, and (2) offer - 29 you this License which gives you legal permission to copy, distribute - 30 and/or modify the software. - 31 - 32 A secondary benefit of defending all users' freedom is that - 33 improvements made in alternate versions of the program, if they - 34 receive widespread use, become available for other developers to - 35 incorporate. Many developers of free software are heartened and - 36 encouraged by the resulting cooperation. However, in the case of - 37 software used on network servers, this result may fail to come about. - 38 The GNU General Public License permits making a modified version and - 39 letting the public access it on a server without ever releasing its - 40 source code to the public. - 41 - 42 The GNU Affero General Public License is designed specifically to - 43 ensure that, in such cases, the modified source code becomes available - 44 to the community. It requires the operator of a network server to - 45 provide the source code of the modified version running there to the - 46 users of that server. Therefore, public use of a modified version, on - 47 a publicly accessible server, gives the public access to the source - 48 code of the modified version. - 49 - 50 An older license, called the Affero General Public License and - 51 published by Affero, was designed to accomplish similar goals. This is - 52 a different license, not a version of the Affero GPL, but Affero has - 53 released a new version of the Affero GPL which permits relicensing under - 54 this license. - 55 - 56 The precise terms and conditions for copying, distribution and - 57 modification follow. - 58 - 59 TERMS AND CONDITIONS - 60 - 61 0. Definitions. - 62 - 63 "This License" refers to version 3 of the GNU Affero General Public License. - 64 - 65 "Copyright" also means copyright-like laws that apply to other kinds of - 66 works, such as semiconductor masks. - 67 - 68 "The Program" refers to any copyrightable work licensed under this - 69 License. Each licensee is addressed as "you". "Licensees" and - 70 "recipients" may be individuals or organizations. - 71 - 72 To "modify" a work means to copy from or adapt all or part of the work - 73 in a fashion requiring copyright permission, other than the making of an - 74 exact copy. The resulting work is called a "modified version" of the - 75 earlier work or a work "based on" the earlier work. - 76 - 77 A "covered work" means either the unmodified Program or a work based - 78 on the Program. - 79 - 80 To "propagate" a work means to do anything with it that, without - 81 permission, would make you directly or secondarily liable for - 82 infringement under applicable copyright law, except executing it on a - 83 computer or modifying a private copy. Propagation includes copying, - 84 distribution (with or without modification), making available to the - 85 public, and in some countries other activities as well. - 86 - 87 To "convey" a work means any kind of propagation that enables other - 88 parties to make or receive copies. Mere interaction with a user through - 89 a computer network, with no transfer of a copy, is not conveying. - 90 - 91 An interactive user interface displays "Appropriate Legal Notices" - 92 to the extent that it includes a convenient and prominently visible - 93 feature that (1) displays an appropriate copyright notice, and (2) - 94 tells the user that there is no warranty for the work (except to the - 95 extent that warranties are provided), that licensees may convey the - 96 work under this License, and how to view a copy of this License. If - 97 the interface presents a list of user commands or options, such as a - 98 menu, a prominent item in the list meets this criterion. - 99 - 100 1. Source Code. - 101 - 102 The "source code" for a work means the preferred form of the work - 103 for making modifications to it. "Object code" means any non-source - 104 form of a work. - 105 - 106 A "Standard Interface" means an interface that either is an official - 107 standard defined by a recognized standards body, or, in the case of - 108 interfaces specified for a particular programming language, one that - 109 is widely used among developers working in that language. - 110 - 111 The "System Libraries" of an executable work include anything, other - 112 than the work as a whole, that (a) is included in the normal form of - 113 packaging a Major Component, but which is not part of that Major - 114 Component, and (b) serves only to enable use of the work with that - 115 Major Component, or to implement a Standard Interface for which an - 116 implementation is available to the public in source code form. A - 117 "Major Component", in this context, means a major essential component - 118 (kernel, window system, and so on) of the specific operating system - 119 (if any) on which the executable work runs, or a compiler used to - 120 produce the work, or an object code interpreter used to run it. - 121 - 122 The "Corresponding Source" for a work in object code form means all - 123 the source code needed to generate, install, and (for an executable - 124 work) run the object code and to modify the work, including scripts to - 125 control those activities. However, it does not include the work's - 126 System Libraries, or general-purpose tools or generally available free - 127 programs which are used unmodified in performing those activities but - 128 which are not part of the work. For example, Corresponding Source - 129 includes interface definition files associated with source files for - 130 the work, and the source code for shared libraries and dynamically - 131 linked subprograms that the work is specifically designed to require, - 132 such as by intimate data communication or control flow between those - 133 subprograms and other parts of the work. - 134 - 135 The Corresponding Source need not include anything that users - 136 can regenerate automatically from other parts of the Corresponding - 137 Source. - 138 - 139 The Corresponding Source for a work in source code form is that - 140 same work. - 141 - 142 2. Basic Permissions. - 143 - 144 All rights granted under this License are granted for the term of - 145 copyright on the Program, and are irrevocable provided the stated - 146 conditions are met. This License explicitly affirms your unlimited - 147 permission to run the unmodified Program. The output from running a - 148 covered work is covered by this License only if the output, given its - 149 content, constitutes a covered work. This License acknowledges your - 150 rights of fair use or other equivalent, as provided by copyright law. - 151 - 152 You may make, run and propagate covered works that you do not - 153 convey, without conditions so long as your license otherwise remains - 154 in force. You may convey covered works to others for the sole purpose - 155 of having them make modifications exclusively for you, or provide you - 156 with facilities for running those works, provided that you comply with - 157 the terms of this License in conveying all material for which you do - 158 not control copyright. Those thus making or running the covered works - 159 for you must do so exclusively on your behalf, under your direction - 160 and control, on terms that prohibit them from making any copies of - 161 your copyrighted material outside their relationship with you. - 162 - 163 Conveying under any other circumstances is permitted solely under - 164 the conditions stated below. Sublicensing is not allowed; section 10 - 165 makes it unnecessary. - 166 - 167 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - 168 - 169 No covered work shall be deemed part of an effective technological - 170 measure under any applicable law fulfilling obligations under article - 171 11 of the WIPO copyright treaty adopted on 20 December 1996, or - 172 similar laws prohibiting or restricting circumvention of such - 173 measures. - 174 - 175 When you convey a covered work, you waive any legal power to forbid - 176 circumvention of technological measures to the extent such circumvention - 177 is effected by exercising rights under this License with respect to - 178 the covered work, and you disclaim any intention to limit operation or - 179 modification of the work as a means of enforcing, against the work's - 180 users, your or third parties' legal rights to forbid circumvention of - 181 technological measures. - 182 - 183 4. Conveying Verbatim Copies. - 184 - 185 You may convey verbatim copies of the Program's source code as you - 186 receive it, in any medium, provided that you conspicuously and - 187 appropriately publish on each copy an appropriate copyright notice; - 188 keep intact all notices stating that this License and any - 189 non-permissive terms added in accord with section 7 apply to the code; - 190 keep intact all notices of the absence of any warranty; and give all - 191 recipients a copy of this License along with the Program. - 192 - 193 You may charge any price or no price for each copy that you convey, - 194 and you may offer support or warranty protection for a fee. - 195 - 196 5. Conveying Modified Source Versions. - 197 - 198 You may convey a work based on the Program, or the modifications to - 199 produce it from the Program, in the form of source code under the - 200 terms of section 4, provided that you also meet all of these conditions: - 201 - 202 a) The work must carry prominent notices stating that you modified - 203 it, and giving a relevant date. - 204 - 205 b) The work must carry prominent notices stating that it is - 206 released under this License and any conditions added under section - 207 7. This requirement modifies the requirement in section 4 to - 208 "keep intact all notices". - 209 - 210 c) You must license the entire work, as a whole, under this - 211 License to anyone who comes into possession of a copy. This - 212 License will therefore apply, along with any applicable section 7 - 213 additional terms, to the whole of the work, and all its parts, - 214 regardless of how they are packaged. This License gives no - 215 permission to license the work in any other way, but it does not - 216 invalidate such permission if you have separately received it. - 217 - 218 d) If the work has interactive user interfaces, each must display - 219 Appropriate Legal Notices; however, if the Program has interactive - 220 interfaces that do not display Appropriate Legal Notices, your - 221 work need not make them do so. - 222 - 223 A compilation of a covered work with other separate and independent - 224 works, which are not by their nature extensions of the covered work, - 225 and which are not combined with it such as to form a larger program, - 226 in or on a volume of a storage or distribution medium, is called an - 227 "aggregate" if the compilation and its resulting copyright are not - 228 used to limit the access or legal rights of the compilation's users - 229 beyond what the individual works permit. Inclusion of a covered work - 230 in an aggregate does not cause this License to apply to the other - 231 parts of the aggregate. - 232 - 233 6. Conveying Non-Source Forms. - 234 - 235 You may convey a covered work in object code form under the terms - 236 of sections 4 and 5, provided that you also convey the - 237 machine-readable Corresponding Source under the terms of this License, - 238 in one of these ways: - 239 - 240 a) Convey the object code in, or embodied in, a physical product - 241 (including a physical distribution medium), accompanied by the - 242 Corresponding Source fixed on a durable physical medium - 243 customarily used for software interchange. - 244 - 245 b) Convey the object code in, or embodied in, a physical product - 246 (including a physical distribution medium), accompanied by a - 247 written offer, valid for at least three years and valid for as - 248 long as you offer spare parts or customer support for that product - 249 model, to give anyone who possesses the object code either (1) a - 250 copy of the Corresponding Source for all the software in the - 251 product that is covered by this License, on a durable physical - 252 medium customarily used for software interchange, for a price no - 253 more than your reasonable cost of physically performing this - 254 conveying of source, or (2) access to copy the - 255 Corresponding Source from a network server at no charge. - 256 - 257 c) Convey individual copies of the object code with a copy of the - 258 written offer to provide the Corresponding Source. This - 259 alternative is allowed only occasionally and noncommercially, and - 260 only if you received the object code with such an offer, in accord - 261 with subsection 6b. - 262 - 263 d) Convey the object code by offering access from a designated - 264 place (gratis or for a charge), and offer equivalent access to the - 265 Corresponding Source in the same way through the same place at no - 266 further charge. You need not require recipients to copy the - 267 Corresponding Source along with the object code. If the place to - 268 copy the object code is a network server, the Corresponding Source - 269 may be on a different server (operated by you or a third party) - 270 that supports equivalent copying facilities, provided you maintain - 271 clear directions next to the object code saying where to find the - 272 Corresponding Source. Regardless of what server hosts the - 273 Corresponding Source, you remain obligated to ensure that it is - 274 available for as long as needed to satisfy these requirements. - 275 - 276 e) Convey the object code using peer-to-peer transmission, provided - 277 you inform other peers where the object code and Corresponding - 278 Source of the work are being offered to the general public at no - 279 charge under subsection 6d. - 280 - 281 A separable portion of the object code, whose source code is excluded - 282 from the Corresponding Source as a System Library, need not be - 283 included in conveying the object code work. - 284 - 285 A "User Product" is either (1) a "consumer product", which means any - 286 tangible personal property which is normally used for personal, family, - 287 or household purposes, or (2) anything designed or sold for incorporation - 288 into a dwelling. In determining whether a product is a consumer product, - 289 doubtful cases shall be resolved in favor of coverage. For a particular - 290 product received by a particular user, "normally used" refers to a - 291 typical or common use of that class of product, regardless of the status - 292 of the particular user or of the way in which the particular user - 293 actually uses, or expects or is expected to use, the product. A product - 294 is a consumer product regardless of whether the product has substantial - 295 commercial, industrial or non-consumer uses, unless such uses represent - 296 the only significant mode of use of the product. - 297 - 298 "Installation Information" for a User Product means any methods, - 299 procedures, authorization keys, or other information required to install - 300 and execute modified versions of a covered work in that User Product from - 301 a modified version of its Corresponding Source. The information must - 302 suffice to ensure that the continued functioning of the modified object - 303 code is in no case prevented or interfered with solely because - 304 modification has been made. - 305 - 306 If you convey an object code work under this section in, or with, or - 307 specifically for use in, a User Product, and the conveying occurs as - 308 part of a transaction in which the right of possession and use of the - 309 User Product is transferred to the recipient in perpetuity or for a - 310 fixed term (regardless of how the transaction is characterized), the - 311 Corresponding Source conveyed under this section must be accompanied - 312 by the Installation Information. But this requirement does not apply - 313 if neither you nor any third party retains the ability to install - 314 modified object code on the User Product (for example, the work has - 315 been installed in ROM). - 316 - 317 The requirement to provide Installation Information does not include a - 318 requirement to continue to provide support service, warranty, or updates - 319 for a work that has been modified or installed by the recipient, or for - 320 the User Product in which it has been modified or installed. Access to a - 321 network may be denied when the modification itself materially and - 322 adversely affects the operation of the network or violates the rules and - 323 protocols for communication across the network. - 324 - 325 Corresponding Source conveyed, and Installation Information provided, - 326 in accord with this section must be in a format that is publicly - 327 documented (and with an implementation available to the public in - 328 source code form), and must require no special password or key for - 329 unpacking, reading or copying. - 330 - 331 7. Additional Terms. - 332 - 333 "Additional permissions" are terms that supplement the terms of this - 334 License by making exceptions from one or more of its conditions. - 335 Additional permissions that are applicable to the entire Program shall - 336 be treated as though they were included in this License, to the extent - 337 that they are valid under applicable law. If additional permissions - 338 apply only to part of the Program, that part may be used separately - 339 under those permissions, but the entire Program remains governed by - 340 this License without regard to the additional permissions. - 341 - 342 When you convey a copy of a covered work, you may at your option - 343 remove any additional permissions from that copy, or from any part of - 344 it. (Additional permissions may be written to require their own - 345 removal in certain cases when you modify the work.) You may place - 346 additional permissions on material, added by you to a covered work, - 347 for which you have or can give appropriate copyright permission. - 348 - 349 Notwithstanding any other provision of this License, for material you - 350 add to a covered work, you may (if authorized by the copyright holders of - 351 that material) supplement the terms of this License with terms: - 352 - 353 a) Disclaiming warranty or limiting liability differently from the - 354 terms of sections 15 and 16 of this License; or - 355 - 356 b) Requiring preservation of specified reasonable legal notices or - 357 author attributions in that material or in the Appropriate Legal - 358 Notices displayed by works containing it; or - 359 - 360 c) Prohibiting misrepresentation of the origin of that material, or - 361 requiring that modified versions of such material be marked in - 362 reasonable ways as different from the original version; or - 363 - 364 d) Limiting the use for publicity purposes of names of licensors or - 365 authors of the material; or - 366 - 367 e) Declining to grant rights under trademark law for use of some - 368 trade names, trademarks, or service marks; or - 369 - 370 f) Requiring indemnification of licensors and authors of that - 371 material by anyone who conveys the material (or modified versions of - 372 it) with contractual assumptions of liability to the recipient, for - 373 any liability that these contractual assumptions directly impose on - 374 those licensors and authors. - 375 - 376 All other non-permissive additional terms are considered "further - 377 restrictions" within the meaning of section 10. If the Program as you - 378 received it, or any part of it, contains a notice stating that it is - 379 governed by this License along with a term that is a further - 380 restriction, you may remove that term. If a license document contains - 381 a further restriction but permits relicensing or conveying under this - 382 License, you may add to a covered work material governed by the terms - 383 of that license document, provided that the further restriction does - 384 not survive such relicensing or conveying. - 385 - 386 If you add terms to a covered work in accord with this section, you - 387 must place, in the relevant source files, a statement of the - 388 additional terms that apply to those files, or a notice indicating - 389 where to find the applicable terms. - 390 - 391 Additional terms, permissive or non-permissive, may be stated in the - 392 form of a separately written license, or stated as exceptions; - 393 the above requirements apply either way. - 394 - 395 8. Termination. - 396 - 397 You may not propagate or modify a covered work except as expressly - 398 provided under this License. Any attempt otherwise to propagate or - 399 modify it is void, and will automatically terminate your rights under - 400 this License (including any patent licenses granted under the third - 401 paragraph of section 11). - 402 - 403 However, if you cease all violation of this License, then your - 404 license from a particular copyright holder is reinstated (a) - 405 provisionally, unless and until the copyright holder explicitly and - 406 finally terminates your license, and (b) permanently, if the copyright - 407 holder fails to notify you of the violation by some reasonable means - 408 prior to 60 days after the cessation. - 409 - 410 Moreover, your license from a particular copyright holder is - 411 reinstated permanently if the copyright holder notifies you of the - 412 violation by some reasonable means, this is the first time you have - 413 received notice of violation of this License (for any work) from that - 414 copyright holder, and you cure the violation prior to 30 days after - 415 your receipt of the notice. - 416 - 417 Termination of your rights under this section does not terminate the - 418 licenses of parties who have received copies or rights from you under - 419 this License. If your rights have been terminated and not permanently - 420 reinstated, you do not qualify to receive new licenses for the same - 421 material under section 10. - 422 - 423 9. Acceptance Not Required for Having Copies. - 424 - 425 You are not required to accept this License in order to receive or - 426 run a copy of the Program. Ancillary propagation of a covered work - 427 occurring solely as a consequence of using peer-to-peer transmission - 428 to receive a copy likewise does not require acceptance. However, - 429 nothing other than this License grants you permission to propagate or - 430 modify any covered work. These actions infringe copyright if you do - 431 not accept this License. Therefore, by modifying or propagating a - 432 covered work, you indicate your acceptance of this License to do so. - 433 - 434 10. Automatic Licensing of Downstream Recipients. - 435 - 436 Each time you convey a covered work, the recipient automatically - 437 receives a license from the original licensors, to run, modify and - 438 propagate that work, subject to this License. You are not responsible - 439 for enforcing compliance by third parties with this License. - 440 - 441 An "entity transaction" is a transaction transferring control of an - 442 organization, or substantially all assets of one, or subdividing an - 443 organization, or merging organizations. If propagation of a covered - 444 work results from an entity transaction, each party to that - 445 transaction who receives a copy of the work also receives whatever - 446 licenses to the work the party's predecessor in interest had or could - 447 give under the previous paragraph, plus a right to possession of the - 448 Corresponding Source of the work from the predecessor in interest, if - 449 the predecessor has it or can get it with reasonable efforts. - 450 - 451 You may not impose any further restrictions on the exercise of the - 452 rights granted or affirmed under this License. For example, you may - 453 not impose a license fee, royalty, or other charge for exercise of - 454 rights granted under this License, and you may not initiate litigation - 455 (including a cross-claim or counterclaim in a lawsuit) alleging that - 456 any patent claim is infringed by making, using, selling, offering for - 457 sale, or importing the Program or any portion of it. - 458 - 459 11. Patents. - 460 - 461 A "contributor" is a copyright holder who authorizes use under this - 462 License of the Program or a work on which the Program is based. The - 463 work thus licensed is called the contributor's "contributor version". - 464 - 465 A contributor's "essential patent claims" are all patent claims - 466 owned or controlled by the contributor, whether already acquired or - 467 hereafter acquired, that would be infringed by some manner, permitted - 468 by this License, of making, using, or selling its contributor version, - 469 but do not include claims that would be infringed only as a - 470 consequence of further modification of the contributor version. For - 471 purposes of this definition, "control" includes the right to grant - 472 patent sublicenses in a manner consistent with the requirements of - 473 this License. - 474 - 475 Each contributor grants you a non-exclusive, worldwide, royalty-free - 476 patent license under the contributor's essential patent claims, to - 477 make, use, sell, offer for sale, import and otherwise run, modify and - 478 propagate the contents of its contributor version. - 479 - 480 In the following three paragraphs, a "patent license" is any express - 481 agreement or commitment, however denominated, not to enforce a patent - 482 (such as an express permission to practice a patent or covenant not to - 483 sue for patent infringement). To "grant" such a patent license to a - 484 party means to make such an agreement or commitment not to enforce a - 485 patent against the party. - 486 - 487 If you convey a covered work, knowingly relying on a patent license, - 488 and the Corresponding Source of the work is not available for anyone - 489 to copy, free of charge and under the terms of this License, through a - 490 publicly available network server or other readily accessible means, - 491 then you must either (1) cause the Corresponding Source to be so - 492 available, or (2) arrange to deprive yourself of the benefit of the - 493 patent license for this particular work, or (3) arrange, in a manner - 494 consistent with the requirements of this License, to extend the patent - 495 license to downstream recipients. "Knowingly relying" means you have - 496 actual knowledge that, but for the patent license, your conveying the - 497 covered work in a country, or your recipient's use of the covered work - 498 in a country, would infringe one or more identifiable patents in that - 499 country that you have reason to believe are valid. - 500 - 501 If, pursuant to or in connection with a single transaction or - 502 arrangement, you convey, or propagate by procuring conveyance of, a - 503 covered work, and grant a patent license to some of the parties - 504 receiving the covered work authorizing them to use, propagate, modify - 505 or convey a specific copy of the covered work, then the patent license - 506 you grant is automatically extended to all recipients of the covered - 507 work and works based on it. - 508 - 509 A patent license is "discriminatory" if it does not include within - 510 the scope of its coverage, prohibits the exercise of, or is - 511 conditioned on the non-exercise of one or more of the rights that are - 512 specifically granted under this License. You may not convey a covered - 513 work if you are a party to an arrangement with a third party that is - 514 in the business of distributing software, under which you make payment - 515 to the third party based on the extent of your activity of conveying - 516 the work, and under which the third party grants, to any of the - 517 parties who would receive the covered work from you, a discriminatory - 518 patent license (a) in connection with copies of the covered work - 519 conveyed by you (or copies made from those copies), or (b) primarily - 520 for and in connection with specific products or compilations that - 521 contain the covered work, unless you entered into that arrangement, - 522 or that patent license was granted, prior to 28 March 2007. - 523 - 524 Nothing in this License shall be construed as excluding or limiting - 525 any implied license or other defenses to infringement that may - 526 otherwise be available to you under applicable patent law. - 527 - 528 12. No Surrender of Others' Freedom. - 529 - 530 If conditions are imposed on you (whether by court order, agreement or - 531 otherwise) that contradict the conditions of this License, they do not - 532 excuse you from the conditions of this License. If you cannot convey a - 533 covered work so as to satisfy simultaneously your obligations under this - 534 License and any other pertinent obligations, then as a consequence you may - 535 not convey it at all. For example, if you agree to terms that obligate you - 536 to collect a royalty for further conveying from those to whom you convey - 537 the Program, the only way you could satisfy both those terms and this - 538 License would be to refrain entirely from conveying the Program. - 539 - 540 13. Remote Network Interaction; Use with the GNU General Public License. - 541 - 542 Notwithstanding any other provision of this License, if you modify the - 543 Program, your modified version must prominently offer all users - 544 interacting with it remotely through a computer network (if your version - 545 supports such interaction) an opportunity to receive the Corresponding - 546 Source of your version by providing access to the Corresponding Source - 547 from a network server at no charge, through some standard or customary - 548 means of facilitating copying of software. This Corresponding Source - 549 shall include the Corresponding Source for any work covered by version 3 - 550 of the GNU General Public License that is incorporated pursuant to the - 551 following paragraph. - 552 - 553 Notwithstanding any other provision of this License, you have - 554 permission to link or combine any covered work with a work licensed - 555 under version 3 of the GNU General Public License into a single - 556 combined work, and to convey the resulting work. The terms of this - 557 License will continue to apply to the part which is the covered work, - 558 but the work with which it is combined will remain governed by version - 559 3 of the GNU General Public License. - 560 - 561 14. Revised Versions of this License. - 562 - 563 The Free Software Foundation may publish revised and/or new versions of - 564 the GNU Affero General Public License from time to time. Such new versions - 565 will be similar in spirit to the present version, but may differ in detail to - 566 address new problems or concerns. - 567 - 568 Each version is given a distinguishing version number. If the - 569 Program specifies that a certain numbered version of the GNU Affero General - 570 Public License "or any later version" applies to it, you have the - 571 option of following the terms and conditions either of that numbered - 572 version or of any later version published by the Free Software - 573 Foundation. If the Program does not specify a version number of the - 574 GNU Affero General Public License, you may choose any version ever published - 575 by the Free Software Foundation. - 576 - 577 If the Program specifies that a proxy can decide which future - 578 versions of the GNU Affero General Public License can be used, that proxy's - 579 public statement of acceptance of a version permanently authorizes you - 580 to choose that version for the Program. - 581 - 582 Later license versions may give you additional or different - 583 permissions. However, no additional obligations are imposed on any - 584 author or copyright holder as a result of your choosing to follow a - 585 later version. - 586 - 587 15. Disclaimer of Warranty. - 588 - 589 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY - 590 APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT - 591 HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY - 592 OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, - 593 THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - 594 PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM - 595 IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF - 596 ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - 597 - 598 16. Limitation of Liability. - 599 - 600 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING - 601 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS - 602 THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY - 603 GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE - 604 USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF - 605 DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD - 606 PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), - 607 EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF - 608 SUCH DAMAGES. - 609 - 610 17. Interpretation of Sections 15 and 16. - 611 - 612 If the disclaimer of warranty and limitation of liability provided - 613 above cannot be given local legal effect according to their terms, - 614 reviewing courts shall apply local law that most closely approximates - 615 an absolute waiver of all civil liability in connection with the - 616 Program, unless a warranty or assumption of liability accompanies a - 617 copy of the Program in return for a fee. - 618 - 619 END OF TERMS AND CONDITIONS - 620 - 621 How to Apply These Terms to Your New Programs - 622 - 623 If you develop a new program, and you want it to be of the greatest - 624 possible use to the public, the best way to achieve this is to make it - 625 free software which everyone can redistribute and change under these terms. - 626 - 627 To do so, attach the following notices to the program. It is safest - 628 to attach them to the start of each source file to most effectively - 629 state the exclusion of warranty; and each file should have at least - 630 the "copyright" line and a pointer to where the full notice is found. - 631 - 632 TRAINBLOCKS: It adds some signs for the advtrains mod. - 633 Copyright (C) 2018 maxx, gpcf - 634 - 635 This program is free software: you can redistribute it and/or modify - 636 it under the terms of the GNU Affero General Public License as published by - 637 the Free Software Foundation, either version 3 of the License, or - 638 (at your option) any later version. - 639 - 640 This program is distributed in the hope that it will be useful, - 641 but WITHOUT ANY WARRANTY; without even the implied warranty of - 642 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - 643 GNU Affero General Public License for more details. - 644 - 645 You should have received a copy of the GNU Affero General Public License - 646 along with this program. If not, see . - 647 - 648 Also add information on how to contact you by electronic and paper mail. - 649 - 650 If your software can interact with users remotely through a computer - 651 network, you should also make sure that it provides a way for users to - 652 get its source. For example, if your program is a web application, its - 653 interface could display a "Source" link that leads users to an archive - 654 of the code. There are many ways you could offer source, and different - 655 solutions will be better for different programs; see section 13 for the - 656 specific requirements. - 657 - 658 You should also get your employer (if you work as a programmer) or school, - 659 if any, to sign a "copyright disclaimer" for the program, if necessary. - 660 For more information on this, and how to apply and follow the GNU AGPL, see -661 . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . \ No newline at end of file diff --git a/README.md b/README.md index cbbd524..9de8cc4 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,9 @@ # trainblocks -History: 2018-03-04 version 0.1 release -2018-03-05 version 0.2 better node registrations and craft receipes | changed textures -2018-03-06 version 0.21 alias added +## History -2018-03-07 version 0.3 alias removed in trainblocks and added new signs. => trainblocks_bc for backwards compatibility +* 2018-03-04 version 0.1 release +* 2018-03-05 version 0.2 better node registrations and craft receipes | changed textures +* 2018-03-06 version 0.21 alias added +* 2018-03-07 version 0.3 alias removed in trainblocks and added new signs. => trainblocks_bc for backwards compatibility +* 2024-01-05 version 0.5 Fix minor bugs, derivered from LinuxForks mods collection diff --git a/agpl-3.0.md b/agpl-3.0.md new file mode 100644 index 0000000..c6f01c6 --- /dev/null +++ b/agpl-3.0.md @@ -0,0 +1,660 @@ +# GNU AFFERO GENERAL PUBLIC LICENSE + +Version 3, 19 November 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. + + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. + +## Preamble + +The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains +free software for all its users. + +When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + +A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + +The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + +An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing +under this license. + +The precise terms and conditions for copying, distribution and +modification follow. + +## TERMS AND CONDITIONS + +### 0. Definitions. + +"This License" refers to version 3 of the GNU Affero General Public +License. + +"Copyright" also means copyright-like laws that apply to other kinds +of works, such as semiconductor masks. + +"The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + +To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of +an exact copy. The resulting work is called a "modified version" of +the earlier work or a work "based on" the earlier work. + +A "covered work" means either the unmodified Program or a work based +on the Program. + +To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + +To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user +through a computer network, with no transfer of a copy, is not +conveying. + +An interactive user interface displays "Appropriate Legal Notices" to +the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + +### 1. Source Code. + +The "source code" for a work means the preferred form of the work for +making modifications to it. "Object code" means any non-source form of +a work. + +A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + +The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + +The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can +regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same +work. + +### 2. Basic Permissions. + +All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, +without conditions so long as your license otherwise remains in force. +You may convey covered works to others for the sole purpose of having +them make modifications exclusively for you, or provide you with +facilities for running those works, provided that you comply with the +terms of this License in conveying all material for which you do not +control copyright. Those thus making or running the covered works for +you must do so exclusively on your behalf, under your direction and +control, on terms that prohibit them from making any copies of your +copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the +conditions stated below. Sublicensing is not allowed; section 10 makes +it unnecessary. + +### 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + +No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + +When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such +circumvention is effected by exercising rights under this License with +respect to the covered work, and you disclaim any intention to limit +operation or modification of the work as a means of enforcing, against +the work's users, your or third parties' legal rights to forbid +circumvention of technological measures. + +### 4. Conveying Verbatim Copies. + +You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + +### 5. Conveying Modified Source Versions. + +You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these +conditions: + +- a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. +- b) The work must carry prominent notices stating that it is + released under this License and any conditions added under + section 7. This requirement modifies the requirement in section 4 + to "keep intact all notices". +- c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. +- d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + +A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + +### 6. Conveying Non-Source Forms. + +You may convey a covered work in object code form under the terms of +sections 4 and 5, provided that you also convey the machine-readable +Corresponding Source under the terms of this License, in one of these +ways: + +- a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. +- b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the Corresponding + Source from a network server at no charge. +- c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. +- d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. +- e) Convey the object code using peer-to-peer transmission, + provided you inform other peers where the object code and + Corresponding Source of the work are being offered to the general + public at no charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + +A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, +family, or household purposes, or (2) anything designed or sold for +incorporation into a dwelling. In determining whether a product is a +consumer product, doubtful cases shall be resolved in favor of +coverage. For a particular product received by a particular user, +"normally used" refers to a typical or common use of that class of +product, regardless of the status of the particular user or of the way +in which the particular user actually uses, or expects or is expected +to use, the product. A product is a consumer product regardless of +whether the product has substantial commercial, industrial or +non-consumer uses, unless such uses represent the only significant +mode of use of the product. + +"Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to +install and execute modified versions of a covered work in that User +Product from a modified version of its Corresponding Source. The +information must suffice to ensure that the continued functioning of +the modified object code is in no case prevented or interfered with +solely because modification has been made. + +If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + +The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or +updates for a work that has been modified or installed by the +recipient, or for the User Product in which it has been modified or +installed. Access to a network may be denied when the modification +itself materially and adversely affects the operation of the network +or violates the rules and protocols for communication across the +network. + +Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + +### 7. Additional Terms. + +"Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders +of that material) supplement the terms of this License with terms: + +- a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or +- b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or +- c) Prohibiting misrepresentation of the origin of that material, + or requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or +- d) Limiting the use for publicity purposes of names of licensors + or authors of the material; or +- e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or +- f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions + of it) with contractual assumptions of liability to the recipient, + for any liability that these contractual assumptions directly + impose on those licensors and authors. + +All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; the +above requirements apply either way. + +### 8. Termination. + +You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + +However, if you cease all violation of this License, then your license +from a particular copyright holder is reinstated (a) provisionally, +unless and until the copyright holder explicitly and finally +terminates your license, and (b) permanently, if the copyright holder +fails to notify you of the violation by some reasonable means prior to +60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + +### 9. Acceptance Not Required for Having Copies. + +You are not required to accept this License in order to receive or run +a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + +### 10. Automatic Licensing of Downstream Recipients. + +Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + +An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + +### 11. Patents. + +A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + +A contributor's "essential patent claims" are all patent claims owned +or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + +In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + +If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + +A patent license is "discriminatory" if it does not include within the +scope of its coverage, prohibits the exercise of, or is conditioned on +the non-exercise of one or more of the rights that are specifically +granted under this License. You may not convey a covered work if you +are a party to an arrangement with a third party that is in the +business of distributing software, under which you make payment to the +third party based on the extent of your activity of conveying the +work, and under which the third party grants, to any of the parties +who would receive the covered work from you, a discriminatory patent +license (a) in connection with copies of the covered work conveyed by +you (or copies made from those copies), or (b) primarily for and in +connection with specific products or compilations that contain the +covered work, unless you entered into that arrangement, or that patent +license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + +### 12. No Surrender of Others' Freedom. + +If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under +this License and any other pertinent obligations, then as a +consequence you may not convey it at all. For example, if you agree to +terms that obligate you to collect a royalty for further conveying +from those to whom you convey the Program, the only way you could +satisfy both those terms and this License would be to refrain entirely +from conveying the Program. + +### 13. Remote Network Interaction; Use with the GNU General Public License. + +Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your +version supports such interaction) an opportunity to receive the +Corresponding Source of your version by providing access to the +Corresponding Source from a network server at no charge, through some +standard or customary means of facilitating copying of software. This +Corresponding Source shall include the Corresponding Source for any +work covered by version 3 of the GNU General Public License that is +incorporated pursuant to the following paragraph. + +Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + +### 14. Revised Versions of this License. + +The Free Software Foundation may publish revised and/or new versions +of the GNU Affero General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever +published by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future versions +of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + +Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + +### 15. Disclaimer of Warranty. + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT +WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND +PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE +DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR +CORRECTION. + +### 16. Limitation of Liability. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR +CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT +NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR +LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM +TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER +PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +### 17. Interpretation of Sections 15 and 16. + +If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + +END OF TERMS AND CONDITIONS + +## How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these +terms. + +To do so, attach the following notices to the program. It is safest to +attach them to the start of each source file to most effectively state +the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper +mail. + +If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for +the specific requirements. + +You should also get your employer (if you work as a programmer) or +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. For more information on this, and how to apply and follow +the GNU AGPL, see . diff --git a/alias.lua b/alias.lua index 912a0b2..1093e54 100644 --- a/alias.lua +++ b/alias.lua @@ -1,10 +1,26 @@ ---for the subwayblocks mod by gabriel I added a file which converts the subwaysigns by him to mine ---(important especially for Linuxworks server) +-- trainblocks/alias.lua +-- For compactibility with advtrains_subwayblocks +--[[ + Copyright (C) 2018 maxx, LuLa, gpcf + Copyright (C) 2024 1F616EMO - for count = 1, 10, 1 do - minetest.register_alias("advtrains_subwayblocks:line" .. count, "trainblocks:line" .. count) - end + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - minetest.register_alias("advtrains_subwayblocks:germany", "trainblocks:subwayblock") - - minetest.register_alias("advtrains_subwayblocks:mr", "trainblocks:mr") + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +]] + +for count = 1, 10, 1 do + minetest.register_alias("advtrains_subwayblocks:line" .. count, "trainblocks:line" .. count) +end + +minetest.register_alias("advtrains_subwayblocks:germany", "trainblocks:subwayblock") +minetest.register_alias("advtrains_subwayblocks:mr", "trainblocks:mr") diff --git a/craft.lua b/craft.lua index c0b47de..8862bea 100644 --- a/craft.lua +++ b/craft.lua @@ -1,38 +1,54 @@ ---CRAFTING +-- trainblocks/craft.lua +-- Crafting recipes for trainblocks +--[[ + Copyright (C) 2018 maxx, LuLa, gpcf + Copyright (C) 2024 1F616EMO --- Blocks + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +]] minetest.register_craft({ output = 'trainblocks:subwayblock', recipe = { - {'', 'dye:blue', ''}, - {'dye:white', 'default:glass', 'dye:white'}, - {'', 'dye:blue', ''}, + { '', 'dye:blue', '' }, + { 'dye:white', 'default:glass', 'dye:white' }, + { '', 'dye:blue', '' }, } }) minetest.register_craft({ output = 'trainblocks:sbahnblock', recipe = { - {'', 'dye:green', ''}, - {'dye:white', 'default:glass', 'dye:white'}, - {'', 'dye:green', ''}, + { '', 'dye:green', '' }, + { 'dye:white', 'default:glass', 'dye:white' }, + { '', 'dye:green', '' }, } }) --lineblocks from 1 to 10 -local dyes1 = {"blue", "red", "violet", "green", "orange", "yellow", "gray", "magenta", "cyan", "black"} -local dyes2 = {"white", "white", "white", "white", "white", "black", "white", "white", "white", "white"} +local dyes1 = { "blue", "red", "violet", "green", "orange", "yellow", "gray", "magenta", "cyan", "black" } +local dyes2 = { "white", "white", "white", "white", "white", "black", "white", "white", "white", "white" } for count = 1, 10, 1 do -minetest.register_craft({ - output = "trainblocks:line" .. count .. " 4", - recipe = { - {'', "dye:" .. dyes1[count] , ''}, - {"dye:" .. dyes2[count], 'default:glass', ''}, - {'', '', ''}, - } -}) + minetest.register_craft({ + output = "trainblocks:line" .. count .. " 4", + recipe = { + { '', "dye:" .. dyes1[count], '' }, + { "dye:" .. dyes2[count], 'default:glass', '' }, + { '', '', '' }, + } + }) end @@ -42,18 +58,18 @@ end minetest.register_craft({ output = 'trainblocks:subwaysignL 2', recipe = { - {'', '', ''}, - {'dye:white', 'default:glass', 'dye:blue'}, - {'', '', ''}, + { '', '', '' }, + { 'dye:white', 'default:glass', 'dye:blue' }, + { '', '', '' }, } }) minetest.register_craft({ output = 'trainblocks:subwaysignR 2', recipe = { - {'', '', ''}, - {'dye:blue', 'default:glass', 'dye:white'}, - {'', '', ''}, + { '', '', '' }, + { 'dye:blue', 'default:glass', 'dye:white' }, + { '', '', '' }, } }) @@ -62,17 +78,17 @@ minetest.register_craft({ minetest.register_craft({ output = 'trainblocks:sbahnsignL 2', recipe = { - {'', '', ''}, - {'dye:white', 'default:glass', 'dye:green'}, - {'', '', ''}, + { '', '', '' }, + { 'dye:white', 'default:glass', 'dye:green' }, + { '', '', '' }, } }) minetest.register_craft({ output = 'trainblocks:sbahnsignR 2', recipe = { - {'', '', ''}, - {'dye:blue', 'default:glass', 'dye:green'}, - {'', '', ''}, + { '', '', '' }, + { 'dye:blue', 'default:glass', 'dye:green' }, + { '', '', '' }, } }) diff --git a/init.lua b/init.lua index ef7faa0..a2a45d3 100644 --- a/init.lua +++ b/init.lua @@ -1,123 +1,95 @@ - +-- trainblocks/init.lua +-- Adds signs fitting the advtrains theme --[[ + Copyright (C) 2018 maxx, LuLa, gpcf + Copyright (C) 2024 1F616EMO - Trainblocks_bc - ============= - This mod adds signs for the advanced trains mod by orwell and it is bachwards-compatible to the advtrains_subwayblocks mod + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - PLEASE REMOVE THE _bc IN THE MODNAME!!! + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. - version 0.3 by maxx and gpcf - - Copyright (C) 2018 maxx and gpcf - - See LICENSE.txt for more information - - History: - 2018-03-04 version 0.1 release - 2018-03-05 version 0.2 added better node registrations and crafting receipes - 2018-03-06 version 0.21 added alias - 2018-03-07 version 0.3 removed alias in trainblocks and created trainblocks_bc for bachwards-compatibility | added new signs and blocks - -]]-- - ---import file /craft.lua - -dofile(minetest.get_modpath("trainblocks") .. "/craft.lua") -dofile(minetest.get_modpath("trainblocks") .. "/alias.lua") - - - - - ---subwayblock germany + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +]] minetest.register_node("trainblocks:subwayblock", { - description = "Subwayblock", + description = "Subwayblock", light_source = 8, - tiles = { - "down_subwayblock.png", - "down_subwayblock.png", - "front_subwayblock.png", - "front_subwayblock.png", - "front_subwayblock.png", - "front_subwayblock.png" - }, - is_ground_content = true, - groups = {cracky = 3}, - drop = "trainblocks:subwayblock" + tiles = { + "down_subwayblock.png", + "down_subwayblock.png", + "front_subwayblock.png", + "front_subwayblock.png", + "front_subwayblock.png", + "front_subwayblock.png" + }, + is_ground_content = true, + groups = { cracky = 3 }, + drop = "trainblocks:subwayblock" }) ---sbahn block - minetest.register_node("trainblocks:sbahnblock", { - description = "Sbahnblock", - light_source = 8, + description = "Sbahnblock", + light_source = 8, tiles = { - "down_sbahnblock.png", - "down_sbahnblock.png", - "front_sbahnblock.png", - "front_sbahnblock.png", - "front_sbahnblock.png", - "front_sbahnblock.png" - }, - is_ground_content = true, - groups = {cracky = 3}, - drop = "trainblocks:sbahnblock" -}) - ---subway signs Line 1 to 10 - ---[[for count = 1, 10, 1 do -minetest.register_node("trainblocks:line" .. count, { - description = "Line " .. count, - drawtype = "nodebox", - - tiles = {"front_line" .. count .. ".png"}, - inventory_image = "inventory_line" .. count .. ".png", - light_source = 5, - groups = {cracky = 3}, - - paramtype2 = "facedir", - paramtype = 'light', - node_box = { - type = "fixed", - fixed = { - { -4/16, -4/16, 6/16, 4/16, 4/16, 8/16}, - }, + "down_sbahnblock.png", + "down_sbahnblock.png", + "front_sbahnblock.png", + "front_sbahnblock.png", + "front_sbahnblock.png", + "front_sbahnblock.png" }, - + is_ground_content = true, + groups = { cracky = 3 }, + drop = "trainblocks:sbahnblock" }) -end --]] ---for bachwards-compatibility there has to be a signlike drawtype +for count = 1, 10, 1 do + minetest.register_node("trainblocks:line" .. count, { + description = "Line " .. count, + tiles = { "front_line" .. count .. ".png" }, + drawtype = "nodebox", + paramtype2 = "wallmounted", + legacy_wallmounted = true, + paramtype = "light", + light_source = 12, + sunlight_propagates = true, + is_ground_content = false, + walkable = false, + groups = { choppy = 2, attached_node = 1, flammable = 2, oddly_breakable_by_hand = 3 }, + node_box = { + type = "wallmounted", + wall_top = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 }, + wall_bottom = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 }, + wall_side = { -0.5, -0.25, -0.25, -0.4375, 0.25, 0.25 }, -for count = 1, 10, 1 do - minetest.register_node("trainblocks:line" .. count, { - description = "Line ".. count, - tiles = {"front_line" .. count .. ".png"}, - drawtype = "nodebox", - paramtype2 = "wallmounted", - legacy_wallmounted = true, - paramtype=light, - light_source=12, - sunlight_propagates = true, - is_ground_content = false, - walkable = false, - - groups = {choppy = 2, attached_node = 1, flammable = 2, oddly_breakable_by_hand = 3}, - node_box = { - type = "wallmounted", - wall_top ={-0.5, -0.25, -0.25, -0.4375, 0.25, 0.25}, - wall_bottom = {-0.5, -0.25, -0.25, -0.4375, 0.25, 0.25}, - wall_side = {-0.5, -0.25, -0.25, -0.4375, 0.25, 0.25}, - - } - - }) - end - ---subway signs R and L + } + }) + + minetest.register_node("trainblocks:platformsign" .. count, { + description = "Platform Sign " .. count, + drawtype = "nodebox", + tiles = { "front_platform" .. count .. ".png" }, + inventory_image = "inventory_platform" .. count .. ".png", + light_source = 5, + groups = { cracky = 3 }, + paramtype2 = "facedir", + paramtype = 'light', + node_box = { + type = "fixed", + fixed = { + { -4 / 16, -4 / 16, 6 / 16, 4 / 16, 4 / 16, 8 / 16 }, + }, + }, + + }) +end minetest.register_node("trainblocks:subwaysignL", { description = "Subway Sign Left", @@ -133,16 +105,14 @@ minetest.register_node("trainblocks:subwaysignL", { node_box = { type = "fixed", fixed = { - { -8/16, -5/16, 6/16, 8/16, 5/16, 8/16}, + { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 }, }, }, - - paramtype2 = "facedir", paramtype = 'light', light_source = 6, is_ground_content = false, - groups = {cracky = 3}, + groups = { cracky = 3 }, }) minetest.register_node("trainblocks:subwaysignR", { @@ -159,21 +129,16 @@ minetest.register_node("trainblocks:subwaysignR", { node_box = { type = "fixed", fixed = { - { -8/16, -5/16, 6/16, 8/16, 5/16, 8/16}, + { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 }, }, }, - - paramtype2 = "facedir", paramtype = 'light', light_source = 6, is_ground_content = false, - groups = {cracky = 3}, + groups = { cracky = 3 }, }) - ---subway signs R and L - minetest.register_node("trainblocks:sbahnsignL", { description = "SBahn Sign Left", tiles = { @@ -188,16 +153,14 @@ minetest.register_node("trainblocks:sbahnsignL", { node_box = { type = "fixed", fixed = { - { -8/16, -5/16, 6/16, 8/16, 5/16, 8/16}, + { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 }, }, }, - - paramtype2 = "facedir", paramtype = 'light', light_source = 6, is_ground_content = false, - groups = {cracky = 3}, + groups = { cracky = 3 }, }) minetest.register_node("trainblocks:sbahnsignR", { @@ -214,22 +177,16 @@ minetest.register_node("trainblocks:sbahnsignR", { node_box = { type = "fixed", fixed = { - { -8/16, -5/16, 6/16, 8/16, 5/16, 8/16}, + { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 }, }, }, - - paramtype2 = "facedir", paramtype = 'light', light_source = 6, is_ground_content = false, - groups = {cracky = 3}, + groups = { cracky = 3 }, }) - - ---station signs - minetest.register_node("trainblocks:stationsignR", { description = "Station Sign Right", tiles = { @@ -244,16 +201,14 @@ minetest.register_node("trainblocks:stationsignR", { node_box = { type = "fixed", fixed = { - { -8/16, -5/16, 6/16, 8/16, 5/16, 8/16}, + { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 }, }, }, - - paramtype2 = "facedir", paramtype = 'light', light_source = 6, is_ground_content = false, - groups = {cracky = 3}, + groups = { cracky = 3 }, }) minetest.register_node("trainblocks:stationsignL", { @@ -270,74 +225,48 @@ minetest.register_node("trainblocks:stationsignL", { node_box = { type = "fixed", fixed = { - { -8/16, -5/16, 6/16, 8/16, 5/16, 8/16}, + { -8 / 16, -5 / 16, 6 / 16, 8 / 16, 5 / 16, 8 / 16 }, }, }, - - paramtype2 = "facedir", paramtype = 'light', light_source = 6, is_ground_content = false, - groups = {cracky = 3}, + groups = { cracky = 3 }, }) minetest.register_node("trainblocks:station_block", { - description = "Station Block", - light_source = 8, + description = "Station Block", + light_source = 8, tiles = { - "down_station_sign.png", - "down_station_sign.png", - "front_station_sign.png", - "front_station_sign.png", - "front_station_sign.png", - "front_station_sign.png" - }, - is_ground_content = true, - groups = {cracky = 3}, - drop = "trainblocks:station_block" -}) - ---platform signs from 1 to 10 - -for count = 1, 10, 1 do -minetest.register_node("trainblocks:platformsign" .. count, { - description = "Platform Sign " .. count, - drawtype = "nodebox", - - tiles = {"front_platform" .. count .. ".png"}, - inventory_image = "inventory_platform" .. count .. ".png", - light_source = 5, - groups = {cracky = 3}, - - paramtype2 = "facedir", - paramtype = 'light', - - node_box = { - type = "fixed", - fixed = { - { -4/16, -4/16, 6/16, 4/16, 4/16, 8/16}, - }, + "down_station_sign.png", + "down_station_sign.png", + "front_station_sign.png", + "front_station_sign.png", + "front_station_sign.png", + "front_station_sign.png" }, - + is_ground_content = true, + groups = { cracky = 3 }, + drop = "trainblocks:station_block" }) -end - - ---gabriel's mountain railway block minetest.register_node("trainblocks:mr", { - description = "Mountain Railway Block", - light_source = 8, + description = "Mountain Railway Block", + light_source = 8, tiles = { - "down_mr.png", - "down_mr.png", - "front_mr.png", - "front_mr.png", - "front_mr.png", - "front_mr.png" - }, - is_ground_content = true, - groups = {cracky = 3}, - drop = "trainblocks:sbahnblock" + "down_mr.png", + "down_mr.png", + "front_mr.png", + "front_mr.png", + "front_mr.png", + "front_mr.png" + }, + is_ground_content = true, + groups = { cracky = 3 }, + drop = "trainblocks:sbahnblock" }) + + +dofile(minetest.get_modpath("trainblocks") .. "/craft.lua") +dofile(minetest.get_modpath("trainblocks") .. "/alias.lua") diff --git a/mod.conf b/mod.conf new file mode 100644 index 0000000..4f182d6 --- /dev/null +++ b/mod.conf @@ -0,0 +1,4 @@ +name = trainblocks +title = Train Decoration Blocks +description = Adds signs fitting the advtrains theme +depends = default \ No newline at end of file diff --git a/textures/down_mr.png b/textures/down_mr.png index 5966d3e41c69a892637dd8ed6156f0b21061a724..1a86d6087c33f6cb4faa72e5e9d9b0c81bd5a830 100644 GIT binary patch delta 109 zcmcb^c#d&`1Sb|8-G$*l2rk&WeDXxakWdFt7sn8d^T|A1TuBP7 z8w?B#Wcp*gmt>uOdQhi8%<-x~apZ*`6=&KEW=MFjES6$xXA?WKL&b~v>3bE3yCp diff --git a/textures/down_sbahnblock.png b/textures/down_sbahnblock.png new file mode 100644 index 0000000000000000000000000000000000000000..2c29cece5564c3174eeba979e05da9c3f4fcdbec GIT binary patch literal 4338 zcmeHLeQXnD7{6|ej|~RQ!4OoAf*B~+yKApo?_Bw??O0`nW-D7U5V?={x|6oo-QCtg zB4mJk`4s`9z(9=y4FpXz!KhK00ve-8BH|w?Abvz5!EgD9qR(BsZVM!4iTt-~-oDR0 z@ALfL=l#9U`}D4x!VBh&DxO%3Vc4i(oxcJ4F=i_$gl}P2#jhANn zDJi`+v+4FFoo#KYaYMQ%kBJSd3{=ec<(;nM_M;_FTxvb--Eiq*;kw%GN>lU5%|XTIuUBC_-^s(hgLT|yW_P9XK&dgeoXB@ zJn67&=c2X0&1!vS9D3?D_!sZ2c$3gS$QTGskn$^UInT_c`U< z#(n3vk(fI|o&K|V;-L$b=l?i3o-MfgddDL_9^8Au_Vhi6&TgHu^VO+Wlo3~IeqL33W?RwF zWXEoII(b0voP{Yn7X3QZ;~8?ac-z|-f4O+^*c*SJ`fSIU(W_=_`_J7U9Sw<`Q6fBgu3+?MS;Esum+@mSsuGNjjYbSP=S(q`_y1 zq(0Sz$YS`BE^123P}C%DV)BC8W_ay(7{`0!OQb@fJbY5mu>gFK89qhQ4vI`9$i5!B z5oiaHTtGMU&?75Sh-^T*+NOyp(2kPE)V>gsnDn^gl1QRBN`R>jv(o*hG!JIp z!=xalBvO_akloMHP~={+`o(6BSj*`f2)O5Q`&sv_-7*HNP>A!ZVw)LW(C@XI^K+6a zDiUXjPKg)Yh?NK=(*nV;yhM0JcNHP9jKCs6kR;yI2P&A<4L&I%6AHi`3gCDoms~9f z3?VxymSFfQk>F)kCS=h`v(+w-D2mQL5DPU0vXYPYjmm_Q0LtyDW?eF%&@M(I7@Daj zSXQD4N_J5U011*HSx}P5)v8*8hwW4nd<>DPWXu{c3Fqd9gI>GSLG^0Fao&)@!E3Kq zl5LsZfryeojRtSBNmo-0<7Pb7Ocmt;vDc^xX*y)0iD{KsYsB0Z4i*E%@@Ad_fTf4E za8?~vwTP<5z4m-@&JTy+I7z(0`=P7@Xue!Wddl_Pl!v3T;hS(FRZ`>?|7C3+9=rzZ zVaw|j-B7g^mMVLq8c}QZE_)kStfPeE)}i2dF}nnvZ%0{%0V_Ksw(!Xqg6fe=*B-rc zgH&Kxm(#_&Btoik@&rTCZbI-NfslE((@ZB3(SpT79$i;uBh71QZVY$?t{^?FA2NKp zwNW$rTc=x)xeGuTLD2-|?jelH5k}?~Oqw;LXT>$-b)3{#27QVQ_+@oayr346`C^#k z4C1|+S8gwE<`g(SILUzc9i(fJt^qMHAmhR88l-DL3=GJ4FuVRYx{7;Wr%)1}g3|D^ zw0HFP3*c32M5=DF4u2QiVm2GLqjLf%hZ(_8VAv0~qLLYb4O`~2^Ox81fa)McSA#iciQihLAD9==lQXXMYq?%&A6a{Ze;iuVzg+;$VQ*< d{ppo+YHe7!a#DJKoRv-2U|@m&<$IT{`4<4Cu44cI literal 0 HcmV?d00001 diff --git a/textures/down_subwayblock.png b/textures/down_subwayblock.png index 64e26bae9c9b2a8e3464ba76611e7ae70ce2f16f..e4a3b345005df65b4a195260c3d2163a4afa986b 100644 GIT binary patch delta 95 zcmX@hcz|(&1Sb8|9|_O8IypLj7i?^E=+0M xH7P)jh^LEV2*>qg4pt^Mb~ZM*Q=Ah58UDUzGv8ZbpbC^{@O1TaS?83{1OS4I9De`+ delta 108 zcmX@Wc$RU3gfs^m0|SHn=l_X7iY>|8-G$*l2rk&WeDXxa5H~|l7sn8b)5$zsT))mc zFeW4>BqT%}-#AU@tfPICd9hY_;z3D$y=9q+krY5JYD@<);T3K0RZ%m BAEy8S delta 118 zcmV-+0Ez#_0oMVL7zqdl0000V^Z#LyAyi^bNkl|8-G$*l2rk&WeDXv^?NA3#7sn8d^T`PkB@Ke- ze*OP%Z&%vW^TMgZM8Vte;iP~3%o&?}DtHb*;_=~)5Pf*rK_DQM`Co&YSwy6VLD2># ZhSEmm?-rIV7lFnzc)I$ztaD0e0sx*cEZ_hD diff --git a/textures/front_line2.png b/textures/front_line2.png index 5522aa228e246f7a0322e066df7047f93e28e982..1d3bec0670a007054fcba1874a1a0849b1f4544f 100644 GIT binary patch delta 117 zcmey&c#Uy_1Sb|8-G$*l2rk&WeDXxakeqN&7sn8b)5(9%D}0~d z$aLU{gW`f43}PvK%7>K~nfy(ka5#@)mx@_K9w&F1w%nr&y8ZXLe~3IXnqnd@kjtPK xe!)hHv#NQKgUU75BWh}E*aW;>nvIPa8C+Zi3f@XEodDX(;OXk;vd$@?2>`8DG;RO@ diff --git a/textures/front_line3.png b/textures/front_line3.png index 631774401c24d9d8057e645e5164054389c72adb..a1072c172c9af6fa37fc3d2f8058492e42020716 100644 GIT binary patch delta 113 zcmX@bxRP;#1Sb|8-G$*l2rk&WeDXv^?VNB=7sn8b(`P3;axo}y zuxx*E|JLcZQX8ixI#vsphFnn*aCVS%Y-L<(uC+?rQ$fbSYUVMeR@Rl8zSow#77S}N xei6uCcfgUo{Q8d)7V`tuJ|Y{e7unBW$+$*W%;0X@*M6X_44$rjF6*2UngB=^Hqrn9 diff --git a/textures/front_line4.png b/textures/front_line4.png index bd8390f29e40bf77c685bc179f5df14d04bf42c6..ddc0210adf42544ea12779a8b1dcfb4d892dcfa4 100644 GIT binary patch delta 120 zcmX@gxPftk1Sb|8-G$*l2rk&WeDXv^?eri|7sn8d^T{bI(iJ!j z3=J+sFmpHE>*&PC;!L!8wWhrEdRLT*azlGazZ8t tdesl|r?|<4&EN2VD}T;1o_$By8AL-xmh83kHUwJ8;OXk;vd$@?2>|cSI4%GH diff --git a/textures/front_line5.png b/textures/front_line5.png index f7f257e3280ebc0c3674791438566146bf6b349d..c8008e654cc04efca31b9f1f4f28a200332a2f31 100644 GIT binary patch delta 116 zcmX@YxQ20p1Sb6Ouxh89pWpZQERY RG6$%M!PC{xWt~$(69C6RB4q#o delta 140 zcmZ3(c!Y6+gfs^e0|Uc^i5X@|8-G$*l2rk&WeDXv^?X*Bo7sn8d^T~hqw=}98 zIC8)tnOCPkESblyv|#$?1W{M!6KNY4c)R^~7mqyEao2N4$b&D;e%>568q#dqxHUP# r=FC%Dz_`BuqUnQv>lL#OPXEEc`c$B55gX$+pnVLUu6{1-oD!M%vo O4}+(xpUXO@geCyFS0TRu delta 132 zcmZ3@xQB6qgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXv^?Kn?Q7sn8d^T~hy&u>&Y zaO8kPGOtd7n6k26X~Fc(38JpdC(<@Pn0Ppgi(BqC=MTo|s!MJ*ymaDfntI|xs^ZDx jFQh)q<_$IeAtcYB>n)`FbNVw&pgjzpu6{1-oD!M&YCfOl&NIhYl#55)hK&Qdu;uDPpBUl2#7~cdKB6s>0C~Yzz#KmkN1p TN%#E*)W+cH>gTe~DWM4f><=RI delta 143 zcmZ3-c${&9gfs^e0|Uc^i5X@|8-G$*l2rk&WeDXv^?aUBQ7sn8d^T})0tVvN| zH87mO;c@K%Q~K8J+aCwAms@g&1)4PEh;c6~iH??@6B`=Zdf9VE*Mw4`Zy|8-G$*l2rk&WeDXv^?bHBI7sn8d^T~ho%NrX- z4jge%Qix>co^$la35I^F9j7BVbS+{`*&J~}RsPlD?i2Ax-l@FNGWe2wxgnEN)hs|@ q%@Zq5Qy-3u1M=korp@{v85#b?is-$bZ8#BV9fPN|8-G$*l2rk&WeDXv^?W|Bw7sn8d^T{a|8zwf2 z95~{jq!7u>-SqN7zrW&{r#ca?7a1o->SP4{fBW}>iv)k(p@%9tS_WT}FE*^?n9pXy vo{+UnC8D!{KT%!qQiJ_F1vS2XN7xx6kBI8s2>tO7XeWcGtDnm{r-UW|2(C8l diff --git a/textures/front_mr.png b/textures/front_mr.png index 58d4ba0159758e47b948d1daf0bbc52fcbc1c5b1..d7826ebfaacb49df031e9930eff7e6a64b472da2 100644 GIT binary patch delta 179 zcmV;k08Ib40+Rxe7zqRe0002(-QrS_GgN;VP)t-s0000GwI~$qGa0M@E?P8FQd0lc z8UO$P9rpb|00001VoOIv2Nq$7>i_@%SV=@dR0tgf!9fkfFcbwa=luc*kx3yj2*VjF zgHQ;$S50fTAK=)h`ursroGa9AZ((pgE9$OoiGinyyI5UdHlkds6U>Hit!~IRn<^i1 ht!@}Go5FE?ffvut90@rPPs;!R002ovPDHLkV1m1fLqq@o delta 215 zcmV;|04V>H0=EK?7#j!z0001xk!Usm000JJOGiWi{{a60|De66laV1*f161}K~yNu zV+;xkVju;uFfcG2k6eo;`b=Ajfq_Bl>N7NP%jLmLm}Wp!BZKc;nhXpKza32&7#Nrc znhjA6A<;G9GMj;c;e+>$KPSJUXh1d_!bVmNSH^_PY&d|Z7TBtR?j&ThajC}QX*dwP z&yT4Ziy!c-#%=>1)mSuOF;y+Mlm|rvJoxaahU;M>-fRe)iAdFOz({KH1^`luO#}W! Rm%RW0002ovPDHLkV1joMR#E@} diff --git a/textures/front_platform1.png b/textures/front_platform1.png index 4c92ac6eaccaf2bcbf97f7406a1983f753da5f1e..c2ae34d5f047adcf85d9d731a6191d552376c6ba 100644 GIT binary patch delta 116 zcmaFHc$IO21Sb6Iagfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxaka#ao7sn8d^T{b|8-G$*l2rk&WeDXxakeqN&7sn8d^T{bmdKI;Vst0O0X7RsaA1 diff --git a/textures/front_platform2.png b/textures/front_platform2.png index ef76b7c2538fee4b17e8e4a14292f6e0c60fc5d2..b8a2083548080ff4d42613a9c71005bc3bae3cca 100644 GIT binary patch delta 120 zcmey!c$0C01Sbpmfgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxakgQNo7sn8d^T{bBJuzL delta 142 zcmcb{_?~fsgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxakc?nY7sn8d^T{bxf#VFlXA;OXk;vd$@?2>?;yG!Xy* diff --git a/textures/front_platform4.png b/textures/front_platform4.png index 77aded5aeed8d6b55f0a4e8388bd8cd678111340..0941c5957a272a339b6d46d70e27ac995fda81ba 100644 GIT binary patch delta 123 zcmeyyc!zO<1SbFObgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxako+i57sn8d^T{bzopr0EVtP AqW}N^ diff --git a/textures/front_platform5.png b/textures/front_platform5.png index 96a11b365ce4a1ec645bafe54a05080aacd591c3..4d13f13e17226cb93e177615b16e049e5f7c83e0 100644 GIT binary patch delta 120 zcmeyyc$0C01Sbzopr08@t}zyJUM delta 149 zcmcb~_>FObgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxako+i57sn8d^T{bgTe~DWM4f0goZ{ delta 147 zcmcb?_=RzTgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxaklYAQ7sn8d^T{bHVDLQ5Sow_!ptBMtB~9_ R_fag!JWp3Ymvv4FO#t_^Bi{f3 delta 144 zcmcb{_>pmfgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxakgQNo7sn8d^T{bLA$*AdO%D}*1 VtDtOOp}`F@)6><@Wt~$(698xsBDnwn delta 149 zcmcb`_>FObgfs^e0|Uc^i5X@|8-G$*l2rk&WeDXxako+i57sn8d^T{b BIy(RW diff --git a/textures/front_sbahnblock.png b/textures/front_sbahnblock.png index 1553f9e9bb2d63be83b99b77bca659a63baff537..485a5e80ab6ea9a41e7dbf84f7bb3112709744fe 100644 GIT binary patch delta 112 zcmey!c#&~}1SbF_XPJ142t%DYfAi6^oOM7A N44$rjF6*2UngHvr9+vpmfgfs^m0|SHn=l_X7iY>|8-G$*l2rk&WeDXxakgQNo7sn8b)5$zsT))mc zFeW4>BqT(r|DK_9*0DcTa)yKki_QzC|LSuNt!~_SfTz{JR{X&xPVohExeHoZ-yUX| we!p;M$G?{i-}DsB{;ho7wBY!r6ln&AT~WevQ~N^i0qtb)boFyt=akR{0HB6B_y7O^ diff --git a/textures/front_station_sign.png b/textures/front_station_sign.png index b6f6aae555caa7ddcf7ab627f1d2ceb8806fd962..5b325589513ec8de6da140cf4a38c9228b0c9c0d 100644 GIT binary patch delta 101 zcmdnRIG1sP1Scai0|SGqZLZQpMeRVg0G|+7ApigW|4VPqzYAn(dAc};a9mGLNJv=m z|9HUW{)PMc7XFiSK4jmvr(9vmfi{Pu&mFQFIvN=nN@wx?KIb&^Ay5~Cr>mdKI;Vst E05U2kV*mgE delta 130 zcmV-|0Db?R0lEQ@7zqdh0001xk!UuNAuDcKNkl2*BM>-K3ROk~-vW%OwFxmSkJeM{G$5Jq0qvf=LQ19gVb8zIEfdCj1Yy kc}hLVyiZYi@RuH|12JYZ4dPJlGynhq07*qoM6N<$g1PZC4FCWD diff --git a/textures/front_subwayblock.png b/textures/front_subwayblock.png index b29000e392e84a23e8a10a8759c8dc167e302145..6c5aac587811188dcbf73043cb15d6c6188e584c 100644 GIT binary patch delta 105 zcmaFJc#3g?1Sb8|9|_O8IypLj7i?^E=+0M zH7P)joTrOp2*>qg4pt^Mb~ZLQjg1Z67D-pNBp9!A8*wqHOytv_yHaW;P$h$>tDnm{ Hr-UW|ulXMR delta 128 zcmX@b_>ggegfs^m0|SHn=l_X7iY>|8-G$*l2rk&WeDXxakSJGA7sn8b)5$zsT))mc zFeW4>BqT%}-#AU@tfPICV`fW|O*y85}Sb4q9e06DB8qyPW_ diff --git a/textures/inventory_line10.png b/textures/inventory_line10.png index 4cf23abd48f583363db84df475cc60f7404944b7..d303c4df260bb7907c414c38d99ad66b6632653d 100644 GIT binary patch delta 83 zcmZ3^*v&XWf|HS%fq_BQHdkq)qP9I-fKP}kkpKVx|D`wQ-vzQHJY5_^IIbrrFfh-v kS4b&lYpF00j1c2t;CavO*n7+JI#3ORr>mdKI;Vst0Lo<;NdN!< delta 111 zcmV-#0FeKS0jB|w7zqdh0001xk!UuNAuC%(NklYHpfzAb=KTNvpMimak&zM3 zMp4Sh$iTqBM5+xe$Yx`40ETTO+rR`j31S$r8c4QbNNZrhFO3;LObmk#008%;4;=46 RmT~|9002ovPDHLkV1iqEDmnlF diff --git a/textures/inventory_line2.png b/textures/inventory_line2.png index e929d7e882db8a82d15da274bd49dcd88ec01408..fa741dc364280686d66ba3c223eddb1b406d66a6 100644 GIT binary patch delta 86 zcmX@cxSer=1Scai0|SGqZLZQp#Ska90G|-o{|s{f|NsAZTVyX#M%vTGF@)oKasmVM pKYoQH2@FmGX8g=dj;W3e42$Nob%%3=1Ob&Xc)I$ztaD0e0sv7_7~cQ@ delta 101 zcmV-r0Gj`|0mcE47zqdh0001xk!UuNAyiR3Nkla3&mhM@3SeR&5wM`}{y)U7 zicy|gHXxaV%T5~kfqFLJ@(Cq2&|U*JKVXIxB{9uN^VA9ewp0pZrhtBD00000NkvXX Hu0mjfeMcq{ diff --git a/textures/inventory_line3.png b/textures/inventory_line3.png index 1b9f075d284eb194bfd4fa4d560f323a39becb0d..77b73e5bc33ed7a75d64593ec816234606650b3e 100644 GIT binary patch delta 96 zcmZ3>ID>J51Scai0|SGqZLZQpV{IR{0G|-odWQP{|NrNFoB)zxO!9VjVf@dedk@Hw x@N{tu;kcfhz`*>EU*SjsgVTu|5kUb4hBfZ&(mOxy;RLE-@O1TaS?83{1OO=i8|DB2 delta 117 zcmbQixR!B(gfs^m0|SHn=l_X7iY>|8-G$*l2rk&WeDXv^ZGS6I7sn8b)5&YnSNuQk zz?hJX8-^I diff --git a/textures/inventory_line4.png b/textures/inventory_line4.png index c96c65df9ae6794d75a9bd98eac3ae62cfc226da..7b4f47569dad577f2c23186f0ef2b88f281ba7ce 100644 GIT binary patch delta 88 zcmbQwIDv731Scai0|SGqZLZQpMQs5bP0l+XkKj$9iA delta 103 zcmV-t0GR)f0iOYo7zqdh0001xk!UuNAuCfpNklYLsAnJvFfot_Sa3=FZ}<;q zGd3_%)dq;!5L1!up@t2}X45j1Fx^c(8!%l@g;1is21c5vRsakZ5+jwC@{|Ao002ov JPDHLkV1n|OBewtm diff --git a/textures/inventory_line5.png b/textures/inventory_line5.png index cd00ea7f291ad4242ace4bed9d6d13bb3ff9a5ed..5920e18c1a440553edafccc976f31d584c1e194f 100644 GIT binary patch delta 86 zcmbQs*vB|Qf|HS%fq_BQHdkq)qP7!TfKQ0)|0N9n|NlR-i`N|}Bkk$p7{YNqIe~%s pAHTwp!wgOWX3dODj;;<242!MVE`Ln$p9xgP;OXk;vd$@?2>?c58SDT6 delta 101 zcmV-r0Gj`f0i6Mm7zqdh0001xk!UuNAuCZlNkla3zl4D#z{EfzU_s$U|HrOs zDI>LPz%Y;Me!%4u>iGfF^%%C1Yy<5z5Es+bvjJ}$lW7A0j%^BcGXe^600000NkvXX Hu0mjf!OSMj diff --git a/textures/inventory_line6.png b/textures/inventory_line6.png index d182ec8371d7ad79fcc8339f8606ce38db764aeb..c58d873cd5946af01596d3f1fd114de110f04f7f 100644 GIT binary patch delta 88 zcmbQqIDv731Scai0|SGqZLZQpMQs0YH|lr;B3<$MxhN|K~Gy q*nMce@ch35OX_@gg$|AgRfe$B68HTAs*HdN89ZJ6T-G@yGywpI031dD delta 97 zcmV-n0G|Jl0hs}i7zqdh0001xk!UuNAuCNdNkla3|DS;*z{EfzU_s_EGGbSR z>qX`WgE548*>086o>00000NkvXXu0mjf D*kmL4 diff --git a/textures/inventory_line7.png b/textures/inventory_line7.png index 0dd914ba8b87eca58904bd52a9e44188a0dc20a8..161734a37344674491f54d277836d43af94a7eb3 100644 GIT binary patch delta 85 zcmbQk*vmLUf|HS%fq_BQHdkq)qP8PjfKP~PWo706|NpZY*VO=Jq&!_5LpZJ{ConMo n<5xJ6z~II%&@q#-@c;wE0(aJIj(C@~KvfK$u6{1-oD!M<3{@Ds delta 100 zcmV-q0Gt1f0h|Gl7zqdh0001xk!UuNAuCWjNklZ8tgK`p1u!v?2w0FgZEbB> z6;)MLQOO2mlW^HdnGKj`W7~DCqz?Vr%6dWo0000a#92h7#KD^W=}r#+`kp5hQZU-&t;ucLK6T!+8Zzc delta 95 zcmV-l0HFVi0ha-g7zqdh0001xk!UuNAuCHZNkla3FL!}~6u`tlB49z`J=Djp zO8z3XY``!N(@v_`fXgR?)ep4SK<`jO4j*dS004`H3n}|y2D$(M002ovPDHLkV1kf4 BBr^a2 diff --git a/textures/inventory_line9.png b/textures/inventory_line9.png index 2f17ee317aaad05f13d53cadcad914e97a3ba5a2..273c93a385e63c42aee1b34640524431ea62940c 100644 GIT binary patch delta 86 zcmbQw*vB|Qf|HS%fq_BQHdkq)qP7!TfKP}k!-0+e|Nno<6!#M-Bkk$p7{YNqIe~%s pAHTwpWCkYzvt~vnM^^_1hV|L(#=lIy>;fud@O1TaS?83{1OP?#8Vmpc delta 103 zcmV-t0GR)d0iOYo7zqdh0001xk!UuNAuCfpNklYLIIxj{6u`tlB49!0{I~bR zs)+I6CMwy0X&$DX)UW}UPpDx7vg@hl2ij|3AwGO)6G~LD0RX>G4=K#*jGF)e002ov JPDHLkV1g&(DPI5p diff --git a/textures/inventory_platform1.png b/textures/inventory_platform1.png index e9b5f377158cdc83147d74bb994b9860150ac622..c11ebb08f72831f720a53792c19571bce9a7ab27 100644 GIT binary patch delta 80 zcmdnTxRG&!1Scai0|SGqZLZQp#Sj~|0G|+72AT5z|NnnetgQyhhhHzX@PH1Rg iRye}r#xP@_o1Scai0|SGqZLZQp#SnY80G|+72AT5z|NnnetgQyhNO-z9hHzX@PGDf3 lXRnY_%+^w2AQ&OW!@%>N+p+hS<#nJM22WQ%mvv4FO#tD%7;FFl delta 111 zcmdnOc!6<(1Sba*0|Uc^i5X@S6+@!kJY5_^G|nfdOwdeMU^OtDz!5RQ^1pn!0T7%D zJ8<&^gOcAm-WksnXLsp%Z{qbSn5@tiXg{T`nN94^r5PWcH}UqE_^)LsdN1HT&B?Y5 PXflJRtDnm{r-UW|L1!m! diff --git a/textures/inventory_platform2.png b/textures/inventory_platform2.png index 8ee7315a45c33b95b6b323d98a358c4c37c2c810..1ae2b07f94b09df532eb16ce81f70bb6cea46996 100644 GIT binary patch delta 86 zcmX@XxSer=1Scai0|SGqZLZQp#Ska90G|+72AT5z|NnnetgQyhNPD_ChHzX@PGDgE o$FFcCfx$_@jGvjwG1ZZQVbOfH?r@HfAfPe^Pgg&ebxsLQ01|l@$p8QV delta 103 zcmV-t0GR)`0muQ67zqdh0001xk!UuNAyiX7NklYLkSS*%1u!v?2w0Fg{~vc? zRm3P;K_wfIO~Pd-ZTvtz8*urAA{%J00gE3n!-}GqW~6y)1pxb_4NsD@5Q+c*002ov JPDHLkV1nGYBX9r! diff --git a/textures/inventory_platform3.png b/textures/inventory_platform3.png index c447acee9b65d6edf27f5d0a3ba63de70f664a7a..b62c2c0facb355e2e2a2d56906662745deaa57d5 100644 GIT binary patch delta 83 zcmX@exP@_o1Scai0|SGqZLZQp#SnY80G|+72AT5z|NnnetgQyhNO-z9hHzX@PGDgE m$FFcCfx+oSj)s delta 96 zcmV-m0H6P~0l@)~7zqdh0001xk!UuNAyiB^NklYLkSS*%1u!v?2w0Fg{~vc? zRm3P;K_wfIO~Pd-ZTvtz8))JO+H0VFC^6DJwE_SaNe?6CJ@IY;0000YLkSS*%1u!v?2v~4Q{D0g5 zXEVxHP}K&A*$`8a?V*MZ$Y#?rlrY^*JsU7xPlZsTy#_{_r&a(5wh|*UrkVEu0000< KMNUMnLSTYd_$4v` diff --git a/textures/inventory_platform5.png b/textures/inventory_platform5.png index 36d41482df3fd8e6e4cbdb119a7268dac11b4e66..b0338cc097f3dd7d4028bc1316f252ecac4073b3 100644 GIT binary patch delta 86 zcmX@XxSer=1Scai0|SGqZLZQp#Ska90G|+72AT5z|NnnetgQyhNPD_ChHzX@PGDgE p$FFeYFoTnTSu-P(qpJf0!(wZ;%O4Z`X9ATmc)I$ztaD0e0suHH8I}M5 delta 103 zcmV-t0GR)`0muQ67zqdh0001xk!UuNAyiX7NklYLkSS*%1u!v?2w0Fg{~vc? zRm3P;K_we7&7-y-aQTFKe!z4+rfnqKKzj{D#WY1WFw#7=0szji4NuLo_GJJ7002ov JPDHLkV1f<4B-{W1 diff --git a/textures/inventory_platform6.png b/textures/inventory_platform6.png index cfc1e54677ee6d741c3b327641a7f13c3c2b2acd..db1ccca6344917e49a0b73936d99ee7bbdc9c8f1 100644 GIT binary patch delta 85 zcmX@gxQ%gw1Scai0|SGqZLZQp#Sllf0G|+72AT5z|NnnetgQyhNO`(AhHzX@PGDgE o$FFeYFoRRTHby2#mjet8%Qmw!uV?&H0#wD|>FVdQ&MBb@05C5Z*8l(j delta 100 zcmV-q0Gt1|0mT837zqdh0001xk!UuNAyiO1NklYLkSS*%1u!v?2w0Fg{~vc? zRm3P;K_we7&7-y-aQTFme!#SiWE*I&fv8ZT$OcB5r&a*GunkW_2BYLkSS*%1u!v?2w0Fg{~vc? zRm3P;K_wfIO~Pd-Wj0`%jcF&zHqc%J3-PWWw0>Zud1?g!JLwHgqD^E600000NkvXX Hu0mjfexxCr diff --git a/textures/inventory_platform8.png b/textures/inventory_platform8.png index da8f850c4e5fe261a054edb843b64c59e0a3adf9..c1988b8216a00c14d8afbc6d2aee039e3437a95c 100644 GIT binary patch delta 83 zcmX@WxP@_o1Scai0|SGqZLZQp#SnY80G|+72AT5z|NnnetgQyhNO-z9hHzX@PGDgE m$FFcCnZfBqPKuxb1H-1r?8&E|`?mtsFnGH9xvXYLkSS*%1u!v?2w0Fg{~vc? zRm3P;K_we7&BL^l8aCka$)NQE?KRLolo)BAS^@Jq4YLkSS*%1u!v?2w0Fg{~vc? zRm3P;K_we7&BL^l8aCka2{mj$c0JYnKzj`=#D@==HZamWwE_SINe?4v&WyDH0000< KMNUMnLSTXnq9b_# diff --git a/textures/sbahn_sign2.png b/textures/sbahn_sign2.png index 67d35a0bbcb93860917ce43843d7b12daa828efc..4d8ba0146afd125377b5dcdf0fe85ab3acc2b623 100644 GIT binary patch delta 145 zcmbQwbdqs`1SbIal$O!9VjVM^n! zNda=)JY5_^BrYc>C~&tpF*Y-|obNbxp}}y61JAlpZiyLE3wYXC71$yKdk(TrPRepg xVhD9wa)5_d|PrU615;1fOJL;9VzfKWWFK*+3H+JYD@<);T3K0RU$oE|mZP delta 232 zcmVJFK~z}7 z?Uun2fFKM6gOfHWLkpo1Erm)fgf=JyU-)naj6#e$;VW>Lx7^H76dq1vMv- zlIR}Jl$?++#aI75^?sMuLLK*g#DS7{Qyu6b&hEgO_^k}|6lZ;msE0t#!t;%mEO#bi i08;Ikw&e=&8h{NjnMg||70U4d00009AFCo diff --git a/textures/sbahn_sign2l.png b/textures/sbahn_sign2l.png index 63a07b4d523fc8628a033dae84e82abb71e29034..61e1fa916045c7d47ecae829693a39a33e68d8bd 100644 GIT binary patch delta 145 zcmbQwbdqs`1SbIal$O!9VjVM^n! zNda=)JY5_^BrYc>C~&tpF*Y-|obNbxp}}y61JAlpZiyLE3wYXC6Eqc^nU6ha@-#G6 wGCuH2av=|I%G(0whhYmMx*o~x2tLWgV17^BUbS3%CeTC%Pgg&ebxsLQ0FA~j#sB~S delta 232 zcmVJFK~z}7 z?Uun2fFKM6gF_pXp@q>KLK_rOPh(9 i0jYIttmVVNYYZHljz~*ucC@Sj0000Ial$O!9VjVM^n! zNdagfs^m0|P^GRn-?D#g^pl?!xdN1Q+aGK6#>|c1gUai(^Q{;kVNd@*Ys& zIkK+9G(xMnY$Xqq{*o2{i)`kw<{X{>q_acwafxS@d(?x8&c4rH-fm&JuJWT=`u?3< zXaBSnHq}fl0uBs}VB&OWOy%+Qk4`-@d}z2+=^)eGX2qH5X{|6h7@{#_u8G0EHAg`tC0)&s~1 z@N{tu;kcgsgP(=Rg419HP?>zoithiMDR2KXtK9p)I$2}I|NP?tasTS&IxLO{9QgBJ zat=fBbHfljcCD5F`9os<%P)ER|9rj2vqr`^aiEC{lUH&T^{fQ47(8A5SY6gRB{Ts5 DbP+sm delta 230 zcmVFq5+zptG;p(fe^jTnM3(dkXi*Tmi3d-0~CjQa|9*K|y z9_ST0-aiNKo_c$k8{|6h7@{#_u8G0EHAg`tC0)&s~< z^>lFz;kcfhz|i;$sKk-OL=Q;GOMC*7ZqiISHh!la85lbM$DK^z3w8l&VDNPHb6Mw< G&;$S|!Y88u delta 147 zcmZ3=c$#s7gfs^m0|P^GRn-?D#g^pl?gFHN;HUHM`iY9#xe=Z&jv*0;-%dB=I$*$a zq(t%m|4r7SLN9LZ2)O&~B7?rn8UZs)7#hS|8iU vz{H`@03r_5tnySp_2L?5?om6n{b2=+ORp%J|M5L71hUN2)z4*}Q$iB}m$o?2 diff --git a/textures/subway_sign2.png b/textures/subway_sign2.png index e5521f314a0559a70be53145c3eeb054d00c88ad..987dc083f32e41d398f0f1c36c71e769ac3de815 100644 GIT binary patch delta 167 zcmbQnbdPa@1SbnK0|P^2Nc!=K#@hA#0X`wFKt4m%e~y&TK|w+P|Nnn8!`A~S!kFak z?!wT)DhuL-db&7b`t@)P60a`TTZX2Oskj$qf^@*I4VYWb!5`oai=S4P3&VByjYW0ZZU{ zoe$?~)w-Bkj;xPtu-xgR=r^x%N`(pYM(>?RJlh4YwJdq_Gk;A=o$*7ii*;_i3#uBJ XRb-4Z4{G0d19G^htDnm{r-UW|3pQ39 diff --git a/textures/subway_sign3.png b/textures/subway_sign3.png index eff85f2a035f9567e00f45682acae336303d8258..ec34d47280b2d43f32a8144681d59a83ec042613 100644 GIT binary patch delta 112 zcmcb_xPozl1SbM)zif>MB;KXM=KK>JDWj*i@^s^M~Q_zeFANdAEX|b>otpgAp--~adE|qcb3Ee PH86O(`njxgN@xNAgis@c delta 154 zcmZ3%c!_a>gfs^m0|P^GRn-?D#g^pl?!xdN1Q+aGK6#>|c1gUai(^Q{;kVN_@*Ys& zVX^OM`Z>q)WX(&D)|92~%PsT^)Z>%m1r1Z?XnFd-7OU8^z3WWya!$@Z&ka@5|L>$a zm8YGssb*pkaA05r6Q@JxRNh|y=*%O-hlZ9)2idFNC_dpT%jN>w&fw|l=d#Wzp$P!F CfI9*J