Commit Graph

807 Commits (be2f37a0678c66278d1c491b8f1250a8a3be9feb)

Author SHA1 Message Date
Blockhead f43254c282 Add road numbers to wagon properties, bordcom
A road number is used to allow users to set their own wagon numbers
other than the internal IDs assigned by advtrains. A railway company
would typically keep a roster of what rollingstock it has in road
numbers.

The road number can be set on the wagon properties formspec. It is
displayed above the wagon's inventory icon in the onboard computer as a
button, which will then open the wagon properties on that wagon.

Road numbers might be displayable as additional text entities on the
wagon like signs.

Currently opening the wagon properties (and sometimes onboard computer)
formspecs can be quite unreliable (at least on windows), so I hope that
closing the wagon 'main menu' before opening other formspecs helps that
reliability. It seems to be an upstream bug.
2020-04-07 14:16:47 +10:00
Blockhead d0629469aa Show the wagon properties button only to the owner 2020-03-18 01:13:06 +11:00
Blockhead 2da11c5a49 Use a standard wagon inventory formspec
This new formspec also allows access to the wagon properties. Once
whitelisted in the wagon properties, other players can access its
inventory.

Note on 'useless use' of OO: I tried passing just the wagon ID and
avoiding using the `self` object in order to bypass the need to look up
the lua entitie out of the list, but it ended up retrieving nil data.
The best way to solve this overhead might be to wait for some kind of
better way upstream in minetest's lua API to get entities, or to keep a
central record of entities. Either way, the solution is outside the
scope of this commit.
2020-03-18 00:35:30 +11:00
Gabriel Pérez-Cerezo fb837a449a Merge branch 'diagonal_platforms' of https://github.com/Montandalar/advtrains 2020-03-15 12:04:10 +01:00
Blockhead 301dcf953e Reduce the profile of the platforms by 0.1
Currently some trains clip the platform (especially E231
modpack), but they won't after the platform edge is moved
back slightly.
2020-03-15 21:56:42 +11:00
Blockhead 09fda4ffaa Add 45 degree diagonal platforms with a mesh 2020-03-15 21:51:38 +11:00
orwell96 372cd7eb80 Get rid of the "Subway Train" item (was an ugly hack anyways, and is obsolete now) 2020-03-08 18:50:04 +01:00
Blockhead 3b87ac5372 Delete train if it ends up off track, show a warning 2020-03-03 23:00:20 +11:00
Blockhead 0689c70aac Save clipboard on item metadata
Also a minor user feedback text cleanup
2020-03-03 23:00:20 +11:00
Blockhead 8a08d77166 Remove debugging print statements 2020-03-03 23:00:20 +11:00
Blockhead 378d862572 Draft copy tool
The copy tool copies a train to a global clipboard.  It copies
the Line number, Routing code, inside text and outside text.
It copies the kinds of wagons in the train and whether they
are flipped around.

Pasting with the copy tool will conditionally flip the train
such that 'your front' of the train, rather than the absolute
front of the train, is what is output. The new train is
oriented to travel forward with the placing player's view.

Conditons are:
- Multi-unit/push-pull train (= has locomotives on both ends):
  Never flipped
- Locomotive-hauled train (= has one end with a locomotive):
  Flipped so that the locomotive is always at the front. If the
  locomotive points long hood forward, it will still point long
  hood forward.
- Rake of wagons (= has no locomotives on ends):
  Flipped according to which end of the train the player copies
  from. If the player is towards the back (wagon out of train
  divded by total wagons > 0.5), then the back becomes the new
  front. If the player is towards the front, no change.
2020-03-03 23:00:20 +11:00
orwell96 9d7b21c451 Relicense under AGPLv3 and update information in readme.txt 2020-02-15 22:19:22 +01:00
orwell96 1bb1d825f4 Use minetest.safe_file_write() to atomically save state [Breaks MT4 compat] 2020-01-10 14:08:56 +01:00
orwell96 dbaafeda3e Merge branch 'mt5-fixes' 2020-01-04 18:37:52 +01:00
Blockhead c0c6fcf00b Apply minetest.formspec_escape() to prevent formspec injection (H#143) 2020-01-04 18:33:57 +01:00
orwell96 b905a8bf6d Remove fullbright (H#140) 2019-12-18 10:08:03 +01:00
orwell96 50a81dd1f3 Fix RWT initialization when creating new world (H#142) 2019-12-18 10:01:47 +01:00
orwell96 d123679b3c Do not set infotext on Ks signal aspect change
Possible migitation for Linuxworks RAM explosion
2019-12-14 22:26:04 +01:00
orwell96 a8ae0a5332 Simplify and optimize path_get_index_by_offset (cherrypicked) 2019-12-09 11:00:21 +01:00
orwell96 02025f53aa Move attachment positions down 1 node 2019-12-05 10:15:54 +01:00
Gabriel Pérez-Cerezo 9c1d356505 Add inverse ARS rules
!RC foo
!LN bar

will match all trains except those matching RC foo or LN bar. This can
be useful to exclude one specific service from a component.
2019-12-05 00:08:43 +01:00
orwell96 8d794525b3 Fix repeated log file opening/closing (H#136) 2019-12-04 10:09:19 +01:00
orwell96 e0662b2971 use group:wood in bumper recipe (H#120) 2019-12-04 10:09:19 +01:00
Gabriel Pérez-Cerezo 3db3f24857 Tentative fix for #31
This might fix #31 by clearing the HUD entry for the player when
joining
2019-12-03 21:35:42 +01:00
Gabriel Pérez-Cerezo 25a335203f Allow painting coupled wagons 2019-12-01 12:25:06 +01:00
Gabriel Pérez-Cerezo 0518fbbf3a Merge branch 'master' of https://git.bananach.space/advtrains 2019-12-01 12:09:04 +01:00
Gabriel Pérez-Cerezo b71c72b4ab Add experimental liveries feature
Please do not use this in your train mods yet, this may be subject to
changes!
2019-12-01 12:08:28 +01:00
ywang 2157a7ef36 Simplify formula for brake distance calculation 2019-11-27 10:37:25 +01:00
ywang 35a6f14561 Fix steam engine sound playing forever (H#121) 2019-11-27 10:23:05 +01:00
orwell96 7082038f75 Don't spawn couple entities when not loaded 2019-11-26 16:43:47 +01:00
orwell96 cf2179dea5 remove obsolete code/comments 2019-11-26 16:01:51 +01:00
orwell96 4ff8e05755 Fix trains not stopping when colliding with environment H#122 2019-11-26 15:49:36 +01:00
Gabriel Pérez-Cerezo ca4d65050c Add wagon_width attribute
This allows for wider vehicles than trains, such as boats to discharge
the passengers onto the platforms.
2019-11-22 20:29:57 +01:00
orwell96 0252768c16 Fix the "red signals" bug that appeared when clicking a green signal 2019-11-21 16:09:47 +01:00
orwell96 576365627a Fix scheduler crash (H#133)
for loops don't work with manipulating i
2019-11-21 16:02:32 +01:00
orwell96 8c55442076 Add "discard all" function to scheduler events and use it to clear schedules in luaatc rails 2019-11-06 22:07:10 +01:00
orwell96 43b4d863ec lines: fix very dumb typo breaking the "add" and "diff" function 2019-11-06 22:06:46 +01:00
orwell96 7f4f8c606d lines: Add rwt adapt mode to adapt to real time 2019-11-06 21:22:33 +01:00
orwell96 a3c468058a lines: document scheduler better 2019-11-06 21:22:18 +01:00
orwell96 a4efdc196c atlatc: fix operation panel not in ndb, add warning when node is not found on queue run 2019-11-06 21:20:26 +01:00
Gabriel Pérez-Cerezo 74f7233d21 Merge branch 'master' of https://git.bananach.space/advtrains 2019-10-21 16:39:54 +02:00
Gabriel Pérez-Cerezo 7977776b4a Changes for linetrack
Allows defining a suitable substrate for tracks, and liquid pointable tracks
2019-10-21 16:36:35 +02:00
orwell96 27f85f2e22 Secure inputs to scheduler so that they don't get recognised when executing the schedule 2019-08-29 22:30:43 +02:00
orwell96 986c8fcf92 Do not throw error when sync_tcb_neighbors fails 2019-08-29 21:11:27 +02:00
orwell96 7b488f40d9 Add lines scheduler for reliable railway-time scheduling(which is also safer than the atlatc scheduler) and document new atlatc functions 2019-08-26 23:08:02 +02:00
orwell96 d867cd723f Don't allow to remove TCB when a signal is assigned 2019-08-26 20:46:08 +02:00
Gabriel Pérez-Cerezo 2d8c13885a Shunting mode now couples trains on collision.
Trains now get coupled when one of them is in coupling mode.
2019-08-11 20:16:11 +02:00
Gabriel Pérez-Cerezo ef50610f67 Document luaatc decoupling 2019-08-11 17:47:39 +02:00
Gabriel Pérez-Cerezo 1f6038c75a Add decoupling to luaatc 2019-08-11 17:42:30 +02:00
Gabriel Pérez-Cerezo d074d3223a Change API to return the id of a newly created train when discoupling 2019-08-09 19:11:26 +02:00