# HG changeset patch # User hackykid # Date 1120490706 0 # Node ID e5981b3362083610302438e43f571f3a10402f0f # Parent c9d6585c96c8c9b7d69ce62dd8a6f4e7d71c45fb (svn r2517) - Fix: [pbs] Detect end-of-lines properly regarding depots. diff -r c9d6585c96c8 -r e5981b336208 npf.c --- a/npf.c Mon Jul 04 14:58:55 2005 +0000 +++ b/npf.c Mon Jul 04 15:25:06 2005 +0000 @@ -37,8 +37,8 @@ return false; // depot - if (IsTileDepotType(tile, TRANSPORT_RAIL)) - return false; + if (IsTileDepotType(tile, TRANSPORT_RAIL) && (exitdir != GetDepotDirection(tile, TRANSPORT_RAIL))) + return true; /* Calculate next tile */ dst_tile = tile + TileOffsByDir(exitdir); @@ -51,14 +51,14 @@ { byte src_type = GetTileRailType(tile, trackdir); - byte dst_type = GetTileRailType(dst_tile, TrackdirToExitdir(trackdir)); + byte dst_type = GetTileRailType(dst_tile, exitdir); if (src_type != dst_type) { return true; } if (GetTileOwner(tile) != GetTileOwner(dst_tile)) return true; - if (IsTileDepotType(dst_tile, TRANSPORT_RAIL) && (TrackdirToExitdir(trackdir) != ReverseDiagdir(GetDepotDirection(dst_tile, TRANSPORT_RAIL)))) + if (IsTileDepotType(dst_tile, TRANSPORT_RAIL) && (exitdir != ReverseDiagdir(GetDepotDirection(dst_tile, TRANSPORT_RAIL)))) return true; /* Check for oneway signal against us */