Always aim the carrier into the wind.

https://github.com/Khopa/dcs_liberation/issues/543
(cherry picked from commit 8443f61f0ae0e2e3a3035e41198235d42af9235f)
This commit is contained in:
Dan Albert 2020-12-11 19:01:35 -08:00
parent feed55186f
commit fe658eb877

View File

@ -204,10 +204,11 @@ class GenericCarrierGenerator(GenericGroundObjectGenerator):
tacan_callsign = self.tacan_callsign() tacan_callsign = self.tacan_callsign()
icls = next(self.icls_alloc) icls = next(self.icls_alloc)
if self.control_point.target_position is not None: # Always steam into the wind, even if the carrier is being moved.
brc = self.steam_to_target_position(ship_group) # There are multiple unsimulated hours between turns, so we can
else: # count those as the time the carrier uses to move and the mission
brc = self.steam_into_wind(ship_group) # time as the recovery window.
brc = self.steam_into_wind(ship_group)
self.activate_beacons(ship_group, tacan, tacan_callsign, icls) self.activate_beacons(ship_group, tacan, tacan_callsign, icls)
self.add_runway_data(brc or 0, atc, tacan, tacan_callsign, icls) self.add_runway_data(brc or 0, atc, tacan, tacan_callsign, icls)
self._register_unit_group(group, ship_group) self._register_unit_group(group, ship_group)
@ -251,10 +252,6 @@ class GenericCarrierGenerator(GenericGroundObjectGenerator):
return brc return brc
return None return None
def steam_to_target_position(self, group: ShipGroup) -> Optional[int]:
group.add_waypoint(self.control_point.target_position)
return group.position.heading_between_point(self.control_point.target_position)
def tacan_callsign(self) -> str: def tacan_callsign(self) -> str:
raise NotImplementedError raise NotImplementedError