From 24a212a98748ab5771909cb20ffaee01a0355703 Mon Sep 17 00:00:00 2001 From: Simon Clark Date: Sun, 17 Jan 2021 21:41:02 +0000 Subject: [PATCH] Make the C-130 work. For real this time. Also separate out SEAD and DEAD taskings. Some aircraft can DEAD but not SEAD. Also make the recruitment menu use the pretty names in the alphabetical sort func. --- gen/flights/ai_flight_planner_db.py | 12 ++++++++++-- qt_ui/widgets/combos/QAircraftTypeSelector.py | 9 ++++++--- .../basemenu/airfield/QAircraftRecruitmentMenu.py | 2 +- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/gen/flights/ai_flight_planner_db.py b/gen/flights/ai_flight_planner_db.py index a7b1e7bd..ce9ca9d0 100644 --- a/gen/flights/ai_flight_planner_db.py +++ b/gen/flights/ai_flight_planner_db.py @@ -219,7 +219,7 @@ CAS_CAPABLE = [ ] -# Aircraft used for SEAD / DEAD tasks +# Aircraft used for SEAD tasks SEAD_CAPABLE = [ JF_17, F_16C_50, @@ -254,6 +254,12 @@ SEAD_CAPABLE = [ ] +# Aircraft used for DEAD tasks +DEAD_CAPABLE = [ + AJS37, +] + SEAD_CAPABLE + + # Aircraft used for Strike mission STRIKE_CAPABLE = [ F_117A, @@ -371,8 +377,10 @@ def aircraft_for_task(task: FlightType) -> List[Type[FlyingType]]: return CAS_CAPABLE elif task == FlightType.CAS: return CAS_CAPABLE - elif task in (FlightType.DEAD, FlightType.SEAD): + elif task == FlightType.SEAD: return SEAD_CAPABLE + elif task == FlightType.DEAD: + return DEAD_CAPABLE elif task == FlightType.OCA_AIRCRAFT: return CAS_CAPABLE elif task == FlightType.OCA_RUNWAY: diff --git a/qt_ui/widgets/combos/QAircraftTypeSelector.py b/qt_ui/widgets/combos/QAircraftTypeSelector.py index 0c418bd4..9206ce4d 100644 --- a/qt_ui/widgets/combos/QAircraftTypeSelector.py +++ b/qt_ui/widgets/combos/QAircraftTypeSelector.py @@ -30,13 +30,16 @@ class QAircraftTypeSelector(QComboBox): if aircraft in gen.flights.ai_flight_planner_db.CAP_CAPABLE: self.addItem(f"{db.unit_pretty_name(self.country, aircraft)}", userData=aircraft) elif mission_type in [FlightType.CAS, FlightType.BAI, FlightType.OCA_AIRCRAFT]: - if aircraft in [gen.flights.ai_flight_planner_db.CAS_CAPABLE, gen.flights.ai_flight_planner_db.TRANSPORT_CAPABLE]: + if aircraft in gen.flights.ai_flight_planner_db.CAS_CAPABLE or aircraft in gen.flights.ai_flight_planner_db.TRANSPORT_CAPABLE: self.addItem(f"{db.unit_pretty_name(self.country, aircraft)}", userData=aircraft) - elif mission_type in [FlightType.SEAD, FlightType.DEAD]: + elif mission_type in [FlightType.SEAD]: if aircraft in gen.flights.ai_flight_planner_db.SEAD_CAPABLE: self.addItem(f"{db.unit_pretty_name(self.country, aircraft)}", userData=aircraft) + elif mission_type in [FlightType.DEAD]: + if aircraft in gen.flights.ai_flight_planner_db.DEAD_CAPABLE: + self.addItem(f"{db.unit_pretty_name(self.country, aircraft)}", userData=aircraft) elif mission_type in [FlightType.STRIKE]: - if aircraft in [gen.flights.ai_flight_planner_db.STRIKE_CAPABLE, gen.flights.ai_flight_planner_db.TRANSPORT_CAPABLE]: + if aircraft in gen.flights.ai_flight_planner_db.STRIKE_CAPABLE or aircraft in gen.flights.ai_flight_planner_db.TRANSPORT_CAPABLE: self.addItem(f"{db.unit_pretty_name(self.country, aircraft)}", userData=aircraft) elif mission_type in [FlightType.ANTISHIP]: if aircraft in gen.flights.ai_flight_planner_db.ANTISHIP_CAPABLE: diff --git a/qt_ui/windows/basemenu/airfield/QAircraftRecruitmentMenu.py b/qt_ui/windows/basemenu/airfield/QAircraftRecruitmentMenu.py index 4fa2530e..f343fa99 100644 --- a/qt_ui/windows/basemenu/airfield/QAircraftRecruitmentMenu.py +++ b/qt_ui/windows/basemenu/airfield/QAircraftRecruitmentMenu.py @@ -65,7 +65,7 @@ class QAircraftRecruitmentMenu(QFrame, QRecruitBehaviour): continue unit_types.add(unit) - sorted_units = sorted(unit_types, key=lambda u: db.unit_type_name_2(u)) + sorted_units = sorted(unit_types, key=lambda u: db.unit_pretty_name(self.game_model.game.player_country, u)) for unit_type in sorted_units: row = self.add_purchase_row( unit_type, task_box_layout, row,