From e2100092905cee99c2beaa8b182f62c020451ade Mon Sep 17 00:00:00 2001 From: Zuosizhu Date: Mon, 2 Feb 2026 21:56:24 +0800 Subject: [PATCH] Fix: Some CL1 problems caused by luahook for entering 2 combats in too short --- module/os/map.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/module/os/map.py b/module/os/map.py index 861fceab3..958bcfca5 100644 --- a/module/os/map.py +++ b/module/os/map.py @@ -6,6 +6,7 @@ import inflection import scheduler_watcher from module.base.timer import Timer from module.combat_ui.assets import PAUSE +from module.combat.assets import BATTLE_STATUS_S, BATTLE_STATUS_B, BATTLE_STATUS_C, BATTLE_STATUS_A, BATTLE_STATUS_D from module.config.utils import get_os_reset_remain from module.config.config import deep_get from module.exception import CampaignEnd, GameTooManyClickError, MapWalkError, RequestHumanTakeover, ScriptError @@ -545,6 +546,20 @@ class OSMap(OSFleet, Map, GlobeCamera, StrategicSearchHandler): success = False logger.warning('Fleet died, stop auto search') continue + if self.info_bar_count()==1: + self.ensure_no_info_bar() + for __ in self.loop(): + if self.appear_then_click(AUTO_SEARCH_OS_MAP_OPTION_ON, offset=(5, 120)): + break + if self.appear(BATTLE_STATUS_S) or self.appear(BATTLE_STATUS_A) or self.appear(BATTLE_STATUS_B)\ + or self.appear(BATTLE_STATUS_C) or self.appear(BATTLE_STATUS_D) or self.is_combat_executing(): + break + if self.handle_map_get_items(): + self.device.sleep(0.3) + self.appear_then_click(AUTO_SEARCH_REWARD, offset=(5, 120)) + break + if self.handle_battle_status(): + self.combat_status(expected_end='no_searching') if self.handle_map_event(): # Auto search can not handle siren searching device. continue