From 9b3544e1ac94178ac444c377b92895690cd7d380 Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Fri, 1 Apr 2022 18:32:39 +0800 Subject: [PATCH] Fix: Handle EMP debuff in opsi that limits fleet steps --- assets/cn/os/FLEET_EMP_DEBUFF.png | Bin 0 -> 7068 bytes assets/en/os/FLEET_EMP_DEBUFF.png | Bin 0 -> 7068 bytes assets/jp/os/FLEET_EMP_DEBUFF.png | Bin 0 -> 7068 bytes assets/tw/os/FLEET_EMP_DEBUFF.png | Bin 0 -> 7068 bytes module/os/assets.py | 1 + module/os/globe.py | 55 ++++++++++++++++++++++++++++-- module/os/operation_siren.py | 10 +++--- 7 files changed, 59 insertions(+), 7 deletions(-) create mode 100644 assets/cn/os/FLEET_EMP_DEBUFF.png create mode 100644 assets/en/os/FLEET_EMP_DEBUFF.png create mode 100644 assets/jp/os/FLEET_EMP_DEBUFF.png create mode 100644 assets/tw/os/FLEET_EMP_DEBUFF.png diff --git a/assets/cn/os/FLEET_EMP_DEBUFF.png b/assets/cn/os/FLEET_EMP_DEBUFF.png new file mode 100644 index 0000000000000000000000000000000000000000..e2693be7744f777f03f8c32cd08a934ec3753a11 GIT binary patch literal 7068 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 0 + + current = self.get_fleet_current_index() + logger.hr(f'Solve EMP debuff on fleet {current}') + self.globe_goto(self.zone_nearest_azur_port(self.zone)) + + logger.info('Find a fleet without EMP debuff') + for fleet in [1, 2, 3, 4]: + self.fleet_set(fleet) + if has_emp_debuff(): + logger.info(f'Fleet {fleet} is under EMP debuff') + continue + else: + logger.info(f'Fleet {fleet} is not under EMP debuff') + break + + logger.info('Solve EMP debuff by going somewhere else') + self.port_goto() + self.fleet_set(current) + + logger.warning('Failed to solve EMP debuff after 5 trial, assume solved') + return True + def action_point_limit_override(self): """ Override user config at the end of every month. @@ -285,3 +328,11 @@ class OSGlobe(OSMap): else: logger.info('Not close to OpSi reset') return False + + def handle_after_auto_search(self): + logger.hr('After auto search', level=2) + solved = False + solved |= self.handle_fleet_repair(revert=False) + solved |= self.handle_fleet_emp_debuff() + logger.info(f'Handle after auto search finished, solved={solved}') + return solved diff --git a/module/os/operation_siren.py b/module/os/operation_siren.py index 404890c8f..51f114e24 100644 --- a/module/os/operation_siren.py +++ b/module/os/operation_siren.py @@ -76,7 +76,7 @@ class OperationSiren(OSGlobe): recon_scan=False, submarine_call=self.config.OpsiFleet_Submarine and result != 'pinned_at_archive_zone') self.run_auto_search() - self.handle_fleet_repair(revert=False) + self.handle_after_auto_search() self.config.check_task_switch() return True @@ -132,7 +132,7 @@ class OperationSiren(OSGlobe): recon_scan=False, submarine_call=self.config.OpsiFleet_Submarine) self.run_auto_search() - if not self.handle_fleet_repair(revert=False): + if not self.handle_after_auto_search(): self.globe_goto(self.zone_nearest_azur_port(zone=zone)) self.config.check_task_switch() else: @@ -148,7 +148,7 @@ class OperationSiren(OSGlobe): recon_scan=False, submarine_call=self.config.OpsiFleet_Submarine) self.run_auto_search() - self.handle_fleet_repair(revert=False) + self.handle_after_auto_search() self.config.check_task_switch() def _os_explore_task_delay(self): @@ -226,7 +226,7 @@ class OperationSiren(OSGlobe): self.run_auto_search() self.config.OpsiExplore_LastZone = zone logger.info(f'Zone cleared: {self.name_to_zone(zone)}') - self.handle_fleet_repair(revert=False) + self.handle_after_auto_search() self.config.check_task_switch() if zone == order[-1]: end() @@ -270,7 +270,7 @@ class OperationSiren(OSGlobe): self.run_auto_search() self.map_exit() - self.handle_fleet_repair(revert=False) + self.handle_after_auto_search() def os_obscure(self): while 1: