Rename faction.aircrafts -> faction.all_aircraft

This commit is contained in:
Raffson 2023-12-29 15:19:56 +01:00
parent 9ff9fa5b69
commit 62df761d9c
No known key found for this signature in database
GPG Key ID: B0402B2C9B764D99
8 changed files with 27 additions and 31 deletions

View File

@ -98,7 +98,7 @@ class DefaultSquadronAssigner:
) )
return None return None
if aircraft not in self.coalition.faction.aircrafts: if aircraft not in self.coalition.faction.all_aircrafts:
return None return None
lo = self.coalition.faction.liveries_overrides lo = self.coalition.faction.liveries_overrides

View File

@ -25,7 +25,7 @@ class SquadronDefGenerator:
) -> Optional[SquadronDef]: ) -> Optional[SquadronDef]:
aircraft_choice: Optional[AircraftType] = None aircraft_choice: Optional[AircraftType] = None
for aircraft in AircraftType.priority_list_for_task(task): for aircraft in AircraftType.priority_list_for_task(task):
if aircraft not in self.faction.aircrafts: if aircraft not in self.faction.all_aircrafts:
continue continue
if not control_point.can_operate(aircraft): if not control_point.can_operate(aircraft):
continue continue

View File

@ -180,7 +180,7 @@ class Faction:
return sorted(air_defenses) return sorted(air_defenses)
@cached_property @cached_property
def aircrafts(self) -> list[UnitType[Any]]: def all_aircrafts(self) -> list[UnitType[Any]]:
# Migrator can't cope with this, so we need to do it here... # Migrator can't cope with this, so we need to do it here...
self.aircraft = set(self.aircraft) self.aircraft = set(self.aircraft)
self.awacs = set(self.awacs) self.awacs = set(self.awacs)
@ -537,14 +537,14 @@ class Faction:
self.remove_ship("Destroyer_carrier") self.remove_ship("Destroyer_carrier")
def remove_aircraft(self, name: str) -> None: def remove_aircraft(self, name: str) -> None:
for i in list(self.aircrafts): for i in list(self.all_aircrafts):
if i.dcs_unit_type.id == name: if i.dcs_unit_type.id == name:
self.aircrafts.remove(i) self.all_aircrafts.remove(i)
def remove_aircraft_by_name(self, name: str) -> None: def remove_aircraft_by_name(self, name: str) -> None:
for i in list(self.aircrafts): for i in list(self.all_aircrafts):
if i.display_name == name: if i.display_name == name:
self.aircrafts.remove(i) self.all_aircrafts.remove(i)
def remove_preset(self, name: str) -> None: def remove_preset(self, name: str) -> None:
for pg in self.preset_groups: for pg in self.preset_groups:

View File

@ -61,7 +61,7 @@ class ProcurementAi:
return 0 return 0
# faction has no planes or no squadrons # faction has no planes or no squadrons
if len(self.faction.aircrafts) == 0 or len(self.air_wing.squadrons) == 0: if len(self.faction.all_aircrafts) == 0 or len(self.air_wing.squadrons) == 0:
return 1 return 1
parking_type = ParkingType( parking_type = ParkingType(

View File

@ -38,7 +38,7 @@ class SquadronDefLoader:
f"{squadron_def.country.name}, need {country.name}: {path}" f"{squadron_def.country.name}, need {country.name}: {path}"
) )
continue continue
if squadron_def.aircraft not in faction.aircrafts: if squadron_def.aircraft not in faction.all_aircrafts:
logging.debug( logging.debug(
f"Not using squadron because {faction.name} cannot use " f"Not using squadron because {faction.name} cannot use "
f"{squadron_def.aircraft}: {path}" f"{squadron_def.aircraft}: {path}"

View File

@ -700,7 +700,7 @@ class AirWingConfigurationTab(QWidget):
# List of all Aircrafts possible to operate with the given bases # List of all Aircrafts possible to operate with the given bases
possible_aircrafts = { possible_aircrafts = {
aircraft aircraft
for aircraft in self.coalition.faction.aircrafts for aircraft in self.coalition.faction.all_aircrafts
if isinstance(aircraft, AircraftType) if isinstance(aircraft, AircraftType)
and any(base.can_operate(aircraft) for base in bases) and any(base.can_operate(aircraft) for base in bases)
} }

View File

@ -238,7 +238,7 @@ class FactionSelection(QtWidgets.QWizardPage):
@staticmethod @staticmethod
def _filter_selected_units(qfu: QFactionUnits) -> Faction: def _filter_selected_units(qfu: QFactionUnits) -> Faction:
fac = deepcopy(qfu.faction) fac = deepcopy(qfu.faction)
qfu.updateFactionUnits(fac.aircrafts) qfu.updateFactionUnits(fac.all_aircrafts)
qfu.updateFactionUnits(fac.awacs) qfu.updateFactionUnits(fac.awacs)
qfu.updateFactionUnits(fac.tankers) qfu.updateFactionUnits(fac.tankers)
qfu.updateFactionUnits(fac.frontline_units) qfu.updateFactionUnits(fac.frontline_units)

View File

@ -1,8 +1,8 @@
import json import json
from pathlib import Path
import unittest import unittest
import pytest from pathlib import Path
import pytest
from dcs.helicopters import UH_1H, AH_64A from dcs.helicopters import UH_1H, AH_64A
from dcs.planes import ( from dcs.planes import (
F_15C, F_15C,
@ -26,15 +26,11 @@ from dcs.planes import (
from dcs.ships import ( from dcs.ships import (
Stennis, Stennis,
LHA_Tarawa, LHA_Tarawa,
PERRY,
USS_Arleigh_Burke_IIa,
TICONDEROG,
) )
from dcs.vehicles import Armor, Unarmed, Infantry, Artillery from dcs.vehicles import Armor, Unarmed, Infantry, Artillery
from game.factions.faction import Faction from game.factions.faction import Faction
THIS_DIR = Path(__file__).parent THIS_DIR = Path(__file__).parent
RESOURCES_DIR = THIS_DIR / "resources" RESOURCES_DIR = THIS_DIR / "resources"
@ -53,20 +49,20 @@ class TestFactionLoader(unittest.TestCase):
self.assertEqual(faction.authors, "Khopa") self.assertEqual(faction.authors, "Khopa")
self.assertEqual(faction.description, "This is a test description") self.assertEqual(faction.description, "This is a test description")
self.assertIn(F_15C, faction.aircrafts) self.assertIn(F_15C, faction.all_aircrafts)
self.assertIn(F_15E, faction.aircrafts) self.assertIn(F_15E, faction.all_aircrafts)
self.assertIn(F_14B, faction.aircrafts) self.assertIn(F_14B, faction.all_aircrafts)
self.assertIn(FA_18C_hornet, faction.aircrafts) self.assertIn(FA_18C_hornet, faction.all_aircrafts)
self.assertIn(F_16C_50, faction.aircrafts) self.assertIn(F_16C_50, faction.all_aircrafts)
self.assertIn(A_10A, faction.aircrafts) self.assertIn(A_10A, faction.all_aircrafts)
self.assertIn(AV8BNA, faction.aircrafts) self.assertIn(AV8BNA, faction.all_aircrafts)
self.assertIn(UH_1H, faction.aircrafts) self.assertIn(UH_1H, faction.all_aircrafts)
self.assertIn(AH_64A, faction.aircrafts) self.assertIn(AH_64A, faction.all_aircrafts)
self.assertIn(B_52H, faction.aircrafts) self.assertIn(B_52H, faction.all_aircrafts)
self.assertIn(B_1B, faction.aircrafts) self.assertIn(B_1B, faction.all_aircrafts)
self.assertIn(F_117A, faction.aircrafts) self.assertIn(F_117A, faction.all_aircrafts)
self.assertIn(A_10C, faction.aircrafts) self.assertIn(A_10C, faction.all_aircrafts)
self.assertIn(A_10C_2, faction.aircrafts) self.assertIn(A_10C_2, faction.all_aircrafts)
self.assertEqual(len(faction.awacs), 1) self.assertEqual(len(faction.awacs), 1)
self.assertIn(E_3A, faction.awacs) self.assertIn(E_3A, faction.awacs)