25 Commits

Author SHA1 Message Date
orwell96
8ae405f00f Discard get_node_or_nil() for area-loaded check and use either a distance-based approach or minetest.is_block_active() if available
See also https://github.com/minetest/minetest/pull/10897
2021-02-03 09:30:44 +01:00
Gabriel Pérez-Cerezo
dcf5b8670e Remove last files with CR-LF line endings. 2020-10-11 12:36:06 +02:00
Blockhead
487ca4e38c Enable three-way turnouts with proper conns support on all sides
I chose to make three-way turnouts have 5 conns (last one is not used) so
that they can be distinguished from crossings easily without refactoring the
code. Three-ways should have their last entry with {["3"]=0} instead as a sort
of internal mark.
2020-09-11 17:19:23 +10:00
orwell96
b13c725976 Workaround to handle split points (dt. aufgefahrene Weichen), fixing H#77 2020-06-10 20:56:35 +02:00
orwell96
7149137990 Add setting for death behavior and implement damage checks better 2019-03-09 11:29:22 +01:00
orwell96
9da148347d Basic functions of "stop rail", missing ARS rules and signal.
For signal, need to think of a callback system for signals and moving atlatc queue to core?
2019-01-24 17:50:26 +01:00
orwell96
01ffee4d58 Implement new position encoding function and benchmark it
This shall replace all "pos_to_string" hashes in the long term. Performs a bit better than pos_to_string (but still worse than the "nested tables" layout the nodedb uses
(an unmatched open parenthesis leaves a tension that will stay all day... 2 do even more
2018-11-29 17:00:57 +01:00
orwell96
6cdb47edd2 Add routesetting callbacks.
Now, only the signal aspect setting is still missing
2018-08-12 13:23:36 +02:00
orwell96
5992618ee8 Add Track Circuit Breaks (TCBs), Database and Track Circuit Setup
Does not get saved yet.
2018-06-20 20:13:12 +02:00
orwell96
2a76d4a960 Fix final bugs and to-do's (u.a.save/load system) 2018-06-14 17:39:42 +02:00
orwell96
254c32e304 Fix yaw calculations, track placement orientation and speed up direction lookup functions 2018-06-14 17:39:42 +02:00
orwell96
b420a71939 Implement a reverse path lookup for trains instead of an occupations window system 2018-06-14 17:39:42 +02:00
orwell96
caf2bda7bc Fix path_dir to actually be an angle, path item deletion and orientation of wagons
The occupation system as it is now will change. For each position, I will save the index in the train's path,
and implement a callback system. I need this because the occupation window system will not be enough to cover all use cases
(e.g. to make a train stop with it's center or back at a certain position, I need 3 different brake distances, which doesn't fit into the scheme)
2018-06-14 17:39:42 +02:00
orwell96
139a26fccc Bugfixes part 1
There's something wrong with the new paths, next time build a path validity checker to trace the issue
2018-06-14 17:39:42 +02:00
orwell96
064a454117 Adapt wagons to new path system
Still outstanding: trains
2018-06-14 17:39:42 +02:00
orwell96
3420a1a912 Restructure path system
The changes to the path system have not yet been integrated...
2018-06-14 17:39:42 +02:00
orwell96
07442cfe8f Decrease the amount of garbage saved in save files 2018-01-07 19:00:43 +01:00
orwell96
46c4447da0 Rewrite rail connection system...
...to support an arbitrary number of connections for rails, which leads to these new features:
- switches now get recognized by the trackworker correctly
- ability to add real rail crosses
During this, I also rewrote the rail registering system and the conway function (important part of path prediction)
Note, developers: the track preset format changed, you might need to rewrite them according to the presets in tracks.lua if you wrote your own
(possibly breaks advcarts)
2017-12-18 23:09:23 +01:00
orwell96
409e2125c9 Make trackplacer align rails by any tracks, not just by tracks with the same nnpref
This finally fixes the need to rotate atc rails and bumpers.
Also prefers rotation that is closer to the player's look dir (placed bumpers will face the player)
2017-11-22 20:46:36 +01:00
orwell96
1f9a9062e0 Replace many math.floor(x+0.5) calls (or math.floor calls that should be those) by custom atround() function 2017-10-25 10:51:19 +02:00
orwell96
6ade65b6d6 Merge remote-tracking branch 'lemon-melon-repo/master' 2017-10-11 12:32:23 +02:00
rubenwardy
d65c4916ce Remove zip release files, move mod to root, exclude assets from Makefile (#92) 2017-09-20 18:05:04 +02:00
orwell96
2d0b51b897 Restructure mod directory 2017-01-04 19:10:03 +01:00
orwell96
d08e202346 remove train type concept and calculate train's capabilities based on used wagons 2016-12-22 18:55:10 +01:00
orwell96
f806ed9eee Turning mod into a modpack and separating the trains from the core mod 2016-12-20 14:17:39 +01:00