From cec28351e7109c5d1da77513164a11beb7e19285 Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Fri, 13 Nov 2020 01:20:59 -0800 Subject: [PATCH 1/2] Remove dead code. --- game/game.py | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/game/game.py b/game/game.py index 775f36f3..7308a128 100644 --- a/game/game.py +++ b/game/game.py @@ -147,30 +147,6 @@ class Game: front_line.control_point_a, front_line.control_point_b) - def commision_unit_types(self, cp: ControlPoint, for_task: Task) -> List[UnitType]: - importance_factor = (cp.importance - IMPORTANCE_LOW) / (IMPORTANCE_HIGH - IMPORTANCE_LOW) - - if for_task == AirDefence and not self.settings.sams: - return [x for x in db.find_unittype(AirDefence, self.enemy_name) if x not in db.SAM_BAN] - else: - return db.choose_units(for_task, importance_factor, COMMISION_UNIT_VARIETY, self.enemy_name) - - def _commision_units(self, cp: ControlPoint): - for for_task in [CAS, CAP, AirDefence]: - limit = COMMISION_LIMITS_FACTORS[for_task] * math.pow(cp.importance, - COMMISION_LIMITS_SCALE) * self.settings.multiplier - missing_units = limit - cp.base.total_units(for_task) - if missing_units > 0: - awarded_points = COMMISION_AMOUNTS_FACTORS[for_task] * math.pow(cp.importance, - COMMISION_AMOUNTS_SCALE) * self.settings.multiplier - points_to_spend = cp.base.append_commision_points(for_task, awarded_points) - if points_to_spend > 0: - unittypes = self.commision_unit_types(cp, for_task) - if len(unittypes) > 0: - d = {random.choice(unittypes): points_to_spend} - logging.info("Commision {}: {}".format(cp, d)) - cp.base.commision_units(d) - @property def budget_reward_amount(self): reward = 0 From c4d08fa7b79a1ad51d980ab592f3fae50b5b68c7 Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Thu, 12 Nov 2020 23:52:24 -0800 Subject: [PATCH 2/2] Fix handling of non-AA units in AA groups. Some units in pydcs have detection_range and threat_range defined, but explicitly set to None. --- qt_ui/widgets/map/QLiberationMap.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/qt_ui/widgets/map/QLiberationMap.py b/qt_ui/widgets/map/QLiberationMap.py index 5834ba6f..a24b609b 100644 --- a/qt_ui/widgets/map/QLiberationMap.py +++ b/qt_ui/widgets/map/QLiberationMap.py @@ -176,10 +176,17 @@ class QLiberationMap(QGraphicsView): if unit is None: logging.error(f"Unknown unit type {u.type}") continue - detection_range = max(detection_range, - getattr(unit, "detection_range")) - threat_range = max(threat_range, - getattr(unit, "threat_range")) + + # Some units in pydcs have detection_range and threat_range + # defined, but explicitly set to None. + unit_detection_range = getattr(unit, "detection_range", None) + if unit_detection_range is not None: + detection_range = max(detection_range, unit_detection_range) + + unit_threat_range = getattr(unit, "threat_range", None) + if unit_threat_range is not None: + threat_range = max(threat_range, unit_threat_range) + return detection_range, threat_range def reload_scene(self):