Fix #11785, cf16f45: when bumping aircraft into the air, remove them from the loading vehicle list again

This commit is contained in:
Rubidium 2024-01-15 22:12:55 +01:00 committed by rubidium42
parent f99793547e
commit 661bdae2e5
1 changed files with 12 additions and 0 deletions

View File

@ -198,6 +198,18 @@ void UpdateOldAircraft()
SetAircraftPosition(a, gp.x, gp.y, GetAircraftFlightLevel(a));
}
}
/* Clear aircraft from loading vehicles, if we bumped them into the air. */
for (Station *st : Station::Iterate()) {
for (auto iter = st->loading_vehicles.begin(); iter != st->loading_vehicles.end(); /* nothing */) {
Vehicle *v = *iter;
if (v->type == VEH_AIRCRAFT && !v->current_order.IsType(OT_LOADING)) {
iter = st->loading_vehicles.erase(iter);
} else {
++iter;
}
}
}
}
/**