1
0
mirror of https://gitee.com/sui-feng-cb/AzurLaneAutoScript1 synced 2026-03-09 18:39:04 +08:00

Fix: Abyssal combat with handle_map_event (#5328)

This commit is contained in:
LmeSzinc 2026-02-28 04:29:43 +08:00
parent bfe67e2922
commit 66fa598e75

View File

@ -283,6 +283,13 @@ class OSFleet(OSCamera, Combat, Fleet, OSAsh):
clicked_story = False clicked_story = False
stuck_timer = Timer(20, count=5).start() stuck_timer = Timer(20, count=5).start()
confirm_timer.reset() 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): for _ in self.loop(skip_first=skip_first_screenshot):
# Map event # Map event
event = self.handle_map_event(drop=drop) event = self.handle_map_event(drop=drop)
@ -347,7 +354,7 @@ class OSFleet(OSCamera, Combat, Fleet, OSAsh):
if self.combat_appear(): if self.combat_appear():
# Use ui_back() for testing, because there are too few abyssal loggers every month. # Use ui_back() for testing, because there are too few abyssal loggers every month.
# self.ui_back(check_button=self.is_in_map) # 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() confirm_timer.reset()
stuck_timer.reset() stuck_timer.reset()
result.add('event') result.add('event')
@ -700,6 +707,7 @@ class OSFleet(OSCamera, Combat, Fleet, OSAsh):
logger.hr('BOSS leave') logger.hr('BOSS leave')
# Update local view # Update local view
self.update_os() self.update_os()
self.predict()
click_timer = Timer(3) click_timer = Timer(3)
pause_interval = Timer(0.5, count=1) pause_interval = Timer(0.5, count=1)