Account for parking-slot size during retreat

Fix #129
This commit is contained in:
Raffson 2023-09-09 13:19:54 +02:00
parent e50d49d7ba
commit e341599a11
No known key found for this signature in database
GPG Key ID: B0402B2C9B764D99
2 changed files with 7 additions and 0 deletions

View File

@ -16,6 +16,7 @@
* **[Mission Planning]** Allow attack helicopters to escort other helicopters
* **[UI]** Allow changing waypoint names in FlightEdit's waypoints tab
* **[Waypoints]** Allow user to add navigation waypoints where possible without degrading to a custom flight-plan
* **[Campaign Management]** Improve squadron retreat logic to account for parking-slot sizes
## Fixes
* **[Mission Generation]** Anti-ship strikes should use "group attack" in their attack-task

View File

@ -842,6 +842,12 @@ class ControlPoint(MissionTarget, SidcDescribable, ABC):
if airbase.can_operate(squadron.aircraft):
overfull.append(airbase)
continue
elif isinstance(airbase, Airfield):
dcs_unit_type = squadron.aircraft.dcs_unit_type
free_slots = airbase.airport.free_parking_slots(dcs_unit_type)
if len(free_slots) < squadron.owned_aircraft or len(free_slots) == 0:
overfull.append(airbase)
continue
if squadron.operates_from(airbase):
# Has room, is a preferred base type for this squadron, and is the