File diff r14848:8e2ba5b203eb → r14849:27386629fac1
src/ai/api/ai_order.cpp
Show inline comments
 
@@ -172,25 +172,25 @@ static const Order *ResolveOrder(Vehicle
 
	const Order *order = ::ResolveOrder(vehicle_id, order_position);
 
	if (order == NULL || order->GetType() == OT_CONDITIONAL) return INVALID_TILE;
 
	const Vehicle *v = ::Vehicle::Get(vehicle_id);
 

	
 
	switch (order->GetType()) {
 
		case OT_GOTO_DEPOT: {
 
			/* We don't know where the nearest depot is... (yet) */
 
			if (order->GetDepotActionType() & ODATFB_NEAREST_DEPOT) return INVALID_TILE;
 

	
 
			if (v->type != VEH_AIRCRAFT) return ::Depot::Get(order->GetDestination())->xy;
 
			/* Aircraft's hangars are referenced by StationID, not DepotID */
 
			const Station *st = ::Station::Get(order->GetDestination());
 
			if (st->GetAirportSpec()->nof_depots == 0) return INVALID_TILE;
 
			if (st->airport.GetSpec()->nof_depots == 0) return INVALID_TILE;
 
			return st->GetHangarTile(0);
 
		}
 

	
 
		case OT_GOTO_STATION: {
 
			const Station *st = ::Station::Get(order->GetDestination());
 
			if (st->train_station.tile != INVALID_TILE) {
 
				TILE_AREA_LOOP(t, st->train_station) {
 
					if (st->TileBelongsToRailStation(t)) return t;
 
				}
 
			} else if (st->dock_tile != INVALID_TILE) {
 
				return st->dock_tile;
 
			} else if (st->bus_stops != NULL) {