diff options
author | dominik <dominik@openttd.org> | 2004-08-21 23:56:01 +0000 |
---|---|---|
committer | dominik <dominik@openttd.org> | 2004-08-21 23:56:01 +0000 |
commit | c7baa9b10ad2480107164d3ae0e638cfa11efa5a (patch) | |
tree | 04cb09a16293befaf959435907e162755e099aec | |
parent | 8939b9ea28d4489adeddc0a4a706d31100b52402 (diff) | |
download | openttd-c7baa9b10ad2480107164d3ae0e638cfa11efa5a.tar.xz |
(svn r104) Fix: wrong pathfinding when northern station tile is missing (blathijs)
-rw-r--r-- | train_cmd.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/train_cmd.c b/train_cmd.c index 85601bfb4..7f04b19b2 100644 --- a/train_cmd.c +++ b/train_cmd.c @@ -1330,13 +1330,12 @@ static bool TrainTrackFollower(uint tile, TrainTrackFollowerData *ttfd, int trac static void FillWithStationData(TrainTrackFollowerData *fd, Vehicle *v) { - uint tile; - - fd->dest_coords = tile = v->dest_tile; - fd->station_index = -1; + fd->dest_coords = v->dest_tile; + if ((v->next_order & OT_MASK) == OT_GOTO_STATION) + fd->station_index = v->next_order_param; + else + fd->station_index = -1; - if (IS_TILETYPE(tile, MP_STATION) && IS_BYTE_INSIDE(_map5[tile], 0, 8) ) - fd->station_index = _map2[tile]; } static const byte _initial_tile_subcoord[6][4][3] = { |