def player_defending(self, flights: db.TaskForceDict): assert CAP in flights and len( flights) == 1, "Invalid scrambled flights" cas = self.departure_cp.base.scramble_cas( self.game.settings.multiplier) escort = self.departure_cp.base.scramble_sweep( self.game.settings.multiplier) attackers = self.departure_cp.base.armor op = BaseAttackOperation(game=self.game, attacker_name=self.attacker_name, defender_name=self.defender_name, from_cp=self.from_cp, departure_cp=self.departure_cp, to_cp=self.to_cp) op.setup(cas=assigned_units_from(cas), escort=assigned_units_from(escort), intercept=flights[CAP], attack=attackers, defense=self.to_cp.base.armor, aa=self.to_cp.base.aa) self.operation = op
def player_attacking(self, flights: db.TaskForceDict): assert CAP in flights and CAS in flights and PinpointStrike in flights and len( flights) == 3, "Invalid flights" op = BaseAttackOperation(game=self.game, attacker_name=self.attacker_name, defender_name=self.defender_name, from_cp=self.from_cp, departure_cp=self.departure_cp, to_cp=self.to_cp) defenders = self.to_cp.base.scramble_last_defense() #defenders.update(self.to_cp.base.scramble_cas(self.game.settings.multiplier)) op.setup(cas=flights[CAS], escort=flights[CAP], attack=unitdict_from(flights[PinpointStrike]), intercept=assigned_units_from(defenders), defense=self.to_cp.base.armor, aa=self.to_cp.base.assemble_aa()) self.operation = op