|
|
|
@ -719,10 +719,10 @@ static void NPFFollowTrack(AyStar* aystar, OpenListNode* current)
|
|
|
|
|
Trackdir dst_trackdir = RemoveFirstTrackdir(&trackdirbits);
|
|
|
|
|
DEBUG(npf, 5, "Expanded into trackdir: %d, remaining trackdirs: 0x%X", dst_trackdir, trackdirbits);
|
|
|
|
|
|
|
|
|
|
/* Check for oneway signal against us */
|
|
|
|
|
/* Tile with signals? */
|
|
|
|
|
if (IsTileType(dst_tile, MP_RAILWAY) && GetRailTileType(dst_tile) == RAIL_TILE_SIGNALS) {
|
|
|
|
|
if (HasSignalOnTrackdir(dst_tile, ReverseTrackdir(dst_trackdir)) && !HasSignalOnTrackdir(dst_tile, dst_trackdir))
|
|
|
|
|
/* if one way signal not pointing towards us, stop going in this direction. */
|
|
|
|
|
if (HasSignalOnTrackdir(dst_tile, ReverseTrackdir(dst_trackdir)) && !HasSignalOnTrackdir(dst_tile, dst_trackdir) && IsOnewaySignal(dst_tile, TrackdirToTrack(dst_trackdir)))
|
|
|
|
|
/* If there's a one-way signal not pointing towards us, stop going in this direction. */
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|