mirror of
https://github.com/dcs-liberation/dcs_liberation.git
synced 2025-11-10 14:22:26 +00:00
The AI will now prioritize targeting ammo depots if the current deployable enemy forces outnumber the friendly cap by 50% or more.
17 lines
581 B
Python
17 lines
581 B
Python
from collections import Iterator
|
|
from dataclasses import dataclass
|
|
|
|
from game.commander.tasks.primitive.strike import PlanStrike
|
|
from game.commander.theaterstate import TheaterState
|
|
from game.htn import CompoundTask, Method
|
|
from game.theater import ControlPoint
|
|
|
|
|
|
@dataclass(frozen=True)
|
|
class ReduceEnemyFrontLineCapacity(CompoundTask[TheaterState]):
|
|
control_point: ControlPoint
|
|
|
|
def each_valid_method(self, state: TheaterState) -> Iterator[Method[TheaterState]]:
|
|
for ammo_dump in state.ammo_dumps_at(self.control_point):
|
|
yield [PlanStrike(ammo_dump)]
|