Finish moving gen into game.

This commit is contained in:
Dan Albert 2022-02-22 00:10:31 -08:00
parent 3e08e0e8b6
commit ac80c4adc1
68 changed files with 129 additions and 149 deletions

View File

@ -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

View File

@ -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

View File

@ -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,

View File

@ -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=[]

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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

View File

@ -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:

View File

@ -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)

View File

@ -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(

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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):

View File

@ -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):

View File

@ -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):

View File

@ -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):

View File

@ -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):

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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")

View File

@ -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:

View File

@ -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:

View File

@ -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

View File

@ -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

View File

@ -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:

View 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 (

View File

@ -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

View File

@ -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:

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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]

View File

@ -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

View File

@ -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

View File

@ -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):

View File

@ -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

View File

@ -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):

View File

@ -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

View File

@ -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,
)