dcs_liberation/gen/sam/sam_rapier.py
RndName f250be97c7 remove prices from sam generators
The prices are only estimations due to randomization. the real price will be only known when the generator was used and the final units are known

(cherry picked from commit b2db27f9aa06ddbeb6c9e87686abb04cd2f2bb16)
2021-08-08 12:52:04 -07:00

56 lines
1.3 KiB
Python

import random
from dcs.vehicles import AirDefence
from gen.sam.airdefensegroupgenerator import (
AirDefenseRange,
AirDefenseGroupGenerator,
SkynetRole,
)
class RapierGenerator(AirDefenseGroupGenerator):
"""
This generate a Rapier Group
"""
name = "Rapier AA Site"
def generate(self):
self.add_unit(
AirDefence.Rapier_fsa_blindfire_radar,
"BT",
self.position.x,
self.position.y,
self.heading,
)
self.add_unit(
AirDefence.Rapier_fsa_optical_tracker_unit,
"OT",
self.position.x + 20,
self.position.y,
self.heading,
)
num_launchers = 2
positions = self.get_circular_position(
num_launchers, launcher_distance=80, coverage=240
)
for i, position in enumerate(positions):
self.add_unit(
AirDefence.Rapier_fsa_launcher,
"LN#" + str(i),
position[0],
position[1],
position[2],
)
@classmethod
def range(cls) -> AirDefenseRange:
return AirDefenseRange.Short
@classmethod
def primary_group_role(cls) -> SkynetRole:
return SkynetRole.Sam