Mercurial > hg > openttd
changeset 4177:b3f554f90b4c draft
(svn r5615) Move GetStationTileForVehicle() to its only user
author | tron <tron@openttd.org> |
---|---|
date | Wed, 26 Jul 2006 10:00:33 +0000 |
parents | 2a3cca788409 |
children | 2b5e7677cacf |
files | order_cmd.c station.h station_cmd.c |
diffstat | 3 files changed, 20 insertions(+), 23 deletions(-) [+] |
line wrap: on
line diff
--- a/order_cmd.c +++ b/order_cmd.c @@ -855,6 +855,24 @@ return 0; } + +static TileIndex GetStationTileForVehicle(const Vehicle* v, const Station* st) +{ + switch (v->type) { + default: NOT_REACHED(); + case VEH_Train: return st->train_tile; + case VEH_Aircraft: return st->airport_tile; + case VEH_Ship: return st->dock_tile; + case VEH_Road: + if (v->cargo_type == CT_PASSENGERS) { + return (st->bus_stops != NULL) ? st->bus_stops->xy : 0; + } else { + return (st->truck_stops != NULL) ? st->truck_stops->xy : 0; + } + } +} + + /** * * Check the orders of a vehicle, to see if there are invalid orders and stuff @@ -879,7 +897,6 @@ if (v->owner == _local_player && v->day_counter % 20 == 0) { int n_st, problem_type = -1; const Order *order; - const Station *st; int message = 0; /* Check the order list */ @@ -893,11 +910,10 @@ } /* Does station have a load-bay for this vehicle? */ if (order->type == OT_GOTO_STATION) { - TileIndex required_tile; + const Station* st = GetStation(order->station); + TileIndex required_tile = GetStationTileForVehicle(v, st); n_st++; - st = GetStation(order->station); - required_tile = GetStationTileForVehicle(v, st); if (required_tile == 0) problem_type = 3; } }
--- a/station.h +++ b/station.h @@ -136,8 +136,6 @@ void ModifyStationRatingAround(TileIndex tile, PlayerID owner, int amount, uint radius); -TileIndex GetStationTileForVehicle(const Vehicle *v, const Station *st); - void ShowStationViewWindow(StationID station); void UpdateAllStationVirtCoord(void);
--- a/station_cmd.c +++ b/station_cmd.c @@ -216,23 +216,6 @@ return (closest_station == INVALID_STATION) ? NULL : GetStation(closest_station); } -TileIndex GetStationTileForVehicle(const Vehicle *v, const Station *st) -{ - switch (v->type) { - case VEH_Train: return st->train_tile; - case VEH_Aircraft: return st->airport_tile; - case VEH_Ship: return st->dock_tile; - case VEH_Road: - if (v->cargo_type == CT_PASSENGERS) { - return (st->bus_stops != NULL) ? st->bus_stops->xy : 0; - } else { - return (st->truck_stops != NULL) ? st->truck_stops->xy : 0; - } - default: - assert(false); - return 0; - } -} static bool CheckStationSpreadOut(Station *st, TileIndex tile, int w, int h) {