From f4b64370bb28e01980ea5c495ef26f75f62cd501 Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Tue, 18 May 2021 19:21:07 -0700 Subject: [PATCH] Remove fallback for old non-convoy behavior. --- game/procurement.py | 8 +----- game/settings.py | 5 ---- game/theater/controlpoint.py | 6 ----- qt_ui/main.py | 1 - qt_ui/windows/newgame/QNewGameWizard.py | 25 ++--------------- qt_ui/windows/settings/QSettingsWindow.py | 33 ----------------------- 6 files changed, 3 insertions(+), 75 deletions(-) diff --git a/game/procurement.py b/game/procurement.py index c88b7218..f8346bf1 100644 --- a/game/procurement.py +++ b/game/procurement.py @@ -258,13 +258,7 @@ class ProcurementAi: if not cp.has_ground_unit_source(self.game): continue - # Buy to a higher limit when using the new recruitment mechanic since it - # will take longer to reinforce losses. - if self.game.settings.enable_new_ground_unit_recruitment: - limit = 50 - else: - limit = 30 - if self.total_ground_units_allocated_to(cp) >= limit: + if self.total_ground_units_allocated_to(cp) >= 50: # Control point is already sufficiently defended. continue for connected in cp.connected_points: diff --git a/game/settings.py b/game/settings.py index 192d080f..cda2bc79 100644 --- a/game/settings.py +++ b/game/settings.py @@ -37,11 +37,6 @@ class Settings: disable_legacy_aewc: bool = False generate_dark_kneeboard: bool = False - #: Feature flag for new ground unit behavior. Old campaigns are will not work with - #: this so the old behavior remains an option until it breaks, at which point we'll - #: remove it. - enable_new_ground_unit_recruitment: bool = True - # Performance oriented perf_red_alert_state: bool = True perf_smoke_gen: bool = True diff --git a/game/theater/controlpoint.py b/game/theater/controlpoint.py index 03fe3ef9..414d18b6 100644 --- a/game/theater/controlpoint.py +++ b/game/theater/controlpoint.py @@ -382,9 +382,6 @@ class ControlPoint(MissionTarget, ABC): if not self.can_deploy_ground_units: return False - if not game.settings.enable_new_ground_unit_recruitment: - return True - if game.turn == 0: # Allow units to be recruited anywhere on turn 0 to avoid long delays to get # everyone to the front line. @@ -397,9 +394,6 @@ class ControlPoint(MissionTarget, ABC): if not self.can_deploy_ground_units: return False - if not game.settings.enable_new_ground_unit_recruitment: - return True - for cp in game.theater.controlpoints: if cp.is_friendly(self.captured) and cp.can_recruit_ground_units(game): return True diff --git a/qt_ui/main.py b/qt_ui/main.py index 9dbd97cc..686f2b8c 100644 --- a/qt_ui/main.py +++ b/qt_ui/main.py @@ -199,7 +199,6 @@ def create_game( automate_runway_repair=auto_procurement, automate_front_line_reinforcements=auto_procurement, automate_aircraft_reinforcements=auto_procurement, - enable_new_ground_unit_recruitment=True, enable_frontline_cheats=cheats, enable_base_capture_cheat=cheats, ), diff --git a/qt_ui/windows/newgame/QNewGameWizard.py b/qt_ui/windows/newgame/QNewGameWizard.py index ecd64056..6cd28379 100644 --- a/qt_ui/windows/newgame/QNewGameWizard.py +++ b/qt_ui/windows/newgame/QNewGameWizard.py @@ -1,13 +1,13 @@ from __future__ import unicode_literals import logging -from typing import List, Optional +from datetime import timedelta +from typing import List from PySide2 import QtGui, QtWidgets from PySide2.QtCore import QItemSelectionModel, QPoint, Qt, QDate from PySide2.QtWidgets import QVBoxLayout, QTextEdit, QLabel from jinja2 import Environment, FileSystemLoader, select_autoescape -from datetime import timedelta from game import db from game.settings import Settings @@ -19,9 +19,6 @@ from qt_ui.windows.newgame.QCampaignList import ( QCampaignList, load_campaigns, ) -from qt_ui.windows.settings.QSettingsWindow import ( - NEW_GROUND_UNIT_RECRUITMENT_BEHAVIOR_LABEL, -) jinja_env = Environment( loader=FileSystemLoader("resources/ui/templates"), @@ -91,9 +88,6 @@ class NewGameWizard(QtWidgets.QWizard): ), automate_aircraft_reinforcements=self.field("automate_aircraft_purchases"), supercarrier=self.field("supercarrier"), - enable_new_ground_unit_recruitment=self.field( - "new_ground_unit_recruitment" - ), ) generator_settings = GeneratorSettings( start_date=start_date, @@ -509,21 +503,6 @@ class DifficultyAndAutomationOptions(QtWidgets.QWizardPage): self.registerField("automate_aircraft_purchases", aircraft) assist_layout.addWidget(aircraft, 2, 1, Qt.AlignRight) - flags_group = QtWidgets.QGroupBox("Feature flags") - layout.addWidget(flags_group) - flags_layout = QtWidgets.QGridLayout() - flags_group.setLayout(flags_layout) - - new_ground_unit_recruitment_label = QtWidgets.QLabel( - NEW_GROUND_UNIT_RECRUITMENT_BEHAVIOR_LABEL - ) - new_ground_unit_recruitment_label.setOpenExternalLinks(True) - flags_layout.addWidget(new_ground_unit_recruitment_label, 0, 0) - new_ground_unit_recruitment = QtWidgets.QCheckBox() - new_ground_unit_recruitment.setChecked(True) - self.registerField("new_ground_unit_recruitment", new_ground_unit_recruitment) - flags_layout.addWidget(new_ground_unit_recruitment, 0, 1, Qt.AlignRight) - self.setLayout(layout) diff --git a/qt_ui/windows/settings/QSettingsWindow.py b/qt_ui/windows/settings/QSettingsWindow.py index c7e13e7d..e16f45ae 100644 --- a/qt_ui/windows/settings/QSettingsWindow.py +++ b/qt_ui/windows/settings/QSettingsWindow.py @@ -17,7 +17,6 @@ from PySide2.QtWidgets import ( QStackedLayout, QVBoxLayout, QWidget, - QSlider, ) from dcs.forcedoptions import ForcedOptions @@ -78,17 +77,6 @@ class CheatSettingsBox(QGroupBox): START_TYPE_TOOLTIP = "Selects the start type used for AI aircraft." -NEW_GROUND_UNIT_RECRUITMENT_TOOLTIP = ( - "If checked, the new ground unit recruitment behavior will be used. Ground " - "units may only be purchased at factories or off-map spawns and must " - "travel to the front line." -) -NEW_GROUND_UNIT_RECRUITMENT_BEHAVIOR_LABEL = ( - "Enable new ground unit recruitment behavior
" - '' - 'More information.' -) - class StartTypeComboBox(QComboBox): def __init__(self, settings: Settings) -> None: @@ -379,27 +367,6 @@ class QSettingsWindow(QDialog): general_layout.addWidget(old_awac_label, 1, 0) general_layout.addWidget(old_awac, 1, 1, Qt.AlignRight) - def set_new_ground_unit_recruitment(value: bool) -> None: - self.game.settings.enable_new_ground_unit_recruitment = value - - new_ground_unit_recruitment_behavior_label = QLabel( - NEW_GROUND_UNIT_RECRUITMENT_BEHAVIOR_LABEL - ) - new_ground_unit_recruitment_behavior_label.setToolTip( - NEW_GROUND_UNIT_RECRUITMENT_TOOLTIP - ) - new_ground_unit_recruitment_behavior_label.setOpenExternalLinks(True) - - new_ground_unit_recruitment = QCheckBox() - new_ground_unit_recruitment.setToolTip(NEW_GROUND_UNIT_RECRUITMENT_TOOLTIP) - new_ground_unit_recruitment.setChecked( - self.game.settings.enable_new_ground_unit_recruitment - ) - new_ground_unit_recruitment.toggled.connect(set_new_ground_unit_recruitment) - - general_layout.addWidget(new_ground_unit_recruitment_behavior_label, 2, 0) - general_layout.addWidget(new_ground_unit_recruitment, 2, 1, Qt.AlignRight) - automation = QGroupBox("HQ Automation") campaign_layout.addWidget(automation)