equal
deleted
inserted
replaced
157 if (IsRailwayStationTile(tile) && IsAnyStationTileReserved(tile, trackdir, skipped)) { |
157 if (IsRailwayStationTile(tile) && IsAnyStationTileReserved(tile, trackdir, skipped)) { |
158 return Yapf().PfGetSettings().rail_pbs_station_penalty * (skipped + 1); |
158 return Yapf().PfGetSettings().rail_pbs_station_penalty * (skipped + 1); |
159 } else if (TrackOverlapsTracks(GetReservedTrackbits(tile), TrackdirToTrack(trackdir))) { |
159 } else if (TrackOverlapsTracks(GetReservedTrackbits(tile), TrackdirToTrack(trackdir))) { |
160 int cost = Yapf().PfGetSettings().rail_pbs_cross_penalty; |
160 int cost = Yapf().PfGetSettings().rail_pbs_cross_penalty; |
161 if (!IsDiagonalTrackdir(trackdir)) cost = (cost * YAPF_TILE_CORNER_LENGTH) / YAPF_TILE_LENGTH; |
161 if (!IsDiagonalTrackdir(trackdir)) cost = (cost * YAPF_TILE_CORNER_LENGTH) / YAPF_TILE_LENGTH; |
162 return cost; |
162 return cost * (skipped + 1); |
163 } |
163 } |
164 return 0; |
164 return 0; |
165 } |
165 } |
166 |
166 |
167 int SignalCost(Node& n, TileIndex tile, Trackdir trackdir) |
167 int SignalCost(Node& n, TileIndex tile, Trackdir trackdir) |