From 66fa598e758c34703749db6371e08c8b4f863d6b Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Sat, 28 Feb 2026 04:29:43 +0800 Subject: [PATCH] Fix: Abyssal combat with handle_map_event (#5328) --- module/os/fleet.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/module/os/fleet.py b/module/os/fleet.py index 5dac41aa9..6d0f20bf2 100644 --- a/module/os/fleet.py +++ b/module/os/fleet.py @@ -283,6 +283,13 @@ class OSFleet(OSCamera, Combat, Fleet, OSAsh): clicked_story = False stuck_timer = Timer(20, count=5).start() confirm_timer.reset() + + def abyssal_expected_end(): + # add handle_map_event() because OSCombat.combat_status() removes get_items + if self.handle_map_event(drop=drop): + return False + return self.is_in_map() + for _ in self.loop(skip_first=skip_first_screenshot): # Map event event = self.handle_map_event(drop=drop) @@ -347,7 +354,7 @@ class OSFleet(OSCamera, Combat, Fleet, OSAsh): if self.combat_appear(): # Use ui_back() for testing, because there are too few abyssal loggers every month. # self.ui_back(check_button=self.is_in_map) - self.combat(expected_end=self.is_in_map, fleet_index=self.fleet_show_index, save_get_items=drop) + self.combat(expected_end=abyssal_expected_end, fleet_index=self.fleet_show_index, save_get_items=drop) confirm_timer.reset() stuck_timer.reset() result.add('event') @@ -700,6 +707,7 @@ class OSFleet(OSCamera, Combat, Fleet, OSAsh): logger.hr('BOSS leave') # Update local view self.update_os() + self.predict() click_timer = Timer(3) pause_interval = Timer(0.5, count=1)