Commit Graph

54 Commits

Author SHA1 Message Date
Jonathan G Rennison
b01fd1607a Re-order various structs to reduce holes/padding 2024-01-24 23:17:53 +00:00
Jonathan G Rennison
7d1e350b94 Tracerestrict: Handle slot acquire on tunnel/bridge entrance reserve
When using realistic braking
Using the same context as PBS end acquire/release
2024-01-20 22:20:51 +00:00
Jonathan G Rennison
9e8a43144a Tracerestrict: Handle slot acquire and wait at PBS on intermediary reservation signals
Wait at PBS is applied as if on the starting signal
2024-01-20 20:42:13 +00:00
Jonathan G Rennison
97e6f3062e Adding of _t to (u)int types, and WChar to char32_t
See: eaae0bb5e
2024-01-07 17:20:41 +00:00
Jonathan G Rennison
55d78a23be Merge branch 'master' into jgrpp
# Conflicts:
#	src/3rdparty/squirrel/include/squirrel.h
#	src/blitter/32bpp_sse_func.hpp
#	src/bridge_map.h
#	src/clear_map.h
#	src/company_manager_face.h
#	src/console_func.h
#	src/core/bitmath_func.hpp
#	src/core/endian_func.hpp
#	src/core/random_func.hpp
#	src/depot_map.h
#	src/elrail_func.h
#	src/fontcache.h
#	src/industry_map.h
#	src/map_func.h
#	src/newgrf_spritegroup.h
#	src/object_map.h
#	src/rail.h
#	src/rail_map.h
#	src/road_func.h
#	src/road_map.h
#	src/saveload/saveload.h
#	src/saveload/saveload_error.hpp
#	src/settings_gui.cpp
#	src/sl/oldloader.h
#	src/sprite.h
#	src/spritecache.h
#	src/station_func.h
#	src/station_map.h
#	src/story_base.h
#	src/strings_func.h
#	src/tile_cmd.h
#	src/tile_map.h
#	src/tile_type.h
#	src/town.h
#	src/town_map.h
#	src/tree_map.h
#	src/tunnel_map.h
#	src/tunnelbridge_map.h
#	src/vehicle_func.h
#	src/viewport_func.h
#	src/void_map.h
#	src/water.h
#	src/water_map.h
#	src/widget_type.h
2024-01-07 15:00:16 +00:00
Rubidium
3a676a5af0 Codechange: replace static inline with static for non-class functions 2024-01-06 13:37:33 +01:00
Jonathan G Rennison
38df621e62 Improve train speed adaptation with realistic braking
Take into account recorded speeds at signals along the reservation
As noted in the lookahead

See: #613
2023-11-25 00:23:27 +00:00
Jonathan G Rennison
e958bdde9f Use ring buffers for train lookahead items and curves 2023-08-18 21:25:36 +01:00
Jonathan G Rennison
4f875012b6 Do not unnecessarily extend train reservations when passing signal
When the signal is a next-only or non-aspect-incrementing type, and
its maximum lookahead is not beyond the current end of the reservation
2023-07-23 18:39:57 +01:00
Jonathan G Rennison
07b7cc5652 Tracerestrict: Add condition whether reservation passes through tile 2023-02-06 19:54:14 +00:00
Jonathan G Rennison
bd28d5a239 Use order state at reservation time for signal mode tracerestrict eval 2022-07-01 00:33:59 +01:00
Jonathan G Rennison
78ae295dfe Add combined normal and shunt aspect signal style flag 2022-06-27 18:51:26 +01:00
Jonathan G Rennison
a311f12615 Add signals_style_lookahead_single_signal_only signal style property 2022-06-25 01:29:08 +01:00
Jonathan G Rennison
ccef4baea6 Remove header prototypes for non-existent functions 2022-06-22 19:06:06 +01:00
Jonathan G Rennison
22caac6529 Add game setting to limit train lookahead to signal aspect
In realistic braking mode when multi-aspect signalling enabled by GRF
2022-06-19 12:44:15 +01:00
Jonathan G Rennison
99ee4b13ce Realistic braking: Cache train overall z position
Refresh cache at a variable rate depending on train length and
weight distribution
2022-06-03 00:41:41 +01:00
Jonathan G Rennison
74bfe4e6d2 Allow placing routing restrictions on tunnel/bridge entrance/exit signals
No reserve through support
2021-11-13 22:28:14 +00:00
Jonathan G Rennison
3308edf792 Try to extend reservation when passing sighting distance of non-end signal 2021-11-12 01:02:29 +00:00
Jonathan G Rennison
8fd4f65a85 Validate lookahead reservation end OK before calling FollowTrainReservation 2021-04-01 00:36:13 +01:00
Jonathan G Rennison
5b5e068e52 Don't check safe waiting point in FollowTrainReservation if result unused 2021-03-31 22:39:44 +01:00
Jonathan G Rennison
ed0ffb6220 Add feature: realistic train braking
Add setting to select train braking model.
2021-01-28 19:03:18 +00:00
Jonathan G Rennison
cbdd9f84d8 Merge branch 'master' into jgrpp
# Conflicts:
#	src/console_gui.cpp
#	src/lang/korean.txt
#	src/video/sdl2_v.cpp
#	src/video/sdl2_v.h
#	src/window.cpp
#	src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee Cleanup: Removed SVN headers 2019-11-10 17:59:20 +00:00
Jonathan G Rennison
674732cd68 Merge: Codechange: Use null pointer literal instead of the NULL macro 2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
Jonathan G Rennison
e9f5d80440 Trace restrict slots: Add support for slot operations at PBS end signal 2018-06-17 21:13:53 +01:00
Jonathan G Rennison
1bb3024534 Fix unreserving through a green PBS signal not setting the state to red.
This also had the side effect of failed reservation attempts through
a reserve-through signal leaving the signal erroneously set to green.
2016-03-01 20:54:03 +00:00
Jonathan G Rennison
06a1d7c5c9 Add reserve through action to trace restrict programs.
This only changes the behaviour of PBS reservations which
would otherwise terminate at a PBS signal.
If the signal restriction sets the reserve through state,
the reservation continues through the signal, and the signal
is set to green.
2015-09-02 02:12:02 +01:00
peter1138
c00a400cc7 (svn r24905) -Feature(ish): Implement station randomisation triggers. 2013-01-11 07:39:25 +00:00
peter1138
1e10e91fde (svn r24905) -Feature(ish): Implement station randomisation triggers. 2013-01-11 07:39:25 +00:00
rubidium
4d5dbf5170 (svn r22410) -Document: some more bits ;) 2011-05-02 16:14:23 +00:00
rubidium
eb2197f4c8 (svn r22410) -Document: some more bits ;) 2011-05-02 16:14:23 +00:00
michi_cc
f7025612e1 (svn r18647) -Fix: [YAPP] A train inside a station was not always found when checking for trains on a reserved path. 2009-12-27 14:37:50 +00:00
michi_cc
3ecd08be01 (svn r18647) -Fix: [YAPP] A train inside a station was not always found when checking for trains on a reserved path. 2009-12-27 14:37:50 +00:00
rubidium
7fbc33dae1 (svn r17248) -Fix: add GPL license notice where appropriate 2009-08-21 20:21:05 +00:00
rubidium
99d46e0ad7 (svn r17248) -Fix: add GPL license notice where appropriate 2009-08-21 20:21:05 +00:00
rubidium
cf38a5bee6 (svn r16939) -Codechange: s/RailwayStation/RailStation/ to unify the way it's written. 2009-07-24 11:47:12 +00:00
rubidium
196856f54e (svn r16939) -Codechange: s/RailwayStation/RailStation/ to unify the way it's written. 2009-07-24 11:47:12 +00:00
rubidium
80e94b9bb1 (svn r16391) -Codechange: use Train instead of Vehicle where appropriate. 2009-05-22 22:22:46 +00:00
rubidium
1324100d69 (svn r16391) -Codechange: use Train instead of Vehicle where appropriate. 2009-05-22 22:22:46 +00:00
rubidium
9474db5cb6 (svn r14258) -Codechange: rework the way to query the vehicle hash to make sure it always results in the same irregardless of the order of the hash-linked-list.
-Fix: desync in PBS reservation following, vehicle flooding and road vehicle overtake/follow code.
2008-09-07 11:23:10 +00:00
rubidium
6e67ea1f9d (svn r14258) -Codechange: rework the way to query the vehicle hash to make sure it always results in the same irregardless of the order of the hash-linked-list.
-Fix: desync in PBS reservation following, vehicle flooding and road vehicle overtake/follow code.
2008-09-07 11:23:10 +00:00
rubidium
ead8de78ea (svn r14186) -Fix [FS#2255]: small typo (Jafinto) 2008-08-29 21:07:26 +00:00
rubidium
7accf0ac97 (svn r14186) -Fix [FS#2255]: small typo (Jafinto) 2008-08-29 21:07:26 +00:00
frosch
983e297ff0 (svn r13974) -Fix [YAPP]: A train crash could lead to stale reservations. (michi_cc) 2008-08-03 14:16:57 +00:00
frosch
ba1b3c7f11 (svn r13974) -Fix [YAPP]: A train crash could lead to stale reservations. (michi_cc) 2008-08-03 14:16:57 +00:00
rubidium
bce6f7b41c (svn r13956) -Add [YAPP]: Function for getting the train holding a reserved path. (michi_cc) 2008-08-02 22:54:53 +00:00
rubidium
bcfc5a78ed (svn r13956) -Add [YAPP]: Function for getting the train holding a reserved path. (michi_cc) 2008-08-02 22:54:53 +00:00
rubidium
abc46b1e86 (svn r13940) -Add [YAPP]: YAPF is now able to reserve the found path. (michi_cc) 2008-08-02 22:50:52 +00:00
rubidium
74b770a96a (svn r13940) -Add [YAPP]: YAPF is now able to reserve the found path. (michi_cc) 2008-08-02 22:50:52 +00:00