Dan Albert fb10a8d28e Add frozen combat modelling.
This doesn't do anything yet, but sets up the data model handling for
frozen combat. The next step is to show combat in the map view, since
that will be helpful when debugging the step after that one: resolving
frozen combat.

This would benefit from caching the Shapely data for SAM threat zones.
Right now it's generating them once per tick and the stuttering is
visible at max speed.

https://github.com/dcs-liberation/dcs_liberation/issues/1680
2021-12-21 14:52:28 -08:00

25 lines
536 B
Python

from __future__ import annotations
from collections.abc import Iterator
from typing import TYPE_CHECKING
from .frozencombat import FrozenCombat
if TYPE_CHECKING:
from game.ato import Flight
class AtIp(FrozenCombat):
def __init__(self, flight: Flight) -> None:
super().__init__()
self.flight = flight
def because(self) -> str:
return f"{self.flight} is at its IP"
def describe(self) -> str:
return f"at IP"
def iter_flights(self) -> Iterator[Flight]:
yield self.flight