summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2008-05-02 08:15:36 +0000
committerrubidium <rubidium@openttd.org>2008-05-02 08:15:36 +0000
commitd1ddff90d95dda94382790025c7c4f8ac96152c4 (patch)
treed222aa88e1a5f3ed3a4d12f649e0cef919980c56 /src
parentb49b4f627fd75008c1078825b3b6a1db7384f2e2 (diff)
downloadopenttd-d1ddff90d95dda94382790025c7c4f8ac96152c4.tar.xz
(svn r12935) -Fix [FS#1975]: vehicles forget their manual depot order when stopping at a station. Now we just pass through the station without stopping when a vehicle has been given a depot order.
Diffstat (limited to 'src')
-rw-r--r--src/order_cmd.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/order_cmd.cpp b/src/order_cmd.cpp
index f9f849a01..24c8ade89 100644
--- a/src/order_cmd.cpp
+++ b/src/order_cmd.cpp
@@ -1781,6 +1781,7 @@ bool Order::ShouldStopAtStation(const Vehicle *v, StationID station) const
{
bool is_dest_station = this->IsType(OT_GOTO_STATION) && this->dest == station;
return
+ (!this->IsType(OT_GOTO_DEPOT) || (this->GetDepotOrderType() & ODTFB_PART_OF_ORDERS) != 0) &&
v->last_station_visited != station && // Do stop only when we've not just been there
/* Finally do stop when there is no non-stop flag set for this type of station. */
!(this->GetNonStopType() & (is_dest_station ? ONSF_NO_STOP_AT_DESTINATION_STATION : ONSF_NO_STOP_AT_INTERMEDIATE_STATIONS));