summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKUDr <kudr@openttd.org>2006-08-29 19:46:31 +0000
committerKUDr <kudr@openttd.org>2006-08-29 19:46:31 +0000
commitf3df0aa6e85b854c084268042bbb021f55a47b77 (patch)
tree85eedcebb06559052485df6e24711d02bc6c4ea9
parentb83a3f8726e3980820fa2c4b508f70a56826228b (diff)
downloadopenttd-f3df0aa6e85b854c084268042bbb021f55a47b77.tar.xz
(svn r6223) -Fix: RVs with empty order list were able to enter the depot or road stop from the back. I introduced this bug when I "improved" GetTileTrackStatus(). (thanks glx for the report and fix).
-rw-r--r--roadveh_cmd.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/roadveh_cmd.c b/roadveh_cmd.c
index 93e3ff0d3..00843d65a 100644
--- a/roadveh_cmd.c
+++ b/roadveh_cmd.c
@@ -1035,13 +1035,13 @@ static int RoadFindPathToDest(Vehicle* v, TileIndex tile, DiagDirection enterdir
}
if (IsTileType(tile, MP_STREET)) {
- if (GetRoadTileType(tile) == ROAD_TILE_DEPOT && !IsTileOwner(tile, v->owner)) {
- /* Road depot owned by another player */
+ if (GetRoadTileType(tile) == ROAD_TILE_DEPOT && (!IsTileOwner(tile, v->owner) || GetRoadDepotDirection(tile) == enterdir)) {
+ /* Road depot owned by another player or with the wrong orientation */
bitmask = 0;
}
} else if (IsTileType(tile, MP_STATION) && IsRoadStopTile(tile)) {
- if (!IsTileOwner(tile, v->owner)) {
- // different station owner
+ if (!IsTileOwner(tile, v->owner) || GetRoadStopDir(tile) == enterdir) {
+ /* different station owner or wrong orientation */
bitmask = 0;
} else {
/* Our station */