Set Pretense Player Flight Waypoints to CPs (#385)

This commit is contained in:
M Chimiste 2024-10-05 19:12:02 -04:00 committed by GitHub
parent 168ba7bd1e
commit 169ef26329
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -9,6 +9,8 @@ from dcs.unitgroup import FlyingGroup
from game.ato import Flight, FlightType from game.ato import Flight, FlightType
from game.ato.flightmember import FlightMember from game.ato.flightmember import FlightMember
from game.ato.flightwaypoint import FlightWaypoint
from game.ato.flightwaypointtype import FlightWaypointType
from game.data.weapons import Pylon from game.data.weapons import Pylon
from game.lasercodes.lasercoderegistry import LaserCodeRegistry from game.lasercodes.lasercoderegistry import LaserCodeRegistry
from game.missiongenerator.aircraft.aircraftbehavior import AircraftBehavior from game.missiongenerator.aircraft.aircraftbehavior import AircraftBehavior
@ -19,6 +21,9 @@ from game.missiongenerator.aircraft.flightgroupconfigurator import (
FlightGroupConfigurator, FlightGroupConfigurator,
) )
from game.missiongenerator.aircraft.waypoints import WaypointGenerator from game.missiongenerator.aircraft.waypoints import WaypointGenerator
from game.missiongenerator.aircraft.waypoints.pydcswaypointbuilder import (
PydcsWaypointBuilder,
)
from game.missiongenerator.missiondata import MissionData from game.missiongenerator.missiondata import MissionData
from game.radio.radios import RadioRegistry from game.radio.radios import RadioRegistry
from game.radio.tacan import ( from game.radio.tacan import (
@ -95,6 +100,26 @@ class PretenseFlightGroupConfigurator(FlightGroupConfigurator):
self.mission_data, self.mission_data,
).create_waypoints() ).create_waypoints()
if self.flight.client_count >= 1:
waypoints = waypoints[:1]
self.group.points = self.group.points[:1]
for cp in self.game.theater.controlpoints:
PydcsWaypointBuilder(
FlightWaypoint(
name=cp.full_name,
waypoint_type=FlightWaypointType.NAV,
position=cp.position,
alt_type="RADIO",
control_point=cp,
),
self.group,
self.flight,
self.mission,
self.time,
self.mission_data,
).build()
divert_position: Point | None = None divert_position: Point | None = None
if self.flight.divert is not None: if self.flight.divert is not None:
divert_position = self.flight.divert.position divert_position = self.flight.divert.position