From fca352239133d8a213ea0906dc4cb15a80f8de7f Mon Sep 17 00:00:00 2001 From: guoh064 <50830808+guoh064@users.noreply.github.com> Date: Fri, 1 Aug 2025 00:37:20 +0900 Subject: [PATCH] Fix: wait for intermittent manjuu loading --- module/handler/info_handler.py | 21 ++++++++++++++++++++- module/os_handler/mission.py | 2 +- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/module/handler/info_handler.py b/module/handler/info_handler.py index b5ab2b2d8..f29506e63 100644 --- a/module/handler/info_handler.py +++ b/module/handler/info_handler.py @@ -548,4 +548,23 @@ class InfoHandler(ModuleBase): self.wait_until_manjuu_disappear() return True else: - return False \ No newline at end of file + return False + + def ensure_no_manjuu(self, timeout=1.5, skip_first_screenshot=True): + logger.info('Ensure no manjuu') + manjuu_timer = Timer(timeout, count=6).start() + handled = False + while 1: + if skip_first_screenshot: + skip_first_screenshot = False + else: + self.device.screenshot() + + if self.handle_manjuu(): + manjuu_timer.reset() + handled = True + + if manjuu_timer.reached(): + break + + return handled \ No newline at end of file diff --git a/module/os_handler/mission.py b/module/os_handler/mission.py index 3b911d27c..051704721 100644 --- a/module/os_handler/mission.py +++ b/module/os_handler/mission.py @@ -202,7 +202,7 @@ class MissionHandler(GlobeOperation, ZoneManager): else: self.device.screenshot() - if self.handle_manjuu(): + if self.ensure_no_manjuu(): confirm_timer.reset() continue if self.info_bar_count():