diff --git a/game/db.py b/game/db.py index 252112e8..6f5c8ab8 100644 --- a/game/db.py +++ b/game/db.py @@ -1389,6 +1389,8 @@ def upgrade_to_supercarrier(unit, name: str): return CVN_73_George_Washington elif name == "CVN-75 Harry S. Truman": return CVN_75_Harry_S__Truman + elif name == "Carrier Strike Group 8": + return CVN_75_Harry_S__Truman else: return CVN_71_Theodore_Roosevelt elif unit == CV_1143_5_Admiral_Kuznetsov: diff --git a/gen/fleet/carrier_group.py b/gen/fleet/carrier_group.py index a06ebaee..c8be8c7d 100644 --- a/gen/fleet/carrier_group.py +++ b/gen/fleet/carrier_group.py @@ -2,25 +2,54 @@ import random from gen.sam.group_generator import ShipGroupGenerator +from dcs.ships import ( + USS_Arleigh_Burke_IIa, + Ticonderoga_class +) class CarrierGroupGenerator(ShipGroupGenerator): def generate(self): - # Add carrier - if len(self.faction.aircraft_carrier) > 0: + #Carrier Strike Group 8 + if self.faction.carrier_names[0] == "Carrier Strike Group 8": carrier_type = random.choice(self.faction.aircraft_carrier) - self.add_unit(carrier_type, "Carrier", self.position.x, self.position.y, self.heading) + + self.add_unit(carrier_type, "CVN-75 Harry S. Truman", self.position.x, self.position.y, self.heading) + + # Add Arleigh Burke escort + self.add_unit(USS_Arleigh_Burke_IIa, "USS Ramage", self.position.x + 6482, self.position.y + 6667, self.heading) + + self.add_unit(USS_Arleigh_Burke_IIa, "USS Mitscher", self.position.x - 7963, self.position.y + 7037, self.heading) + + self.add_unit(USS_Arleigh_Burke_IIa, "USS Forrest Sherman", self.position.x - 7408, self.position.y - 7408, self.heading) + + self.add_unit(USS_Arleigh_Burke_IIa, "USS Lassen", self.position.x + 8704, self.position.y - 6296, self.heading) + + # Add Ticonderoga escort + if self.heading >= 180: + self.add_unit(Ticonderoga_class, "USS Hué City", self.position.x + 2222, self.position.y - 3333, self.heading) + else: + self.add_unit(Ticonderoga_class, "USS Hué City", self.position.x - 3333, self.position.y + 2222, self.heading) + + + self.get_generated_group().points[0].speed = 20 + ################################################################################################## + # Add carrier for normal generation else: - return + if len(self.faction.aircraft_carrier) > 0: + carrier_type = random.choice(self.faction.aircraft_carrier) + self.add_unit(carrier_type, "Carrier", self.position.x, self.position.y, self.heading) + else: + return - # Add destroyers escort - if len(self.faction.destroyers) > 0: - dd_type = random.choice(self.faction.destroyers) - self.add_unit(dd_type, "DD1", self.position.x + 2500, self.position.y + 4500, self.heading) - self.add_unit(dd_type, "DD2", self.position.x + 2500, self.position.y - 4500, self.heading) + # Add destroyers escort + if len(self.faction.destroyers) > 0: + dd_type = random.choice(self.faction.destroyers) + self.add_unit(dd_type, "DD1", self.position.x + 2500, self.position.y + 4500, self.heading) + self.add_unit(dd_type, "DD2", self.position.x + 2500, self.position.y - 4500, self.heading) - self.add_unit(dd_type, "DD3", self.position.x + 4500, self.position.y + 8500, self.heading) - self.add_unit(dd_type, "DD4", self.position.x + 4500, self.position.y - 8500, self.heading) + self.add_unit(dd_type, "DD3", self.position.x + 4500, self.position.y + 8500, self.heading) + self.add_unit(dd_type, "DD4", self.position.x + 4500, self.position.y - 8500, self.heading) - self.get_generated_group().points[0].speed = 20 + self.get_generated_group().points[0].speed = 20 \ No newline at end of file diff --git a/gen/groundobjectsgen.py b/gen/groundobjectsgen.py index a19f38ae..ced430e5 100644 --- a/gen/groundobjectsgen.py +++ b/gen/groundobjectsgen.py @@ -360,18 +360,21 @@ class CarrierGenerator(GenericCarrierGenerator): def tacan_callsign(self) -> str: # TODO: Assign these properly. - return random.choice([ - "STE", - "CVN", - "CVH", - "CCV", - "ACC", - "ARC", - "GER", - "ABR", - "LIN", - "TRU", - ]) + if self.control_point.name == "Carrier Strike Group 8": + return "TRU" + else: + return random.choice([ + "STE", + "CVN", + "CVH", + "CCV", + "ACC", + "ARC", + "GER", + "ABR", + "LIN", + "TRU", + ]) class LhaGenerator(GenericCarrierGenerator):