aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Fix depercated functions1F616EMO2024-11-09
|
* Implement staticdata for trainsY. Wang2024-11-09
| | | | | | | | | | | | | | | | | | | This patch exposes train.staticdata that can be used by other modders to save data in trains across restarts. It additionally exposes two new APIs for modders where this is relevant: * advtrains.te_register_on_couple(function(init_train, stat_train)): registers a callback for train coupling, where stat_train is couple into init_train and is subsequently removed. This callback is run before the actual coupling takes place; in particular, it is run before stat_train is removed. * advtrains.te_register_on_decouple(function(train, newtrain, index)): registers a callback for train decoupling, where newtrain is created by splitting the train at the given index (the wagon at the index is part of the new train). This callback is run after decoupling takes place. advtrains.te_register_on_decouple(function
* Address wagon aliasing issuesY. Wang2024-11-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As it turns out, not fully testing new features is not necessarily a good idea ... This patch follows up 1F616EMO's patch by * Making get_wagon_prototype return the resolved alias, * Handling recursive wagon alises (in particular, loops), and * Adding (partial) unittest for the wagon aliasing system. [v2]: The testcases are complemented a bit more to cover situations where the alias resolution system should return nil. [v2]: This patch should hopefully also warn about not spawning wagons. Note that this only warns about the missing wagon entity and does _not_ actually fix the issue. How to test: * In a world with both advtrains_train_subway and advtrains_train_japan enabled, place a subway wagon, a Japanese engine, and a regular Japanese wagon. * Add the test mod to the world; do NOT remove advtrains_train_japan. * Restart the world. Notice that the Japanese wagons still appear as Japanese wagons despite being aliased to subway wagons. * Restart the world without the advtrains_train_japan mod. Notice that the engine appears as the subway wagon while the regular Japanese wagon appears as the wagon placeholder. [v2]: Also note that the warning message about the missing wagon prototype still mentions the regular Japanese wagon. * Restart the world again with the advtrains_train_japan mod. Notice that both type of Japanese wagons reappear as Japanese wagons. * Observe that unittests work. Test mod: advtrains.register_wagon_alias("advtrains:engine_japan", "advtrains:subway_wagon") advtrains.register_wagon_alias("advtrains:wagon_japan", "advtrains:wagon_japan")
* Fix crashing when train hitting objects without armor group1F616EMO2024-11-09
|
* Allow operate on_rightclick nodes with track placers and wagon placers1F616EMO2024-11-09
| | | | Press sneak to force default behavior.
* Update influence point markers, and allow right-clicking them1F616EMO2024-11-09
|
* Allow manually sorting of signal soutes1F616EMO2024-11-09
| | | | This patch adds two buttons to the signal UI for swapping routes in the list of routes. To prevent conflicts, this operation is only possible when there is no route set.
* Wagon iterator, lookup by id, and use them in code1F616EMO2024-11-09
|
* Merge remote-tracking branch 'origin/l10n'orwell2024-11-09
|\
| * Messages french translation updateTanavit2024-11-05
| | | | | | | | | | # Messages french translation update. # To be applied to commit eb0c5b78627505bcba409dc5f52dbb05891954c5 on l10n branch
| * Various translation improvementsY. Wang2024-11-04
| |
| * Autogenerate .tr files from .po filesY. Wang2024-11-04
| |
| * Rework translation system to use PO filesywang2024-11-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The French translations are provided by Tanavit. Unfortunately I was not able to keep this addition as a separate commit as the translation file was originally added as a .tr file that I then converted to .po file in the meantime. Also note that this commit is created from squashing 20+ commits from the l10n branch that preceded the transition to PO files. In addition to changes to the locale files (which were all included in the single commit for transitioning to PO files), these commits also included code that has now become obsolete for l10n work. In particular, it included a GUI program written in Tcl to edit .tr files; this program can now be found in the following repo: https://codeberg.org/y5nw/mt_tr_editor Co-authored-by: Tanavit <tanavit@posto.ovh>
* | Update LuaATC documentationY. Wang2024-11-09
|/ | | | | * Fix broken link to RWT API documentation. * w_speed is no longer relevant since the 2021 new-ks update.
* Avoid unnecessarily updating the driver HUDY. Wang2024-09-13
| | | | | This patch avoids sending the driver HUD if it contains the same text that was previously sent.
* Alias for wagon typesrelease-2.4.61F616EMO2024-09-03
|
* Add direct recipe for every orientation of wallmounted signals1F616EMO2024-09-02
|
* Clear tcbs.route_rsn when a route is setY. Wang2024-09-02
| | | | | | | | | | | | | | | | | This appears to fix the issue where route_rsn is not cleared and later shown on the train HUD even when the route is set. Note that this only works if the route is (successfully) set after this patch is applied - it does not clear route_rsn for routes that are already set. How to test: * Set a conflicting route for the train. * Set a route for the train. Note that a message appears on the train HUD explaining that the route cannot be set (this is also the current behavior without the patch). * Cancel the conflicting route. Note that the message on the train HUD is cleared.
* Fix Ks Shunting Signal collision box1F616EMO2024-09-02
|
* LuaATC add trainparts(train_id)Maverick27972024-09-02
| | | | | Returns a copy of the trainparts table to allow tracking individual wagon ids Also fixed a couple of file permissions from previous commits
* LuaATC set_fc(): add argument to reset fc index to 1Maverick27972024-09-02
|
* Fix LuaATC set_fc() only working on loaded entitesMaverick27972024-09-02
|
* Move the Train ID information to a textarea[] without a name attribute so it ↵erstazi2024-09-02
| | | | remains transparent and the player can copy the Train ID.
* Fix privilege check when using the PC naming toolrelease-2.4.5gpcf2024-08-11
| | | | | This fix prevents malicious modified clients from using the PC tool without the necessary privileges.
* Add Wagon Properties ToolMaverick27972024-08-09
| | | | Also added the Wagon ID to the Wagon Properties formspec
* Fix boardcom train id display, add command to teleport to train by idgpcf2024-08-08
|
* Adding Train ID to Onboard Computer formspec so we know what the Train ID is ↵erstazi2024-08-08
| | | | without LuaATC
* Fix minetest server test rungpcf2024-08-08
|
* Fix incorrect speed indicator; include routing info in text HUDY. Wang2024-08-08
|
* Rework graphical train HUD codeY. Wang2024-08-08
| | | | | | | | | | | | | | | - A basic texture manipulation API is added; currently this is only a (selected) subset of texture modifiers provided by MT; the goal is to avoid writing (potentially incorrect) texture strings by hand; - The graphical HUD code is cleaned up; in particular, most code used for generating texture patterns are moved to texture.lua so that the code can be used outside of the HUD; - Inactive elements are given the darkslategray background. A basic unittest is added; however, it needs to be expanded for better coverage. Reported-by: Lars Müller <appgurulars@gmx.de>
* Remove superfluous train_id check from reverse_lookuprelease-2.4.4orwell2024-08-01
| | | | Reported by Sebastien F4GRX, thank you!
* Fix set_aspect()Maverick27972024-08-01
| | | | Actually send aspect to advtrains.interlocking.signal_set_aspect() from LuaATC set_aspect()
* Fix section_occupancy: Return empty tableBlockhead2024-08-01
| | | | | | | | | | Fixes the functioning of the LuaATC function section_occupancy in the presence of no trains. Currently, if there is no train in the section, advtrains.interlocking.db.get_ts will return a table with a nil entry. When that nil value is passed to table.copy, Minetest throws out an error. Instead of passing nil to table.copy, just make a new empty table.
* Fix crossing bell positional stereo1F616EMO2024-08-01
|
* Remove TCB marker on TCB removal1F616EMO2024-08-01
| | | | | | | This patch fixes the following problem: * TCB marker is not removed on TCB removal * TCB marker is recreated on removal
* Fix for broken get_trains_at, fixing LuaATC/Lines Scheduler executionorwell2024-05-06
|
* Fix use_texture_alpha for tracksY. Wang2024-02-25
| | | | | | | | | | | | | | | | The use of textures with transparent pixels (for the default tracks: the "features" on the track) without specifying use_texture_alpha (at least for the mesh drawtype) has been deprecated in a PR from August 2020[1] (i.e. since 5.4.0[2]) and removed in the latest dev version[3]. As a consequence, regular tracks are now rendered with black markers at the same position where e.g. the blue (Lua)ATC marker would be found. This commit fixes the issue by enabling use_texture_alpha by default for all tracks. [1] https://github.com/minetest/minetest/pull/10122 [2] https://dev.minetest.net/Changelog#5.3.0_.E2.86.92_5.4.0 [3] https://github.com/minetest/minetest/pull/13929
* Add register_function command so mods can register their own functons, ↵gpcf2024-02-06
| | | | low-level interface for departure boards
* Add chatcommand and luaatc function to get global_slowdownorwell2024-02-06
|
* Set maximum train length and prevent coupling if it would exceedorwell2023-12-20
|
* advtrains_techage: Liquid infotext display needs to be added in corerelease-2.4.3orwell962023-07-20
|
* Fix path_invalidate_ahead after recent commitorwell962023-07-01
|
* Turn loading tracks into loading ramps when within the loaded areaMaverick27972023-06-24
| | | | | | | - Partially addresses Hemiptera #165 / Notabug #6 - Will recalculate wagon textures when the inventory is modified - Only acts as a loading ramp when in a loaded area. - Retains previous flood loading of entire train when area unloaded
* Occupation system: store multiple indices for the same train, introduce ↵orwell962023-06-24
| | | | reverse_lookup_sel() to select appropriate index out of multiple based on a heuristic
* Add function to get wagon in train from indexorwell962023-05-27
| | | | | Can be used to determine which wagon is at a certain world position Testing: use debugitems.lua
* Add craft recipes for the new ks speed indicatorsMaverick27972023-04-12
|
* Make selection boxes of track nodes largerBlockhead2023-04-12
| | | | | | | This reduces the difficulty of having to point at the centre of the correct track node, and hopefully does not prevent placing tracks in more than a couple of cases. Three-way turnouts on an angle may be an exception but they may be worth it. User feedback is needed.
* Report coordinates of wagons with unregistered prototypesY. Wang2023-04-12
| | | | Related issue: https://forum.minetest.net/viewtopic.php?p=414307#p414307
* Add get_fc() and set_fc() commandsMaverick27972023-03-17
| | | | | get_fc: returns a table of each wagon's FC codes set_fc: set a table to overwrite the FC codes of a train's wagons
* small security fixes in advtrains_luaautomation/Maverick27972023-03-17
| | | | | | | - fixed file permissions of advtrains_luaautomation/README.md (755->644) - fixed file permissions of advtrains_luaautomation/environment.lua (755->644) - prevented LuaATC section_occupancy() from having direct access to the interlocking section id occupancy table - simplify section_occupancy() logic