mirror of
https://github.com/dcs-liberation/dcs_liberation.git
synced 2025-11-10 14:22:26 +00:00
Finish moving gen into game.
This commit is contained in:
parent
3e08e0e8b6
commit
ac80c4adc1
5
.github/workflows/build.yml
vendored
5
.github/workflows/build.yml
vendored
@ -31,11 +31,6 @@ jobs:
|
||||
./venv/scripts/activate
|
||||
mypy game
|
||||
|
||||
- name: mypy gen
|
||||
run: |
|
||||
./venv/scripts/activate
|
||||
mypy gen
|
||||
|
||||
- name: mypy tests
|
||||
run: |
|
||||
./venv/scripts/activate
|
||||
|
||||
5
.github/workflows/release.yml
vendored
5
.github/workflows/release.yml
vendored
@ -37,11 +37,6 @@ jobs:
|
||||
./venv/scripts/activate
|
||||
mypy game
|
||||
|
||||
- name: mypy gen
|
||||
run: |
|
||||
./venv/scripts/activate
|
||||
mypy gen
|
||||
|
||||
- name: Build binaries
|
||||
run: |
|
||||
./venv/scripts/activate
|
||||
|
||||
@ -109,25 +109,23 @@ from dcs.planes import (
|
||||
)
|
||||
from dcs.unittype import FlyingType
|
||||
|
||||
from game.ato.flighttype import FlightType
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from pydcs_extensions.a4ec.a4ec import A_4E_C
|
||||
from pydcs_extensions.f22a.f22a import F_22A
|
||||
from pydcs_extensions.f104.f104 import VSN_F104G, VSN_F104S, VSN_F104S_AG
|
||||
from pydcs_extensions.f22a.f22a import F_22A
|
||||
from pydcs_extensions.hercules.hercules import Hercules
|
||||
from pydcs_extensions.jas39.jas39 import JAS39Gripen, JAS39Gripen_AG
|
||||
from pydcs_extensions.su57.su57 import Su_57
|
||||
from pydcs_extensions.uh60l.uh60l import KC130J, UH_60L
|
||||
from .flighttype import FlightType
|
||||
|
||||
# All aircraft lists are in priority order. Aircraft higher in the list will be
|
||||
# preferred over those lower in the list.
|
||||
|
||||
# TODO: These lists really ought to be era (faction) dependent.
|
||||
# Factions which have F-5s, F-86s, and A-4s will should prefer F-5s for CAP, but
|
||||
# factions that also have F-4s should not.
|
||||
|
||||
# Used for CAP, Escort, and intercept if there is not a specialised aircraft available
|
||||
from pydcs_extensions.uh60l.uh60l import UH_60L, KC130J
|
||||
|
||||
CAP_CAPABLE = [
|
||||
Su_57,
|
||||
F_22A,
|
||||
@ -7,10 +7,10 @@ from typing import Any, List, Optional, TYPE_CHECKING
|
||||
from dcs import Point
|
||||
from dcs.planes import C_101CC, C_101EB, Su_33
|
||||
|
||||
from gen.flights.loadouts import Loadout
|
||||
from game.savecompat import has_save_compat_for
|
||||
from .flightroster import FlightRoster
|
||||
from .flightstate import FlightState, Uninitialized
|
||||
from ..savecompat import has_save_compat_for
|
||||
from .loadouts import Loadout
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
@ -74,7 +74,7 @@ class Flight:
|
||||
# Will be replaced with a more appropriate FlightPlan by
|
||||
# FlightPlanBuilder, but an empty flight plan the flight begins with an
|
||||
# empty flight plan.
|
||||
from gen.flights.flightplan import FlightPlan, CustomFlightPlan
|
||||
from game.ato.flightplan import FlightPlan, CustomFlightPlan
|
||||
|
||||
self.flight_plan: FlightPlan = CustomFlightPlan(
|
||||
package=package, flight=self, custom_waypoints=[]
|
||||
|
||||
@ -26,10 +26,6 @@ from typing import (
|
||||
from dcs.mapping import Point
|
||||
from shapely.geometry import Point as ShapelyPoint
|
||||
|
||||
from game.ato.flighttype import FlightType
|
||||
from game.ato.flightwaypoint import FlightWaypoint
|
||||
from game.ato.flightwaypointtype import FlightWaypointType
|
||||
from game.ato.starttype import StartType
|
||||
from game.data.doctrine import Doctrine
|
||||
from game.dcs.aircrafttype import FuelConsumption
|
||||
from game.flightplan import HoldZoneGeometry, IpZoneGeometry, JoinZoneGeometry
|
||||
@ -52,12 +48,16 @@ from game.theater.theatergroundobject import (
|
||||
from game.typeguard import self_type_guard
|
||||
from game.utils import Distance, Heading, Speed, feet, knots, meters, nautical_miles
|
||||
from .closestairfields import ObjectiveDistanceCache
|
||||
from .flighttype import FlightType
|
||||
from .flightwaypoint import FlightWaypoint
|
||||
from .flightwaypointtype import FlightWaypointType
|
||||
from .starttype import StartType
|
||||
from .traveltime import GroundSpeed, TravelTime
|
||||
from .waypointbuilder import StrikeTarget, WaypointBuilder
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.ato.flight import Flight
|
||||
from game.ato.package import Package
|
||||
from .flight import Flight
|
||||
from .package import Package
|
||||
from game.coalition import Coalition
|
||||
from game.threatzones import ThreatZones
|
||||
|
||||
@ -5,7 +5,7 @@ from typing import TYPE_CHECKING
|
||||
|
||||
from dcs import Point
|
||||
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.traveltime import TotEstimator
|
||||
from .flightstate import FlightState
|
||||
from ..starttype import StartType
|
||||
|
||||
|
||||
@ -8,7 +8,7 @@ from game.data.weapons import Pylon, Weapon, WeaponType
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.ato.flight import Flight
|
||||
from .flight import Flight
|
||||
|
||||
|
||||
class Loadout:
|
||||
@ -6,12 +6,13 @@ from dataclasses import dataclass, field
|
||||
from datetime import timedelta
|
||||
from typing import Dict, List, Optional, TYPE_CHECKING
|
||||
|
||||
from game.ato import Flight, FlightType
|
||||
from game.ato.packagewaypoints import PackageWaypoints
|
||||
from game.db import Database
|
||||
from game.utils import Speed
|
||||
from gen.flights.flightplan import FormationFlightPlan
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from .flight import Flight
|
||||
from .flightplan import FormationFlightPlan
|
||||
from .flighttype import FlightType
|
||||
from .packagewaypoints import PackageWaypoints
|
||||
from .traveltime import TotEstimator
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.theater import MissionTarget
|
||||
|
||||
@ -16,8 +16,8 @@ from game.utils import (
|
||||
)
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.ato.flight import Flight
|
||||
from game.ato.package import Package
|
||||
from .flight import Flight
|
||||
from .package import Package
|
||||
|
||||
|
||||
class GroundSpeed:
|
||||
@ -14,8 +14,6 @@ from typing import (
|
||||
|
||||
from dcs.mapping import Point
|
||||
|
||||
from game.ato.flightwaypoint import AltitudeReference, FlightWaypoint
|
||||
from game.ato.flightwaypointtype import FlightWaypointType
|
||||
from game.theater import (
|
||||
ControlPoint,
|
||||
MissionTarget,
|
||||
@ -24,12 +22,14 @@ from game.theater import (
|
||||
TheaterUnit,
|
||||
)
|
||||
from game.utils import Distance, meters, nautical_miles
|
||||
from .flightwaypoint import AltitudeReference, FlightWaypoint
|
||||
from .flightwaypointtype import FlightWaypointType
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.ato.flight import Flight
|
||||
from game.coalition import Coalition
|
||||
from game.transfers import MultiGroupTransport
|
||||
from game.theater.theatergroup import TheaterGroup
|
||||
from .flight import Flight
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
@ -2,14 +2,14 @@ from __future__ import annotations
|
||||
|
||||
import itertools
|
||||
import random
|
||||
from typing import TYPE_CHECKING, Optional
|
||||
from typing import Optional, TYPE_CHECKING
|
||||
|
||||
from game.ato.flighttype import FlightType
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from game.squadrons.operatingbases import OperatingBases
|
||||
from game.squadrons.squadrondef import SquadronDef
|
||||
from game.theater import ControlPoint
|
||||
from gen.flights.ai_flight_planner_db import aircraft_for_task, tasks_for_aircraft
|
||||
from game.ato.flighttype import FlightType
|
||||
from game.ato.ai_flight_planner_db import aircraft_for_task, tasks_for_aircraft
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.factions.faction import Faction
|
||||
@ -56,7 +56,7 @@ class SquadronDefGenerator:
|
||||
|
||||
@staticmethod
|
||||
def _make_random_nickname() -> str:
|
||||
from gen.naming import ANIMALS
|
||||
from game.naming import ANIMALS
|
||||
|
||||
animal = random.choice(ANIMALS)
|
||||
adjective = random.choice(
|
||||
|
||||
@ -8,7 +8,7 @@ from typing import Iterator, Dict, TYPE_CHECKING
|
||||
|
||||
from game.theater import MissionTarget
|
||||
from game.ato.flighttype import FlightType
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.traveltime import TotEstimator
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.coalition import Coalition
|
||||
|
||||
@ -19,7 +19,7 @@ from game.theater.theatergroundobject import (
|
||||
NavalGroundObject,
|
||||
)
|
||||
from game.utils import meters, nautical_miles
|
||||
from gen.flights.closestairfields import ClosestAirfields, ObjectiveDistanceCache
|
||||
from game.ato.closestairfields import ClosestAirfields, ObjectiveDistanceCache
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game import Game
|
||||
|
||||
@ -12,7 +12,7 @@ from ..db.database import Database
|
||||
if TYPE_CHECKING:
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from game.squadrons.airwing import AirWing
|
||||
from gen.flights.closestairfields import ClosestAirfields
|
||||
from game.ato.closestairfields import ClosestAirfields
|
||||
from .missionproposals import ProposedFlight
|
||||
|
||||
|
||||
|
||||
@ -17,8 +17,8 @@ from game.settings import Settings
|
||||
from game.squadrons import AirWing
|
||||
from game.theater import ConflictTheater
|
||||
from game.threatzones import ThreatZones
|
||||
from gen.flights.closestairfields import ObjectiveDistanceCache
|
||||
from gen.flights.flightplan import FlightPlanBuilder
|
||||
from game.ato.closestairfields import ObjectiveDistanceCache
|
||||
from game.ato.flightplan import FlightPlanBuilder
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.ato import Flight
|
||||
|
||||
@ -6,8 +6,8 @@ from typing import TYPE_CHECKING
|
||||
|
||||
from game.commander.tasks.theatercommandertask import TheaterCommanderTask
|
||||
from game.commander.theaterstate import TheaterState
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
from game.theater import FrontLine
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.coalition import Coalition
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from game.commander.tasks.frontlinestancetask import FrontLineStanceTask
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
|
||||
|
||||
class AggressiveAttack(FrontLineStanceTask):
|
||||
|
||||
@ -2,7 +2,7 @@ from __future__ import annotations
|
||||
|
||||
from game.commander.tasks.frontlinestancetask import FrontLineStanceTask
|
||||
from game.commander.theaterstate import TheaterState
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
|
||||
|
||||
class BreakthroughAttack(FrontLineStanceTask):
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from game.commander.tasks.frontlinestancetask import FrontLineStanceTask
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
|
||||
|
||||
class DefensiveStance(FrontLineStanceTask):
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from game.commander.tasks.frontlinestancetask import FrontLineStanceTask
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
|
||||
|
||||
class EliminationAttack(FrontLineStanceTask):
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from game.commander.tasks.frontlinestancetask import FrontLineStanceTask
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
|
||||
|
||||
class RetreatStance(FrontLineStanceTask):
|
||||
|
||||
@ -5,11 +5,12 @@ import itertools
|
||||
import math
|
||||
from collections.abc import Iterator
|
||||
from dataclasses import dataclass
|
||||
from typing import Any, Optional, TYPE_CHECKING, Union
|
||||
from typing import Optional, TYPE_CHECKING, Union
|
||||
|
||||
from game.commander.garrisons import Garrisons
|
||||
from game.commander.objectivefinder import ObjectiveFinder
|
||||
from game.db import GameDb
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
from game.htn import WorldState
|
||||
from game.profiling import MultiEventTracer
|
||||
from game.settings import Settings
|
||||
@ -22,7 +23,6 @@ from game.theater.theatergroundobject import (
|
||||
VehicleGroupGroundObject,
|
||||
)
|
||||
from game.threatzones import ThreatZones
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game import Game
|
||||
|
||||
@ -15,13 +15,12 @@ from dcs.task import CAP, CAS, PinpointStrike
|
||||
from dcs.vehicles import AirDefence
|
||||
from faker import Faker
|
||||
|
||||
from game.ground_forces.ai_ground_planner import GroundPlanner
|
||||
from game.models.game_stats import GameStats
|
||||
from game.plugins import LuaPluginManager
|
||||
from game.utils import Distance
|
||||
from gen import naming
|
||||
from gen.flights.closestairfields import ObjectiveDistanceCache
|
||||
from gen.ground_forces.ai_ground_planner import GroundPlanner
|
||||
from . import persistency
|
||||
from game.ato.closestairfields import ObjectiveDistanceCache
|
||||
from . import naming, persistency
|
||||
from .ato.flighttype import FlightType
|
||||
from .campaignloader import CampaignAirWingConfig
|
||||
from .coalition import Coalition
|
||||
|
||||
@ -7,11 +7,11 @@ from typing import Dict, List, TYPE_CHECKING
|
||||
|
||||
from game.data.units import UnitClass
|
||||
from game.dcs.groundunittype import GroundUnitType
|
||||
from game.theater import ControlPoint
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from .combat_stance import CombatStance
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game import Game
|
||||
from game.theater import ControlPoint
|
||||
|
||||
MAX_COMBAT_GROUP_PER_CP = 10
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
import logging
|
||||
from datetime import datetime
|
||||
from typing import Any, Optional
|
||||
|
||||
from dcs.task import (
|
||||
@ -24,7 +23,7 @@ from dcs.task import (
|
||||
from dcs.unitgroup import FlyingGroup
|
||||
|
||||
from game.ato import Flight, FlightType
|
||||
from gen.flights.flightplan import AwacsFlightPlan, RefuelingFlightPlan
|
||||
from game.ato.flightplan import AwacsFlightPlan, RefuelingFlightPlan
|
||||
|
||||
|
||||
class AircraftBehavior:
|
||||
|
||||
@ -21,13 +21,13 @@ from game.missiongenerator.airsupport import AirSupport
|
||||
from game.missiongenerator.lasercoderegistry import LaserCodeRegistry
|
||||
from game.radio.radios import RadioRegistry
|
||||
from game.radio.tacan import TacanRegistry
|
||||
from game.runways import RunwayData
|
||||
from game.settings import Settings
|
||||
from game.theater.controlpoint import (
|
||||
Airfield,
|
||||
ControlPoint,
|
||||
)
|
||||
from game.unitmap import UnitMap
|
||||
from gen.runways import RunwayData
|
||||
from .aircraftpainter import AircraftPainter
|
||||
from .flightdata import FlightData
|
||||
from .flightgroupconfigurator import FlightGroupConfigurator
|
||||
|
||||
@ -6,13 +6,13 @@ from typing import Optional, TYPE_CHECKING
|
||||
|
||||
from dcs.flyingunit import FlyingUnit
|
||||
|
||||
from gen.callsigns import create_group_callsign_from_unit
|
||||
from game.callsigns import create_group_callsign_from_unit
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.ato import FlightType, FlightWaypoint, Package
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from game.radio.radios import RadioFrequency
|
||||
from gen.runways import RunwayData
|
||||
from game.runways import RunwayData
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
|
||||
@ -11,15 +11,15 @@ from dcs.unit import Skill
|
||||
from dcs.unitgroup import FlyingGroup
|
||||
|
||||
from game.ato import Flight, FlightType
|
||||
from game.callsigns import callsign_for_support_unit
|
||||
from game.data.weapons import Pylon, WeaponType as WeaponTypeEnum
|
||||
from game.missiongenerator.airsupport import AirSupport, AwacsInfo, TankerInfo
|
||||
from game.missiongenerator.lasercoderegistry import LaserCodeRegistry
|
||||
from game.radio.radios import RadioFrequency, RadioRegistry
|
||||
from game.radio.tacan import TacanBand, TacanRegistry, TacanUsage
|
||||
from game.runways import RunwayData
|
||||
from game.squadrons import Pilot
|
||||
from gen.callsigns import callsign_for_support_unit
|
||||
from gen.flights.flightplan import AwacsFlightPlan, RefuelingFlightPlan
|
||||
from gen.runways import RunwayData
|
||||
from game.ato.flightplan import AwacsFlightPlan, RefuelingFlightPlan
|
||||
from .aircraftbehavior import AircraftBehavior
|
||||
from .aircraftpainter import AircraftPainter
|
||||
from .flightdata import FlightData
|
||||
|
||||
@ -15,10 +15,10 @@ from dcs.unitgroup import FlyingGroup, ShipGroup, StaticGroup
|
||||
from game.ato import Flight
|
||||
from game.ato.flightstate import InFlight
|
||||
from game.ato.starttype import StartType
|
||||
from game.naming import namegen
|
||||
from game.theater import Airfield, ControlPoint, Fob, NavalControlPoint, OffMapSpawn
|
||||
from game.utils import feet, meters
|
||||
from gen.flights.traveltime import GroundSpeed
|
||||
from gen.naming import namegen
|
||||
from game.ato.traveltime import GroundSpeed
|
||||
|
||||
WARM_START_HELI_ALT = meters(500)
|
||||
WARM_START_ALTITUDE = meters(3000)
|
||||
|
||||
@ -4,7 +4,7 @@ from dcs.point import MovingPoint
|
||||
from dcs.task import EngageTargets, EngageTargetsInZone, Targets
|
||||
|
||||
from game.utils import nautical_miles
|
||||
from gen.flights.flightplan import CasFlightPlan
|
||||
from game.ato.flightplan import CasFlightPlan
|
||||
from .pydcswaypointbuilder import PydcsWaypointBuilder
|
||||
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@ import logging
|
||||
from dcs.point import MovingPoint
|
||||
from dcs.task import ControlledTask, OptFormation, OrbitAction
|
||||
|
||||
from gen.flights.flightplan import LoiterFlightPlan
|
||||
from game.ato.flightplan import LoiterFlightPlan
|
||||
from .pydcswaypointbuilder import PydcsWaypointBuilder
|
||||
|
||||
|
||||
|
||||
@ -11,7 +11,7 @@ from dcs.task import (
|
||||
)
|
||||
|
||||
from game.ato import FlightType
|
||||
from gen.flights.flightplan import PatrollingFlightPlan
|
||||
from game.ato.flightplan import PatrollingFlightPlan
|
||||
from .pydcswaypointbuilder import PydcsWaypointBuilder
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@ import logging
|
||||
|
||||
from dcs.point import MovingPoint
|
||||
|
||||
from gen.flights.flightplan import PatrollingFlightPlan
|
||||
from game.ato.flightplan import PatrollingFlightPlan
|
||||
from .pydcswaypointbuilder import PydcsWaypointBuilder
|
||||
|
||||
|
||||
|
||||
@ -4,7 +4,7 @@ from dcs.point import MovingPoint
|
||||
from dcs.task import EngageTargets, OptFormation, Targets
|
||||
|
||||
from game.utils import nautical_miles
|
||||
from gen.flights.flightplan import SweepFlightPlan
|
||||
from game.ato.flightplan import SweepFlightPlan
|
||||
from .pydcswaypointbuilder import PydcsWaypointBuilder
|
||||
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import logging
|
||||
from typing import List, Type, Tuple, TYPE_CHECKING
|
||||
from typing import List, TYPE_CHECKING, Tuple, Type
|
||||
|
||||
from dcs.mission import Mission, StartType
|
||||
from dcs.planes import IL_78M, KC130, KC135MPRS, KC_135, PlaneType
|
||||
@ -15,14 +15,13 @@ from dcs.task import (
|
||||
)
|
||||
from dcs.unittype import UnitType
|
||||
|
||||
from game.utils import Heading
|
||||
from gen.callsigns import callsign_for_support_unit
|
||||
from gen.flights.ai_flight_planner_db import AEWC_CAPABLE
|
||||
from gen.naming import namegen
|
||||
from game.callsigns import callsign_for_support_unit
|
||||
from game.naming import namegen
|
||||
from game.radio.radios import RadioRegistry
|
||||
from game.radio.tacan import TacanBand, TacanRegistry, TacanUsage
|
||||
|
||||
from .airsupport import AirSupport, TankerInfo, AwacsInfo
|
||||
from game.utils import Heading
|
||||
from game.ato.ai_flight_planner_db import AEWC_CAPABLE
|
||||
from .airsupport import AirSupport, AwacsInfo, TankerInfo
|
||||
from .frontlineconflictdescription import FrontLineConflictDescription
|
||||
|
||||
if TYPE_CHECKING:
|
||||
|
||||
@ -11,17 +11,15 @@ from typing import Dict, List, TYPE_CHECKING
|
||||
from dcs.mission import Mission
|
||||
from jinja2 import Environment, FileSystemLoader, select_autoescape
|
||||
|
||||
from game.theater import ControlPoint, FrontLine
|
||||
from game.ato.flightwaypoint import FlightWaypoint
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
from game.radio.radios import RadioFrequency
|
||||
from gen.runways import RunwayData
|
||||
|
||||
from game.runways import RunwayData
|
||||
from game.theater import ControlPoint, FrontLine
|
||||
from .aircraft.flightdata import FlightData
|
||||
from .airsupportgenerator import AwacsInfo, TankerInfo
|
||||
from .flotgenerator import JtacInfo
|
||||
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game import Game
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@ from __future__ import annotations
|
||||
import logging
|
||||
import math
|
||||
import random
|
||||
from typing import TYPE_CHECKING, List, Optional, Tuple
|
||||
from typing import List, Optional, TYPE_CHECKING, Tuple
|
||||
|
||||
from dcs import Mission
|
||||
from dcs.action import AITaskPush
|
||||
@ -13,9 +13,9 @@ from dcs.mapping import Point
|
||||
from dcs.point import PointAction
|
||||
from dcs.task import (
|
||||
AFAC,
|
||||
EPLRS,
|
||||
AttackGroup,
|
||||
ControlledTask,
|
||||
EPLRS,
|
||||
FAC,
|
||||
FireAtPoint,
|
||||
GoToWaypoint,
|
||||
@ -25,25 +25,24 @@ from dcs.task import (
|
||||
SetInvisibleCommand,
|
||||
)
|
||||
from dcs.triggers import Event, TriggerOnce
|
||||
from dcs.unit import Vehicle, Skill
|
||||
from dcs.unit import Skill, Vehicle
|
||||
from dcs.unitgroup import VehicleGroup
|
||||
|
||||
from game.callsigns import callsign_for_support_unit
|
||||
from game.data.units import UnitClass
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from game.dcs.groundunittype import GroundUnitType
|
||||
from game.ground_forces.ai_ground_planner import (
|
||||
CombatGroup,
|
||||
CombatGroupRole,
|
||||
DISTANCE_FROM_FRONTLINE,
|
||||
)
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
from game.naming import namegen
|
||||
from game.radio.radios import RadioRegistry
|
||||
from game.theater.controlpoint import ControlPoint
|
||||
from game.unitmap import UnitMap
|
||||
from game.utils import Heading
|
||||
from gen.ground_forces.ai_ground_planner import (
|
||||
DISTANCE_FROM_FRONTLINE,
|
||||
CombatGroup,
|
||||
CombatGroupRole,
|
||||
)
|
||||
from gen.callsigns import callsign_for_support_unit
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from gen.naming import namegen
|
||||
from game.radio.radios import RadioRegistry
|
||||
|
||||
from .airsupport import AirSupport, JtacInfo
|
||||
from .frontlineconflictdescription import FrontLineConflictDescription
|
||||
from .lasercoderegistry import LaserCodeRegistry
|
||||
|
||||
@ -40,15 +40,14 @@ from game.ato.flightwaypointtype import FlightWaypointType
|
||||
from game.data.alic import AlicCodes
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from game.radio.radios import RadioFrequency
|
||||
from game.runways import RunwayData
|
||||
from game.theater import ConflictTheater, LatLon, TheaterGroundObject, TheaterUnit
|
||||
from game.theater.bullseye import Bullseye
|
||||
from game.utils import Distance, UnitSystem, meters, mps, pounds
|
||||
from game.weather import Weather
|
||||
from gen.runways import RunwayData
|
||||
from .aircraft.flightdata import FlightData
|
||||
from .airsupportgenerator import AwacsInfo, TankerInfo
|
||||
from .briefinggenerator import CommInfo, JtacInfo, MissionInfoGenerator
|
||||
from ..dcs.helpers import unit_type_from_name
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game import Game
|
||||
|
||||
@ -10,17 +10,17 @@ from dcs import Mission, Point
|
||||
from dcs.coalition import Coalition
|
||||
from dcs.countries import country_dict
|
||||
|
||||
from game.airfields import AirfieldData
|
||||
from game.dcs.helpers import unit_type_from_name
|
||||
from game.missiongenerator.aircraft.aircraftgenerator import (
|
||||
AircraftGenerator,
|
||||
)
|
||||
from game.naming import namegen
|
||||
from game.radio.radios import RadioFrequency, RadioRegistry
|
||||
from game.radio.tacan import TacanRegistry
|
||||
from game.theater import Airfield, FrontLine
|
||||
from game.theater.bullseye import Bullseye
|
||||
from game.unitmap import UnitMap
|
||||
from gen.airfields import AirfieldData
|
||||
from gen.naming import namegen
|
||||
from .aircraft.flightdata import FlightData
|
||||
from .airsupport import AirSupport
|
||||
from .airsupportgenerator import AirSupportGenerator
|
||||
|
||||
@ -43,6 +43,7 @@ from dcs.vehicles import vehicle_map
|
||||
|
||||
from game.radio.radios import RadioFrequency, RadioRegistry
|
||||
from game.radio.tacan import TacanBand, TacanChannel, TacanRegistry, TacanUsage
|
||||
from game.runways import RunwayData
|
||||
from game.theater import ControlPoint, TheaterGroundObject, TheaterUnit
|
||||
from game.theater.theatergroundobject import (
|
||||
CarrierGroundObject,
|
||||
@ -53,7 +54,6 @@ from game.theater.theatergroundobject import (
|
||||
from game.theater.theatergroup import SceneryUnit, TheaterGroup
|
||||
from game.unitmap import UnitMap
|
||||
from game.utils import Heading, feet, knots, mps
|
||||
from gen.runways import RunwayData
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game import Game
|
||||
|
||||
@ -7,11 +7,11 @@ from typing import Iterator, Optional, TYPE_CHECKING
|
||||
|
||||
from dcs.terrain.terrain import Airport
|
||||
|
||||
from game.airfields import AirfieldData
|
||||
from game.radio.radios import RadioFrequency
|
||||
from game.radio.tacan import TacanChannel
|
||||
from game.utils import Heading
|
||||
from game.weather import Conditions
|
||||
from gen.airfields import AirfieldData
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game.theater import ConflictTheater
|
||||
@ -6,7 +6,7 @@ from shapely.geometry import LineString, Point as ShapelyPoint
|
||||
from game import Game
|
||||
from game.server import GameContext
|
||||
from game.server.leaflet import LeafletPoly, ShapelyUtil
|
||||
from gen.flights.flightplan import CasFlightPlan, PatrollingFlightPlan
|
||||
from game.ato.flightplan import CasFlightPlan, PatrollingFlightPlan
|
||||
|
||||
router: APIRouter = APIRouter(prefix="/flights")
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ from game.ato.flightstate import (
|
||||
WaitingForStart,
|
||||
)
|
||||
from game.ato.starttype import StartType
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.traveltime import TotEstimator
|
||||
from .combat import CombatInitiator, FrozenCombat
|
||||
|
||||
if TYPE_CHECKING:
|
||||
|
||||
@ -4,8 +4,8 @@ import logging
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from game.debriefing import Debriefing
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
from game.theater import ControlPoint
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from ..ato.airtaaskingorder import AirTaskingOrder
|
||||
|
||||
if TYPE_CHECKING:
|
||||
|
||||
@ -5,9 +5,8 @@ from collections import defaultdict
|
||||
from typing import Sequence, Iterator, TYPE_CHECKING, Optional
|
||||
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from gen.flights.ai_flight_planner_db import aircraft_for_task
|
||||
from gen.flights.closestairfields import ObjectiveDistanceCache
|
||||
from .squadrondef import SquadronDef
|
||||
from game.ato.ai_flight_planner_db import aircraft_for_task
|
||||
from game.ato.closestairfields import ObjectiveDistanceCache
|
||||
from .squadrondefloader import SquadronDefLoader
|
||||
from ..campaignloader.squadrondefgenerator import SquadronDefGenerator
|
||||
from ..factions.faction import Faction
|
||||
|
||||
@ -10,7 +10,7 @@ from faker import Faker
|
||||
|
||||
from game.ato import Flight, FlightType, Package
|
||||
from game.settings import AutoAtoBehavior, Settings
|
||||
from gen.flights.flightplan import FlightPlanBuilder
|
||||
from game.ato.flightplan import FlightPlanBuilder
|
||||
from .pilot import Pilot, PilotStatus
|
||||
from ..db.database import Database
|
||||
from ..utils import meters
|
||||
|
||||
@ -62,7 +62,7 @@ class SquadronDef:
|
||||
|
||||
@classmethod
|
||||
def from_yaml(cls, path: Path) -> SquadronDef:
|
||||
from gen.flights.ai_flight_planner_db import tasks_for_aircraft
|
||||
from game.ato.ai_flight_planner_db import tasks_for_aircraft
|
||||
from game.ato import FlightType
|
||||
|
||||
with path.open(encoding="utf8") as squadron_file:
|
||||
|
||||
@ -27,13 +27,12 @@ from dcs.ships import Forrestal, KUZNECOW, LHA_Tarawa, Stennis, Type_071
|
||||
from dcs.terrain.terrain import Airport, ParkingSlot
|
||||
from dcs.unitgroup import ShipGroup, StaticGroup
|
||||
|
||||
from game.dcs.helpers import unit_type_from_name
|
||||
from game.ground_forces.combat_stance import CombatStance
|
||||
from game.point_with_heading import PointWithHeading
|
||||
from game.runways import RunwayAssigner, RunwayData
|
||||
from game.scenery_group import SceneryGroup
|
||||
from game.utils import Heading
|
||||
from gen.flights.closestairfields import ObjectiveDistanceCache
|
||||
from gen.ground_forces.combat_stance import CombatStance
|
||||
from gen.runways import RunwayAssigner, RunwayData
|
||||
from game.ato.closestairfields import ObjectiveDistanceCache
|
||||
from .base import Base
|
||||
from .missiontarget import MissionTarget
|
||||
from .theatergroundobject import (
|
||||
|
||||
@ -4,21 +4,20 @@ import logging
|
||||
import random
|
||||
from dataclasses import dataclass
|
||||
from datetime import datetime
|
||||
from typing import List, Optional
|
||||
from typing import List
|
||||
|
||||
import dcs.statics
|
||||
|
||||
from game import Game
|
||||
from game.factions.faction import Faction
|
||||
from game.naming import namegen
|
||||
from game.scenery_group import SceneryGroup
|
||||
from game.theater import PointWithHeading
|
||||
from game.theater.theatergroundobject import (
|
||||
BuildingGroundObject,
|
||||
)
|
||||
from .theatergroup import SceneryUnit, TheaterGroup
|
||||
from game.utils import Heading
|
||||
from game.version import VERSION
|
||||
from gen.naming import namegen
|
||||
from . import (
|
||||
ConflictTheater,
|
||||
ControlPoint,
|
||||
@ -26,10 +25,11 @@ from . import (
|
||||
Fob,
|
||||
OffMapSpawn,
|
||||
)
|
||||
from ..campaignloader.campaignairwingconfig import CampaignAirWingConfig
|
||||
from ..data.groups import GroupRole, GroupTask
|
||||
from ..armedforces.forcegroup import ForceGroup
|
||||
from .theatergroup import SceneryUnit, TheaterGroup
|
||||
from ..armedforces.armedforces import ArmedForces
|
||||
from ..armedforces.forcegroup import ForceGroup
|
||||
from ..campaignloader.campaignairwingconfig import CampaignAirWingConfig
|
||||
from ..data.groups import GroupTask
|
||||
from ..profiling import logged_duration
|
||||
from ..settings import Settings
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from functools import singledispatchmethod
|
||||
from typing import Optional, TYPE_CHECKING, Union, Iterable, Any
|
||||
from typing import Optional, TYPE_CHECKING, Union, Iterable
|
||||
|
||||
from dcs.mapping import Point as DcsPoint
|
||||
from shapely.geometry import (
|
||||
@ -16,7 +16,7 @@ from shapely.ops import nearest_points, unary_union
|
||||
from game.data.doctrine import Doctrine
|
||||
from game.theater import ControlPoint, MissionTarget, TheaterGroundObject
|
||||
from game.utils import Distance, meters, nautical_miles
|
||||
from gen.flights.closestairfields import ObjectiveDistanceCache
|
||||
from game.ato.closestairfields import ObjectiveDistanceCache
|
||||
from game.ato import Flight, FlightWaypoint
|
||||
|
||||
if TYPE_CHECKING:
|
||||
|
||||
@ -45,6 +45,7 @@ from game.ato.flighttype import FlightType
|
||||
from game.ato.package import Package
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from game.dcs.groundunittype import GroundUnitType
|
||||
from game.naming import namegen
|
||||
from game.procurement import AircraftProcurementRequest
|
||||
from game.theater import ControlPoint, MissionTarget
|
||||
from game.theater.transitnetwork import (
|
||||
@ -52,10 +53,9 @@ from game.theater.transitnetwork import (
|
||||
TransitNetwork,
|
||||
)
|
||||
from game.utils import meters, nautical_miles
|
||||
from gen.flights.ai_flight_planner_db import aircraft_for_task
|
||||
from gen.flights.closestairfields import ObjectiveDistanceCache
|
||||
from gen.flights.flightplan import FlightPlanBuilder
|
||||
from gen.naming import namegen
|
||||
from game.ato.ai_flight_planner_db import aircraft_for_task
|
||||
from game.ato.closestairfields import ObjectiveDistanceCache
|
||||
from game.ato.flightplan import FlightPlanBuilder
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from game import Game
|
||||
|
||||
@ -21,7 +21,7 @@ from game.sim.gameupdateevents import GameUpdateEvents
|
||||
from game.squadrons.squadron import Pilot, Squadron
|
||||
from game.theater.missiontarget import MissionTarget
|
||||
from game.transfers import PendingTransfers, TransferOrder
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.traveltime import TotEstimator
|
||||
from qt_ui.simcontroller import SimController
|
||||
from qt_ui.uiconstants import AIRCRAFT_ICONS
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@ from game import Game, persistency
|
||||
from game.ato.package import Package
|
||||
from game.profiling import logged_duration
|
||||
from game.utils import meters
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.traveltime import TotEstimator
|
||||
from qt_ui.models import GameModel
|
||||
from qt_ui.simcontroller import SimController
|
||||
from qt_ui.widgets.QBudgetBox import QBudgetBox
|
||||
|
||||
@ -4,7 +4,7 @@ from typing import Iterable, Type
|
||||
from PySide2.QtWidgets import QComboBox
|
||||
from dcs.unittype import FlyingType
|
||||
|
||||
from gen.flights.ai_flight_planner_db import aircraft_for_task
|
||||
from game.ato.ai_flight_planner_db import aircraft_for_task
|
||||
from game.ato.flighttype import FlightType
|
||||
|
||||
|
||||
|
||||
@ -10,7 +10,7 @@ from PySide2.QtWidgets import (
|
||||
QFrame,
|
||||
)
|
||||
|
||||
import gen.flights.ai_flight_planner_db
|
||||
import game.ato.ai_flight_planner_db
|
||||
from game.dcs.aircrafttype import AircraftType
|
||||
from game.dcs.groundunittype import GroundUnitType
|
||||
from game.dcs.unittype import UnitType
|
||||
@ -105,26 +105,26 @@ class QUnitInfoWindow(QDialog):
|
||||
def generateAircraftTasks(self) -> str:
|
||||
aircraft_tasks = ""
|
||||
unit_type = self.unit_type.dcs_unit_type
|
||||
if unit_type in gen.flights.ai_flight_planner_db.CAP_CAPABLE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.CAP_CAPABLE:
|
||||
aircraft_tasks = (
|
||||
aircraft_tasks
|
||||
+ f"{FlightType.BARCAP}, {FlightType.ESCORT}, {FlightType.INTERCEPTION}, {FlightType.SWEEP}, {FlightType.TARCAP}, "
|
||||
)
|
||||
if unit_type in gen.flights.ai_flight_planner_db.CAS_CAPABLE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.CAS_CAPABLE:
|
||||
aircraft_tasks = (
|
||||
aircraft_tasks
|
||||
+ f"{FlightType.CAS}, {FlightType.BAI}, {FlightType.OCA_AIRCRAFT}, "
|
||||
)
|
||||
if unit_type in gen.flights.ai_flight_planner_db.SEAD_CAPABLE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.SEAD_CAPABLE:
|
||||
aircraft_tasks = aircraft_tasks + f"{FlightType.SEAD}, "
|
||||
if unit_type in gen.flights.ai_flight_planner_db.DEAD_CAPABLE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.DEAD_CAPABLE:
|
||||
aircraft_tasks = aircraft_tasks + f"{FlightType.DEAD}, "
|
||||
if unit_type in gen.flights.ai_flight_planner_db.ANTISHIP_CAPABLE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.ANTISHIP_CAPABLE:
|
||||
aircraft_tasks = aircraft_tasks + f"{FlightType.ANTISHIP}, "
|
||||
if unit_type in gen.flights.ai_flight_planner_db.RUNWAY_ATTACK_CAPABLE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.RUNWAY_ATTACK_CAPABLE:
|
||||
aircraft_tasks = aircraft_tasks + f"{FlightType.OCA_RUNWAY}, "
|
||||
if unit_type in gen.flights.ai_flight_planner_db.STRIKE_CAPABLE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.STRIKE_CAPABLE:
|
||||
aircraft_tasks = aircraft_tasks + f"{FlightType.STRIKE}, "
|
||||
if unit_type in gen.flights.ai_flight_planner_db.REFUELING_CAPABALE:
|
||||
if unit_type in game.ato.ai_flight_planner_db.REFUELING_CAPABALE:
|
||||
aircraft_tasks = aircraft_tasks + f"{FlightType.REFUELING}, "
|
||||
return aircraft_tasks[:-2]
|
||||
|
||||
@ -2,7 +2,7 @@ from PySide2.QtGui import QStandardItem, QIcon
|
||||
|
||||
from game.ato.package import Package
|
||||
from game.ato.flight import Flight
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.traveltime import TotEstimator
|
||||
from qt_ui.uiconstants import AIRCRAFT_ICONS
|
||||
|
||||
|
||||
|
||||
@ -19,7 +19,7 @@ from game.ato.flight import Flight
|
||||
from game.ato.package import Package
|
||||
from game.game import Game
|
||||
from game.theater.missiontarget import MissionTarget
|
||||
from gen.flights.flightplan import FlightPlanBuilder, PlanningError
|
||||
from game.ato.flightplan import FlightPlanBuilder, PlanningError
|
||||
from qt_ui.models import AtoModel, GameModel, PackageModel
|
||||
from qt_ui.uiconstants import EVENT_ICONS
|
||||
from qt_ui.widgets.ato import QFlightList
|
||||
|
||||
@ -7,7 +7,7 @@ from PySide2.QtWidgets import QAbstractItemView, QListView
|
||||
from qt_ui.models import GameModel
|
||||
from qt_ui.windows.mission.QFlightItem import QFlightItem
|
||||
from game.theater.controlpoint import ControlPoint
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.traveltime import TotEstimator
|
||||
|
||||
|
||||
class QPlannedFlightsView(QListView):
|
||||
|
||||
@ -8,7 +8,7 @@ from PySide2.QtWidgets import (
|
||||
|
||||
from game import Game
|
||||
from game.ato.flight import Flight
|
||||
from gen.flights.loadouts import Loadout
|
||||
from game.ato.loadouts import Loadout
|
||||
from .QLoadoutEditor import QLoadoutEditor
|
||||
from .propertyeditor import PropertyEditor
|
||||
|
||||
|
||||
@ -7,7 +7,7 @@ from PySide2.QtWidgets import QComboBox
|
||||
from game import Game
|
||||
from game.data.weapons import Pylon, Weapon
|
||||
from game.ato.flight import Flight
|
||||
from gen.flights.loadouts import Loadout
|
||||
from game.ato.loadouts import Loadout
|
||||
|
||||
|
||||
class QPylonEditor(QComboBox):
|
||||
|
||||
@ -4,8 +4,8 @@ from PySide2.QtWidgets import QGroupBox, QLabel, QMessageBox, QVBoxLayout
|
||||
|
||||
from game import Game
|
||||
from game.ato.flight import Flight
|
||||
from gen.flights.flightplan import FlightPlanBuilder, PlanningError
|
||||
from gen.flights.traveltime import TotEstimator
|
||||
from game.ato.flightplan import FlightPlanBuilder, PlanningError
|
||||
from game.ato.traveltime import TotEstimator
|
||||
from qt_ui.models import PackageModel
|
||||
from qt_ui.widgets.QLabeledWidget import QLabeledWidget
|
||||
from qt_ui.widgets.combos.QArrivalAirfieldSelector import QArrivalAirfieldSelector
|
||||
|
||||
@ -16,13 +16,13 @@ from game.ato.package import Package
|
||||
from game.ato.flighttype import FlightType
|
||||
from game.ato.flightwaypoint import FlightWaypoint
|
||||
from game.ato.flight import Flight
|
||||
from gen.flights.flightplan import (
|
||||
from game.ato.flightplan import (
|
||||
CustomFlightPlan,
|
||||
FlightPlanBuilder,
|
||||
PlanningError,
|
||||
StrikeFlightPlan,
|
||||
)
|
||||
from gen.flights.loadouts import Loadout
|
||||
from game.ato.loadouts import Loadout
|
||||
from qt_ui.windows.mission.flight.waypoints.QFlightWaypointList import (
|
||||
QFlightWaypointList,
|
||||
)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user