Example #1
0
    def generate(self):
        self.operation.is_awacs_enabled = self.is_awacs_enabled
        self.operation.ca_slots = self.ca_slots

        self.operation.prepare(self.game.theater.terrain, is_quick=False)
        self.operation.generate()
        self.operation.current_mission.save(
            persistency.mission_path_for("liberation_nextturn.miz"))
        self.environment_settings = self.operation.environment_settings
def create_mission(terrain: Terrain) -> Path:
    m = Mission(terrain)

    json_trigger = TriggerStart(comment=f"Load JSON")
    json_lua = m.map_resource.add_resource_file(JSON_LUA)
    json_trigger.add_action(DoScriptFile(json_lua))
    m.triggerrules.triggers.append(json_trigger)

    export_trigger = TriggerStart(comment=f"Load coordinate export")
    export_lua = m.map_resource.add_resource_file(EXPORT_LUA)
    export_trigger.add_action(DoScriptFile(export_lua))
    m.triggerrules.triggers.append(export_trigger)

    mission_path = persistency.mission_path_for(
        f"export_{terrain.name.lower()}.miz")
    m.save(mission_path)
    return Path(mission_path)
Example #3
0
    def launch_mission(self):
        """Finishes planning and waits for mission completion."""
        if not self.ato_has_clients() and not self.confirm_no_client_launch():
            return

        if self.check_no_missing_pilots():
            return

        negative_starts = self.negative_start_packages()
        if negative_starts:
            if not self.confirm_negative_start_time(negative_starts):
                return

        if self.game.settings.fast_forward_to_first_contact:
            with logged_duration("Simulating to first contact"):
                self.sim_controller.run_to_first_contact()
        self.sim_controller.generate_miz(
            persistency.mission_path_for("liberation_nextturn.miz"))

        waiting = QWaitingForMissionResultWindow(self.game,
                                                 self.sim_controller, self)
        waiting.exec_()
 def generate(self) -> UnitMap:
     Operation.prepare(self.game)
     unit_map = Operation.generate()
     Operation.current_mission.save(
         persistency.mission_path_for("liberation_nextturn.miz"))
     return unit_map