mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
Troops must be dropped inside this zone or they won't attack the target. The zone needs to be drawn in the map so players don't break the flight plan by accidentally moving the drop waypoint outside the DZ. I've move the API for doing this out of `PatrollingFlightPlan` in favor of a mixin so this is no longer presented as `engagement_distance` by the flight plan. I don't love that it's still the `commit-boundary` endpoint, but it's fine for now. I don't know why mypy wasn't able to catch this. pycharm is also struggling to understand this class.
19 lines
287 B
Python
19 lines
287 B
Python
import abc
|
|
from dataclasses import dataclass
|
|
|
|
from dcs import Point
|
|
|
|
from game.utils import Distance
|
|
|
|
|
|
@dataclass(frozen=True)
|
|
class UiZone:
|
|
points: list[Point]
|
|
radius: Distance
|
|
|
|
|
|
class UiZoneDisplay(abc.ABC):
|
|
@abc.abstractmethod
|
|
def ui_zone(self) -> UiZone:
|
|
...
|