(svn r19896) -Fix [FS#3803] (r18648): [YAPP] Inform the pathfinder as well about the fact that the backside of an one-way path signal can be a safe waiting point.

This commit is contained in:
michi_cc 2010-05-26 05:24:58 +00:00
parent 3e7fc229ab
commit f3b56340c2
1 changed files with 6 additions and 3 deletions

View File

@ -507,9 +507,12 @@ no_entry_cost: // jump here at the beginning if the node has no parent (it is th
/* Gather the next tile/trackdir/tile_type/rail_type. */
TILE next(tf_local.m_new_tile, (Trackdir)FindFirstBit2x64(tf_local.m_new_td_bits));
if (TrackFollower::DoTrackMasking() && HasPbsSignalOnTrackdir(next.tile, next.td)) {
/* Possible safe tile. */
end_segment_reason |= ESRB_SAFE_TILE;
if (TrackFollower::DoTrackMasking() && IsTileType(next.tile, MP_RAILWAY)) {
if ((HasSignalOnTrackdir(next.tile, next.td) && IsPbsSignal(GetSignalType(next.tile, TrackdirToTrack(next.td)))) ||
(HasSignalOnTrackdir(next.tile, ReverseTrackdir(next.td)) && GetSignalType(next.tile, TrackdirToTrack(next.td)) == SIGTYPE_PBS_ONEWAY)) {
/* Possible safe tile. */
end_segment_reason |= ESRB_SAFE_TILE;
}
}
/* Check the next tile for the rail type. */