mirror of
https://gitee.com/sui-feng-cb/AzurLaneAutoScript1
synced 2026-03-19 23:33:33 +08:00
Fix: Auto search finish check
- Fix argument of triggered_stop_condition in war archives
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
from module.base.timer import Timer
|
||||||
from module.combat.assets import *
|
from module.combat.assets import *
|
||||||
from module.combat.combat import Combat
|
from module.combat.combat import Combat
|
||||||
from module.exception import CampaignEnd
|
from module.exception import CampaignEnd
|
||||||
@@ -7,6 +8,7 @@ from module.map.assets import *
|
|||||||
|
|
||||||
class AutoSearchCombat(Combat):
|
class AutoSearchCombat(Combat):
|
||||||
fleets_reversed: bool # Define in MapOperation
|
fleets_reversed: bool # Define in MapOperation
|
||||||
|
_auto_search_in_stage_timer = Timer(3, count=6)
|
||||||
|
|
||||||
def get_fleet_current_index(self):
|
def get_fleet_current_index(self):
|
||||||
"""
|
"""
|
||||||
@@ -24,6 +26,24 @@ class AutoSearchCombat(Combat):
|
|||||||
logger.warning('Unknown fleet current index, use 1 by default')
|
logger.warning('Unknown fleet current index, use 1 by default')
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
def _handle_auto_search_menu_missing(self):
|
||||||
|
"""
|
||||||
|
Sometimes game is bugged, auto search menu is not shown.
|
||||||
|
After BOSS battle, it enters campaign directly.
|
||||||
|
To handle this, if game in campaign for a certain time, it means auto search ends.
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
bool: If triggered
|
||||||
|
"""
|
||||||
|
if self.is_in_stage():
|
||||||
|
if self._auto_search_in_stage_timer.reached():
|
||||||
|
logger.info('Catch auto search menu missing')
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
self._auto_search_in_stage_timer.reset()
|
||||||
|
|
||||||
|
return False
|
||||||
|
|
||||||
def auto_search_moving(self, skip_first_screenshot=True):
|
def auto_search_moving(self, skip_first_screenshot=True):
|
||||||
"""
|
"""
|
||||||
Pages:
|
Pages:
|
||||||
@@ -60,8 +80,7 @@ class AutoSearchCombat(Combat):
|
|||||||
break
|
break
|
||||||
if self.is_in_auto_search_menu():
|
if self.is_in_auto_search_menu():
|
||||||
raise CampaignEnd
|
raise CampaignEnd
|
||||||
if self.is_in_stage():
|
if self._handle_auto_search_menu_missing():
|
||||||
# Sometimes game is bugged, and auto search menu is not shown
|
|
||||||
raise CampaignEnd
|
raise CampaignEnd
|
||||||
|
|
||||||
def auto_search_combat_execute(self, emotion_reduce, fleet_index):
|
def auto_search_combat_execute(self, emotion_reduce, fleet_index):
|
||||||
@@ -118,8 +137,7 @@ class AutoSearchCombat(Combat):
|
|||||||
break
|
break
|
||||||
if self.is_in_auto_search_menu():
|
if self.is_in_auto_search_menu():
|
||||||
raise CampaignEnd
|
raise CampaignEnd
|
||||||
if self.is_in_stage():
|
if self._handle_auto_search_menu_missing():
|
||||||
# Sometimes game is bugged, and auto search menu is not shown
|
|
||||||
raise CampaignEnd
|
raise CampaignEnd
|
||||||
|
|
||||||
def auto_search_combat(self, emotion_reduce=None, fleet_index=1):
|
def auto_search_combat(self, emotion_reduce=None, fleet_index=1):
|
||||||
|
|||||||
Reference in New Issue
Block a user