summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKUDr <KUDr@openttd.org>2006-06-07 17:04:22 +0000
committerKUDr <KUDr@openttd.org>2006-06-07 17:04:22 +0000
commitb1ef3b117eb04f1dd7675f4a796f390aedfadba9 (patch)
treee9c6805120a5e944a5eaa76b359bf3cd9c862143
parenteade3d07b5d99b0bbbf2de7d123babb6d05d1722 (diff)
downloadopenttd-b1ef3b117eb04f1dd7675f4a796f390aedfadba9.tar.xz
(svn r5148) - Fix: [YAPF] RVs can now find depot they are currently in (thanks Darkvater)
-rw-r--r--yapf/yapf_road.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/yapf/yapf_road.cpp b/yapf/yapf_road.cpp
index 5bf679b56..6fbff3ecb 100644
--- a/yapf/yapf_road.cpp
+++ b/yapf/yapf_road.cpp
@@ -430,6 +430,12 @@ Depot* YapfFindNearestRoadDepot(const Vehicle *v)
if ((GetTileTrackStatus(tile, TRANSPORT_ROAD) & TrackdirToTrackdirBits(trackdir)) == 0)
return NULL;
+ // handle the case when our vehicle is already in the depot tile
+ if (IsTileType(tile, MP_STREET) && IsTileDepotType(tile, TRANSPORT_ROAD)) {
+ // only what we need to return is the Depot*
+ return GetDepotByTile(tile);
+ }
+
// default is YAPF type 2
typedef Depot* (*PfnFindNearestDepot)(Vehicle*, TileIndex, Trackdir);
PfnFindNearestDepot pfnFindNearestDepot = &CYapfRoadAnyDepot2::stFindNearestDepot;