(svn r12698) -Codechange: skip orders to stations that do not have a train part anymore, just like is done for road vehicles and ships.
This commit is contained in:
@@ -243,7 +243,7 @@ TileIndex Ship::GetOrderStationLocation(StationID station)
|
||||
{
|
||||
if (station == this->last_station_visited) this->last_station_visited = INVALID_STATION;
|
||||
|
||||
Station *st = GetStation(station);
|
||||
const Station *st = GetStation(station);
|
||||
if (st->dock_tile != 0) {
|
||||
return TILE_ADD(st->dock_tile, ToTileIndexDiff(GetDockOffset(st->dock_tile)));
|
||||
} else {
|
||||
|
@@ -2563,7 +2563,14 @@ TileIndex Train::GetOrderStationLocation(StationID station)
|
||||
{
|
||||
if (station == this->last_station_visited) this->last_station_visited = INVALID_STATION;
|
||||
|
||||
return GetStation(station)->xy;
|
||||
const Station *st = GetStation(station);
|
||||
if (!(st->facilities & FACIL_TRAIN)) {
|
||||
/* The destination station has no trainstation tiles. */
|
||||
this->cur_order_index++;
|
||||
return 0;
|
||||
}
|
||||
|
||||
return st->xy;
|
||||
}
|
||||
|
||||
void Train::MarkDirty()
|
||||
|
Reference in New Issue
Block a user