diff options
author | rubidium <rubidium@openttd.org> | 2009-01-11 14:09:09 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2009-01-11 14:09:09 +0000 |
commit | c305a35e45d085c47f9db79b6a2076e9c554d14e (patch) | |
tree | eb21890ec34da251308469d7b28f2dd7ea0551c0 | |
parent | 9e9af7f561403cd73fafb79ea471bb9ab27564dc (diff) | |
download | openttd-c305a35e45d085c47f9db79b6a2076e9c554d14e.tar.xz |
(svn r14990) -Codechange: handle articulated RVs and trams more strictly in GetStationTileForVehicle and CanVehicleUseStation (based on idea by Swallow)
-rw-r--r-- | src/order_cmd.cpp | 2 | ||||
-rw-r--r-- | src/vehicle.cpp | 4 |
2 files changed, 2 insertions, 4 deletions
diff --git a/src/order_cmd.cpp b/src/order_cmd.cpp index faa5c437e..84a6778a8 100644 --- a/src/order_cmd.cpp +++ b/src/order_cmd.cpp @@ -1371,7 +1371,7 @@ static TileIndex GetStationTileForVehicle(const Vehicle *v, const Station *st) case VEH_TRAIN: return st->train_tile; case VEH_AIRCRAFT: return st->airport_tile; case VEH_SHIP: return st->dock_tile; - case VEH_ROAD: return IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? st->bus_stops->xy : st->truck_stops->xy; + case VEH_ROAD: return st->GetPrimaryRoadStop(v)->xy; } } diff --git a/src/vehicle.cpp b/src/vehicle.cpp index 37fd1dd2a..86b07c7ff 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -2278,9 +2278,7 @@ bool CanVehicleUseStation(EngineID engine_type, const Station *st) */ bool CanVehicleUseStation(const Vehicle *v, const Station *st) { - if (v->type == VEH_ROAD) { - return (st->facilities & (IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? FACIL_BUS_STOP : FACIL_TRUCK_STOP)) != 0; - } + if (v->type == VEH_ROAD) return st->GetPrimaryRoadStop(v) != NULL; return CanVehicleUseStation(v->engine_type, st); } |