Fix limit train lookahead to signal aspect within signalled tunnel/bridges
This commit is contained in:
@@ -999,6 +999,7 @@ void SetTrainReservationLookaheadEnd(Train *v)
|
||||
int32 threshold = v->lookahead->current_position + 24;
|
||||
uint8 known_signals_ahead = 1;
|
||||
for (const TrainReservationLookAheadItem &item : v->lookahead->items) {
|
||||
if (item.end >= v->lookahead->reservation_end_position) break;
|
||||
if (item.type == TRLIT_SIGNAL) {
|
||||
if (item.start <= threshold) {
|
||||
/* Signal is within visual range */
|
||||
|
@@ -4083,6 +4083,7 @@ static TileIndex CheckLongReservePbsTunnelBridgeOnTrackdir(Train* v, TileIndex t
|
||||
} else {
|
||||
raw_free_tiles = GetAvailableFreeTilesInSignalledTunnelBridgeWithStartOffset(tile, end, v->lookahead->tunnel_bridge_reserved_tiles + 1);
|
||||
ApplyAvailableFreeTunnelBridgeTiles(v->lookahead.get(), raw_free_tiles, tile, end);
|
||||
SetTrainReservationLookaheadEnd(v);
|
||||
}
|
||||
} else {
|
||||
raw_free_tiles = GetAvailableFreeTilesInSignalledTunnelBridge(tile, end, tile);
|
||||
|
Reference in New Issue
Block a user