Commit Graph

195 Commits (wip-string)

Author SHA1 Message Date
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
7 months ago
Jonathan G Rennison c929f7075e Merge branch 'master' into jgrpp
# Conflicts:
#	cmake/SourceList.cmake
#	src/build_vehicle_gui.cpp
#	src/company_gui.cpp
#	src/console_cmds.cpp
#	src/depot_base.h
#	src/elrail.cpp
#	src/network/core/udp.cpp
#	src/network/network_admin.cpp
#	src/network/network_chat_gui.cpp
#	src/network/network_gui.cpp
#	src/network/network_server.cpp
#	src/newgrf.cpp
#	src/newgrf_engine.cpp
#	src/newgrf_railtype.cpp
#	src/newgrf_railtype.h
#	src/newgrf_storage.h
#	src/os/unix/crashlog_unix.cpp
#	src/rail.h
#	src/rail_cmd.cpp
#	src/rail_gui.cpp
#	src/road_cmd.cpp
#	src/road_map.h
#	src/saveload/labelmaps_sl.cpp
#	src/settings_gui.cpp
#	src/settings_type.h
#	src/sl/oldloader_sl.cpp
#	src/station_cmd.cpp
#	src/station_gui.cpp
#	src/table/settings/world_settings.ini
#	src/tests/test_script_admin.cpp
#	src/textfile_gui.cpp
#	src/toolbar_gui.cpp
#	src/train_cmd.cpp
#	src/tunnelbridge_cmd.cpp
#	src/vehicle_gui.cpp
#	src/widget.cpp
#	src/window.cpp
#	src/window_gui.h
#	src/window_type.h
7 months ago
Jonathan G Rennison 1183476182 Allow custom signal styles to disable aspect-limited mode
By setting style_lookahead_extra_aspects to 255
11 months ago
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
11 months ago
Jonathan G Rennison 09e03fb6b2 Change TunnelBridgeIsFree across_only to a mode enum type 1 year ago
Jonathan G Rennison 9521e7ef2b Merge branch 'master' into jgrpp
# Conflicts:
#	src/elrail.cpp
#	src/ground_vehicle.hpp
#	src/landscape.cpp
#	src/saveload/afterload.cpp
#	src/saveload/saveload.h
#	src/tile_cmd.h
#	src/town_cmd.cpp
#	src/tunnelbridge_cmd.cpp
1 year ago
Jonathan G Rennison 4ec6a99dd8 Add GetTileTrackStatus wrapper for when red signals part is not needed 1 year ago
Jonathan G Rennison 3e7a625e0e Fix function locals shadowing parameters 1 year ago
Jonathan G Rennison 07b7cc5652 Tracerestrict: Add condition whether reservation passes through tile 1 year ago
Tyler Trahan c19abebf8d
Feature: Multi-track level crossings (#9931) 2 years ago
Jonathan G Rennison bd28d5a239 Use order state at reservation time for signal mode tracerestrict eval 2 years ago
Jonathan G Rennison 6a69a5495f Add tracerestrict action to set combined normal/shunt signal mode
Add associated conditional to get reservation end tile
2 years ago
Jonathan G Rennison 78ae295dfe Add combined normal and shunt aspect signal style flag 2 years ago
Jonathan G Rennison 2f7664fc93 Move signal style mask variables into a single struct 2 years ago
Jonathan G Rennison a311f12615 Add signals_style_lookahead_single_signal_only signal style property 2 years ago
Jonathan G Rennison 24e965061c Fix limit train lookahead to signal aspect when starting
From depot and within signal sighting distance (e.g. reverse)
2 years ago
Jonathan G Rennison 3a064f127b Fix SetTrainReservationLookaheadEnd moving end nearer 2 years ago
Jonathan G Rennison b6e099121a Fix limit train lookahead to signal aspect within signalled tunnel/bridges 2 years ago
Jonathan G Rennison 175c5d4d50 Add signal style flag to limit lookahead extra aspect 2 years ago
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
2 years ago
Jonathan G Rennison bdd73a19a1 Add signal style flag for unconditional reserve through
Add map bits for unconditional reserve through
Adjust signal aspect/state handling
2 years ago
Jonathan G Rennison 02dabad81e Tracerestrict: Add flag for whether reserve through is always set 2 years ago
Jonathan G Rennison 99ee4b13ce Realistic braking: Cache train overall z position
Refresh cache at a variable rate depending on train length and
weight distribution
2 years ago
Jonathan G Rennison 502980ba61 Support railtype-dependant GRF train speed limits with realistic braking
See: #389
2 years ago
Jonathan G Rennison 551560537f Ensure that adjacent level crossings cannot leave map if there are no void tiles 3 years ago
Jonathan G Rennison 74bfe4e6d2 Allow placing routing restrictions on tunnel/bridge entrance/exit signals
No reserve through support
3 years ago
Jonathan G Rennison 48977853a4 Simplify some rail/signalled tunnel/bridge tile checks 3 years ago
Jonathan G Rennison dad007e16a Fix spelling of TRPRF_SPEED_RESTRICTION_SET 3 years ago
Jonathan G Rennison 3308edf792 Try to extend reservation when passing sighting distance of non-end signal 3 years ago
Jonathan G Rennison 5d351a14d2 Add new signal type: no-entry signal
This is only passable in one direction, but does not have a signal
or show an aspect in the opposite direction

Add a setting for whether this is shown in the signal UI.
Off by default.
3 years ago
Jonathan G Rennison b2ef6c0de8 Add implementation of multi-aspect signalling and GRF support
Requires realistic braking

See: #247
3 years ago
Jonathan G Rennison 55c4fe7d45 Add helper functions to get tunnel/bridge entrance/exit trackdirs 3 years ago
Jonathan G Rennison 1002c6d9d2 Fix various compiler warnings
See: #267
3 years ago
Jonathan G Rennison ba2e6087b2 Add train cache flag for whether train using realistic braking physics 3 years ago
Jonathan G Rennison b514d29db1 Replace TrainCache::cached_tilt with a flags field 3 years ago
Jonathan G Rennison 8fd4f65a85 Validate lookahead reservation end OK before calling FollowTrainReservation 3 years ago
Jonathan G Rennison 5b5e068e52 Don't check safe waiting point in FollowTrainReservation if result unused 3 years ago
Jonathan G Rennison 5c569b1880 Validate TB exit tile when TRLF_TB_EXIT_FREE set in FollowTrainReservation 3 years ago
Jonathan G Rennison 8646506127 Prevent lookahead init for wrong way movement on signalled tunnel/bridge 3 years ago
Jonathan G Rennison b9413ea250 Remove assert from UpdateSignalsOnSegment that globset is empty
Just do the right thing if it isn't empty instead of asserting
3 years ago
Jonathan G Rennison fb64e29c6c Fix assertion failure when command triggers PBS tunnel/bridge unreserve
In the case where the signal update buffer is not currently empty
3 years ago
Jonathan G Rennison 35d720b0ad Add tracerestrict PBS end signal conditional
This is for realistic braking long reserve
3 years ago
Jonathan G Rennison 03f95322ae Fix CheckCurveLookAhead applying curves just beyond the train length
Fix vehicle spacing logic
3 years ago
Jonathan G Rennison b7ddd486cf Merge branch 'master' into jgrpp
# Conflicts:
#	cmake/CompileFlags.cmake
#	src/aircraft_cmd.cpp
#	src/blitter/32bpp_anim.cpp
#	src/cargopacket.cpp
#	src/cheat_gui.cpp
#	src/company_cmd.cpp
#	src/company_gui.cpp
#	src/core/pool_func.hpp
#	src/date.cpp
#	src/economy.cpp
#	src/error_gui.cpp
#	src/ground_vehicle.cpp
#	src/ground_vehicle.hpp
#	src/group_gui.cpp
#	src/industry_cmd.cpp
#	src/lang/dutch.txt
#	src/lang/french.txt
#	src/lang/german.txt
#	src/linkgraph/linkgraph_gui.cpp
#	src/linkgraph/mcf.cpp
#	src/network/network_content.cpp
#	src/network/network_server.cpp
#	src/network/network_udp.cpp
#	src/newgrf_engine.cpp
#	src/newgrf_station.cpp
#	src/order_cmd.cpp
#	src/order_gui.cpp
#	src/pathfinder/follow_track.hpp
#	src/pathfinder/yapf/yapf_common.hpp
#	src/saveload/saveload.cpp
#	src/settings_gui.cpp
#	src/station_cmd.cpp
#	src/station_kdtree.h
#	src/string_func.h
#	src/table/settings.ini
#	src/tgp.cpp
#	src/timetable_cmd.cpp
#	src/timetable_gui.cpp
#	src/toolbar_gui.cpp
#	src/town_cmd.cpp
#	src/train_cmd.cpp
#	src/train_gui.cpp
#	src/tree_gui.cpp
#	src/tunnelbridge_cmd.cpp
#	src/vehicle.cpp
#	src/vehicle_gui.cpp
#	src/video/sdl2_v.cpp
#	src/video/sdl_v.cpp
#	src/video/win32_v.cpp
#	src/viewport.cpp
#	src/viewport_sprite_sorter_sse4.cpp
#	src/window.cpp
3 years ago
Jonathan G Rennison 43b0ddc558 Use tile railtype for curve speed look ahead
See: 0f91cb04
3 years ago
Jonathan G Rennison b711f94d1c Fix FollowTrainReservation following outwards from end depot 3 years ago
Jonathan G Rennison ed0ffb6220 Add feature: realistic train braking
Add setting to select train braking model.
3 years ago
Jonathan G Rennison 65d5d13a08 Avoid unnecessary viewport redrawing when (un)reserving signalled bridges 4 years ago
Jonathan G Rennison 92ca965ef7 Fix PBS rail type handling with incorrect GRF rail type compatibility 4 years ago
Jonathan G Rennison 352b361e1b Viewport: Replace viewport mark dirty if zoom level below with flags param
Fix missing flags for tracerestrict and effect vehicles
4 years ago