Mercurial > hg > openttd
changeset 8928:f256fabe6441 draft
(svn r12698) -Codechange: skip orders to stations that do not have a train part anymore, just like is done for road vehicles and ships.
author | rubidium <rubidium@openttd.org> |
---|---|
date | Mon, 14 Apr 2008 07:08:43 +0000 |
parents | 34ca25f0c6bd |
children | 2b6a37a13245 |
files | src/ship_cmd.cpp src/train_cmd.cpp |
diffstat | 2 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ship_cmd.cpp +++ b/src/ship_cmd.cpp @@ -243,7 +243,7 @@ { 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 {
--- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -2563,7 +2563,14 @@ { 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()