from module.base.base import ModuleBase from module.campaign.run import CampaignRun from module.campaign.gems_farming import GemsFarming from module.config.utils import deep_get from module.logger import logger _AutoData = {} class AutoMap(ModuleBase): def __init__(self, config, device): super().__init__(config, device) def run(self, Name, Fleet, Folder='campaign_main'): global _AutoData logger.info(_AutoData) if _AutoData.get(Name.lower()[0]) is None or deep_get(self.config.data, f"EventAutoFarming.Map{Name[0].upper()}Setting.SwitchFleetAlways"): A = GemsFarming(config=self.config, device=self.device) A.load_campaign(Name, Folder) A.config.Campaign_Name = Name A.config.GemsFarming_FleetNumberInHardMode = Fleet A.event_hard_mode_override() A.AutoSelectShip() _AutoData[Name.lower()[0]] = True return CampaignRun(config=self.config, device=self.device).run( name=self.config.Campaign_Name, folder=self.config.Campaign_Event, mode=self.config.Campaign_Mode)