diff options
-rw-r--r-- | src/ai/api/ai_airport.cpp | 2 | ||||
-rw-r--r-- | src/ai/api/ai_depotlist.cpp | 2 | ||||
-rw-r--r-- | src/ai/api/ai_order.cpp | 2 | ||||
-rw-r--r-- | src/airport.cpp | 2 | ||||
-rw-r--r-- | src/station_base.h | 14 | ||||
-rw-r--r-- | src/station_cmd.cpp | 4 |
6 files changed, 13 insertions, 13 deletions
diff --git a/src/ai/api/ai_airport.cpp b/src/ai/api/ai_airport.cpp index 8f3b5430b..13b62ce43 100644 --- a/src/ai/api/ai_airport.cpp +++ b/src/ai/api/ai_airport.cpp @@ -109,7 +109,7 @@ if (st->owner != _current_company) return INVALID_TILE; if ((st->facilities & FACIL_AIRPORT) == 0) return INVALID_TILE; - return st->GetHangarTile(0); + return st->airport.GetHangarTile(0); } /* static */ AIAirport::AirportType AIAirport::GetAirportType(TileIndex tile) diff --git a/src/ai/api/ai_depotlist.cpp b/src/ai/api/ai_depotlist.cpp index 3a58c2c45..bade09bcd 100644 --- a/src/ai/api/ai_depotlist.cpp +++ b/src/ai/api/ai_depotlist.cpp @@ -31,7 +31,7 @@ AIDepotList::AIDepotList(AITile::TransportType transport_type) if (st->owner == ::_current_company) { const AirportSpec *as = st->airport.GetSpec(); for (uint i = 0; i < as->nof_depots; i++) { - this->AddItem(st->GetHangarTile(i)); + this->AddItem(st->airport.GetHangarTile(i)); } } } diff --git a/src/ai/api/ai_order.cpp b/src/ai/api/ai_order.cpp index 500841415..bf55cc504 100644 --- a/src/ai/api/ai_order.cpp +++ b/src/ai/api/ai_order.cpp @@ -182,7 +182,7 @@ static const Order *ResolveOrder(VehicleID vehicle_id, AIOrder::OrderPosition or /* Aircraft's hangars are referenced by StationID, not DepotID */ const Station *st = ::Station::Get(order->GetDestination()); if (!st->airport.HasHangar()) return INVALID_TILE; - return st->GetHangarTile(0); + return st->airport.GetHangarTile(0); } case OT_GOTO_STATION: { diff --git a/src/airport.cpp b/src/airport.cpp index d0b810a1d..950c906c3 100644 --- a/src/airport.cpp +++ b/src/airport.cpp @@ -397,7 +397,7 @@ byte GetVehiclePosOnBuild(TileIndex hangar_tile) * layout for #th position of depot. Since layout must start with a listing * of all depots, it is simple */ for (uint i = 0;; i++) { - if (st->GetHangarTile(i) == hangar_tile) { + if (st->airport.GetHangarTile(i) == hangar_tile) { assert(apc->layout[i].heading == HANGAR); return apc->layout[i].position; } diff --git a/src/station_base.h b/src/station_base.h index f15a5dabd..9a0da91dc 100644 --- a/src/station_base.h +++ b/src/station_base.h @@ -67,6 +67,13 @@ struct Airport : public TileArea { { return this->GetSpec()->nof_depots > 0; } + + FORCEINLINE TileIndex GetHangarTile(uint hangar_num) const + { + assert(this->tile != INVALID_TILE); + assert(hangar_num < this->GetSpec()->nof_depots); + return this->tile + ToTileIndexDiff(this->GetSpec()->depot_table[hangar_num]); + } }; typedef SmallVector<Industry *, 2> IndustryVector; @@ -135,13 +142,6 @@ public: return IsAirportTile(tile) && GetStationIndex(tile) == this->index; } - FORCEINLINE TileIndex GetHangarTile(uint hangar_num) const - { - assert(this->airport.tile != INVALID_TILE); - assert(hangar_num < this->airport.GetSpec()->nof_depots); - return this->airport.tile + ToTileIndexDiff(this->airport.GetSpec()->depot_table[hangar_num]); - } - /* virtual */ uint32 GetNewGRFVariable(const ResolverObject *object, byte variable, byte parameter, bool *available) const; /* virtual */ void GetTileArea(TileArea *ta, StationType type) const; diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index fbae4b1a3..74ad7e060 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -69,7 +69,7 @@ bool IsHangar(TileIndex t) const AirportSpec *as = st->airport.GetSpec(); for (uint i = 0; i < as->nof_depots; i++) { - if (st->GetHangarTile(i) == t) return true; + if (st->airport.GetHangarTile(i) == t) return true; } return false; @@ -2296,7 +2296,7 @@ static CommandCost RemoveAirport(TileIndex tile, DoCommandFlag flags) const AirportSpec *as = st->airport.GetSpec(); for (uint i = 0; i < as->nof_depots; ++i) { DeleteWindowById( - WC_VEHICLE_DEPOT, st->GetHangarTile(i) + WC_VEHICLE_DEPOT, st->airport.GetHangarTile(i) ); } |