@@ -2390,12 +2390,18 @@ static CommandCost RemoveAirport(TileInd
if (a->targetairport == st->index && a->state != FLYING) {
return_cmd_error(STR_ERROR_AIRCRAFT_IN_THE_WAY);
}
if (flags & DC_EXEC) {
for (uint i = 0; i < st->airport.GetNumHangars(); ++i) {
DeleteWindowById(
WC_VEHICLE_DEPOT, st->airport.GetHangarTile(i)
);
const AirportSpec *as = st->airport.GetSpec();
/* The noise level is the noise from the airport and reduce it to account for the distance to the town center.
* And as for construction, always remove it, even if the setting is not set, in order to avoid the
* need of recalculation */
AirportTileIterator it(st);
uint dist;
@@ -2420,18 +2426,12 @@ static CommandCost RemoveAirport(TileInd
/* Clear the persistent storage. */
delete st->airport.psa;
st->rect.AfterRemoveRect(st, st->airport);
st->airport.Clear();
st->facilities &= ~FACIL_AIRPORT;
InvalidateWindowData(WC_STATION_VIEW, st->index, -1);
Status change: