diff --git a/game/theater/frontline.py b/game/theater/frontline.py index 4a3ab51a..7e59445b 100644 --- a/game/theater/frontline.py +++ b/game/theater/frontline.py @@ -13,9 +13,6 @@ if TYPE_CHECKING: from game.ato import FlightType -FRONTLINE_MIN_CP_DISTANCE = 5000 - - @dataclass class FrontLineSegment: """ @@ -173,23 +170,8 @@ class FrontLine(MissionTarget): """ total_strength = self.blue_cp.base.strength + self.red_cp.base.strength if self.blue_cp.base.strength == 0: - return self._adjust_for_min_dist(0) + return 0 if self.red_cp.base.strength == 0: - return self._adjust_for_min_dist(self.attack_distance) + return self.attack_distance strength_pct = self.blue_cp.base.strength / total_strength - return self._adjust_for_min_dist(strength_pct * self.attack_distance) - - def _adjust_for_min_dist(self, distance: float) -> float: - """ - Ensures the frontline conflict is never located within the minimum distance - constant of either end control point. - """ - if (distance > self.attack_distance / 2) and ( - distance + FRONTLINE_MIN_CP_DISTANCE > self.attack_distance - ): - distance = self.attack_distance - FRONTLINE_MIN_CP_DISTANCE - elif (distance < self.attack_distance / 2) and ( - distance < FRONTLINE_MIN_CP_DISTANCE - ): - distance = FRONTLINE_MIN_CP_DISTANCE - return distance + return strength_pct * self.attack_distance