reworked the skynet group name generation

- added information about the role of the aa site
- moved handling of ground name from tgo to the sam generator to make the tgo cleaner
- adjusted the skynet-config lua to the changes

(cherry picked from commit de443fa3f0)
This commit is contained in:
RndName
2021-07-01 16:00:04 +02:00
committed by Dan Albert
parent a8bd3df46f
commit 201fe121ff
11 changed files with 97 additions and 35 deletions

View File

@@ -483,7 +483,7 @@ class Game:
self.current_unit_id += 1
return self.current_unit_id
def next_group_id(self):
def next_group_id(self) -> int:
"""
Next unit id for pre-generated units
"""

View File

@@ -460,9 +460,9 @@ class CoastalSiteGroundObject(TheaterGroundObject):
return False
# TODO: Differentiate types.
# This type gets used both for AA sites (SAM, AAA, or SHORAD). These should each
# be split into their own types.
# The SamGroundObject represents all type of AA
# The TGO can have multiple types of units (AAA,SAM,Support...)
# Differentiation can be made during generation with the airdefensegroupgenerator
class SamGroundObject(TheaterGroundObject):
def __init__(
self,
@@ -481,18 +481,6 @@ class SamGroundObject(TheaterGroundObject):
dcs_identifier="AA",
sea_object=False,
)
# Set by the SAM unit generator if the generated group is compatible
# with Skynet.
self.skynet_capable = False
@property
def group_name(self) -> str:
if self.skynet_capable:
# Prefix the group names of SAM sites with the side color so Skynet
# can find them.
return f"{self.faction_color}|SAM|{self.group_id}"
else:
return super().group_name
def mission_types(self, for_player: bool) -> Iterator[FlightType]:
from gen.flights.flight import FlightType