(svn r12657) -Codechange: add 'FindClosestDepot' to the vehicle class.

This commit is contained in:
rubidium
2008-04-11 08:14:43 +00:00
parent 3a0cb23548
commit 62bdc381e7
9 changed files with 73 additions and 4 deletions

View File

@@ -546,6 +546,25 @@ CommandCost CmdStartStopAircraft(TileIndex tile, uint32 flags, uint32 p1, uint32
return CommandCost();
}
bool Aircraft::FindClosestDepot(TileIndex *location, DestinationID *destination, bool *reverse)
{
const Station *st = GetStation(this->u.air.targetairport);
/* If the station is not a valid airport or if it has no hangars */
if (!st->IsValid() || st->airport_tile == 0 || st->Airport()->nof_depots == 0) {
/* the aircraft has to search for a hangar on its own */
StationID station = FindNearestHangar(this);
if (station == INVALID_STATION) return false;
st = GetStation(station);
}
if (location != NULL) *location = st->xy;
if (destination != NULL) *destination = st->index;
return true;
}
/** Send an aircraft to the hangar.
* @param tile unused
* @param flags for command type