Fix 90° turns being wrongly detected across bridges of non-zero length

This prevented reservations
This commit is contained in:
Jonathan G Rennison
2018-07-13 03:01:08 +01:00
parent 77362b829a
commit a7e767d766
2 changed files with 4 additions and 4 deletions

View File

@@ -412,7 +412,7 @@ bool IsSafeWaitingPosition(const Train *v, TileIndex tile, Trackdir trackdir, bo
/* Check for reachable tracks. */
ft.m_new_td_bits &= DiagdirReachesTrackdirs(ft.m_exitdir);
if (forbid_90deg) ft.m_new_td_bits &= ~TrackdirCrossesTrackdirs(trackdir);
if (forbid_90deg && ft.m_tiles_skipped == 0) ft.m_new_td_bits &= ~TrackdirCrossesTrackdirs(trackdir);
if (ft.m_new_td_bits == TRACKDIR_BIT_NONE) return include_line_end;
if (ft.m_new_td_bits != TRACKDIR_BIT_NONE && KillFirstBit(ft.m_new_td_bits) == TRACKDIR_BIT_NONE) {