Set units on the frontline to Hidden On MFD. (#2669)

All groups (friendly and enemy) that are part of the front line are set
to `Hidden On MFD`. This is a group level filter, and can not be applied
on a per unit basis.
This commit is contained in:
SnappyComebacks 2022-12-28 14:19:33 -07:00 committed by GitHub
parent 5db82f733f
commit 321de8d4ec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 3 deletions

View File

@ -4,6 +4,8 @@ Saves from 6.x are not compatible with 7.0.
## Features/Improvements ## Features/Improvements
* **[Mission Generation]** Units on the front line are now hidden on MFDs.
## Fixes ## Fixes
# 6.1.0 # 6.1.0

View File

@ -215,7 +215,7 @@ class FlotGenerator:
u = random.choices( u = random.choices(
manpads, weights=[m.spawn_weight for m in manpads] manpads, weights=[m.spawn_weight for m in manpads]
)[0] )[0]
self.mission.vehicle_group( infantry_group = self.mission.vehicle_group(
side, side,
namegen.next_infantry_name(side, u), namegen.next_infantry_name(side, u),
u.dcs_unit_type, u.dcs_unit_type,
@ -224,6 +224,7 @@ class FlotGenerator:
heading=forward_heading.degrees, heading=forward_heading.degrees,
move_formation=PointAction.OffRoad, move_formation=PointAction.OffRoad,
) )
infantry_group.hidden_on_mfd = True
return return
possible_infantry_units = set(faction.infantry_with_class(UnitClass.INFANTRY)) possible_infantry_units = set(faction.infantry_with_class(UnitClass.INFANTRY))
@ -240,7 +241,7 @@ class FlotGenerator:
weights=[u.spawn_weight for u in infantry_choices], weights=[u.spawn_weight for u in infantry_choices],
k=INFANTRY_GROUP_SIZE, k=INFANTRY_GROUP_SIZE,
) )
self.mission.vehicle_group( infantry_group = self.mission.vehicle_group(
side, side,
namegen.next_infantry_name(side, units[0]), namegen.next_infantry_name(side, units[0]),
units[0].dcs_unit_type, units[0].dcs_unit_type,
@ -249,10 +250,11 @@ class FlotGenerator:
heading=forward_heading.degrees, heading=forward_heading.degrees,
move_formation=PointAction.OffRoad, move_formation=PointAction.OffRoad,
) )
infantry_group.hidden_on_mfd = True
for unit in units[1:]: for unit in units[1:]:
position = infantry_position.random_point_within(55, 5) position = infantry_position.random_point_within(55, 5)
self.mission.vehicle_group( infantry_group = self.mission.vehicle_group(
side, side,
namegen.next_infantry_name(side, unit), namegen.next_infantry_name(side, unit),
unit.dcs_unit_type, unit.dcs_unit_type,
@ -261,6 +263,7 @@ class FlotGenerator:
heading=forward_heading.degrees, heading=forward_heading.degrees,
move_formation=PointAction.OffRoad, move_formation=PointAction.OffRoad,
) )
infantry_group.hidden_on_mfd = True
def _set_reform_waypoint( def _set_reform_waypoint(
self, dcs_group: VehicleGroup, forward_heading: Heading self, dcs_group: VehicleGroup, forward_heading: Heading
@ -771,6 +774,7 @@ class FlotGenerator:
group_size=count, group_size=count,
heading=heading.degrees, heading=heading.degrees,
) )
group.hidden_on_mfd = True
self.unit_map.add_front_line_units(group, cp, unit_type) self.unit_map.add_front_line_units(group, cp, unit_type)