mirror of
https://gitee.com/sui-feng-cb/AzurLaneAutoScript1
synced 2026-04-12 19:25:51 +08:00
Added: added GameStuckHandler for C and D battle status
- game will restart when get C and D battle status now
This commit is contained in:
@@ -141,7 +141,6 @@ class CampaignBase(CampaignUI, Map, AutoSearchCombat):
|
|||||||
self.auto_search_execute_a_battle()
|
self.auto_search_execute_a_battle()
|
||||||
except CampaignEnd:
|
except CampaignEnd:
|
||||||
logger.hr('Campaign end')
|
logger.hr('Campaign end')
|
||||||
self.device.send_notification('AzurLaneAutoScript', 'Map cleared')
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
# Exception
|
# Exception
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ from module.combat.combat_manual import CombatManual
|
|||||||
from module.combat.emotion import Emotion
|
from module.combat.emotion import Emotion
|
||||||
from module.combat.hp_balancer import HPBalancer
|
from module.combat.hp_balancer import HPBalancer
|
||||||
from module.combat.level import Level
|
from module.combat.level import Level
|
||||||
|
from module.exception import GameStuckError
|
||||||
from module.combat.submarine import SubmarineCall
|
from module.combat.submarine import SubmarineCall
|
||||||
from module.handler.auto_search import AutoSearchHandler
|
from module.handler.auto_search import AutoSearchHandler
|
||||||
from module.logger import logger
|
from module.logger import logger
|
||||||
@@ -246,21 +247,34 @@ class Combat(Level, HPBalancer, Retirement, SubmarineCall, CombatAuto, CombatMan
|
|||||||
return False
|
return False
|
||||||
if self.appear_then_click(BATTLE_STATUS_S, screenshot=save_get_items, genre='status',
|
if self.appear_then_click(BATTLE_STATUS_S, screenshot=save_get_items, genre='status',
|
||||||
interval=self.battle_status_click_interval):
|
interval=self.battle_status_click_interval):
|
||||||
|
logger.warning('Battle status: S')
|
||||||
|
self.device.send_notification('AzurLaneAutoScript', 'Battle status: S')
|
||||||
if not save_get_items:
|
if not save_get_items:
|
||||||
self.device.sleep((0.25, 0.5))
|
self.device.sleep((0.25, 0.5))
|
||||||
return True
|
return True
|
||||||
if self.appear_then_click(BATTLE_STATUS_A, screenshot=save_get_items, genre='status',
|
if self.appear_then_click(BATTLE_STATUS_A, screenshot=save_get_items, genre='status',
|
||||||
interval=self.battle_status_click_interval):
|
interval=self.battle_status_click_interval):
|
||||||
logger.warning('Battle status: A')
|
logger.warning('Battle status: A')
|
||||||
|
self.device.send_notification('AzurLaneAutoScript', 'Battle status: A')
|
||||||
if not save_get_items:
|
if not save_get_items:
|
||||||
self.device.sleep((0.25, 0.5))
|
self.device.sleep((0.25, 0.5))
|
||||||
return True
|
return True
|
||||||
if self.appear_then_click(BATTLE_STATUS_B, screenshot=save_get_items, genre='status',
|
if self.appear_then_click(BATTLE_STATUS_B, screenshot=save_get_items, genre='status',
|
||||||
interval=self.battle_status_click_interval):
|
interval=self.battle_status_click_interval):
|
||||||
logger.warning('Battle Status B')
|
logger.warning('Battle Status B')
|
||||||
|
self.device.send_notification('AzurLaneAutoScript', 'Battle status: B')
|
||||||
if not save_get_items:
|
if not save_get_items:
|
||||||
self.device.sleep((0.25, 0.5))
|
self.device.sleep((0.25, 0.5))
|
||||||
return True
|
return True
|
||||||
|
if self.appear_then_click(BATTLE_STATUS_C, screenshot=save_get_items, genre='status',
|
||||||
|
interval=self.battle_status_click_interval):
|
||||||
|
logger.warning('Battle Status C')
|
||||||
|
self.device.send_notification('AzurLaneAutoScript', 'Battle status: C')
|
||||||
|
raise GameStuckError('AzurLaneAutoScript', 'Battle status: C')
|
||||||
|
if self.appear_then_click(BATTLE_STATUS_D, screenshot=save_get_items, genre='status',
|
||||||
|
interval=self.battle_status_click_interval):
|
||||||
|
logger.warning('Battle Status D')
|
||||||
|
raise GameStuckError('Battle Status D')
|
||||||
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ class EnemySearchingHandler(InfoHandler):
|
|||||||
if self.is_in_stage():
|
if self.is_in_stage():
|
||||||
if self.in_stage_timer.reached():
|
if self.in_stage_timer.reached():
|
||||||
logger.info('In stage.')
|
logger.info('In stage.')
|
||||||
|
self.device.send_notification('AzurLaneAutoScript', 'Map cleared')
|
||||||
self.ensure_no_info_bar(timeout=1.2)
|
self.ensure_no_info_bar(timeout=1.2)
|
||||||
raise CampaignEnd('In stage.')
|
raise CampaignEnd('In stage.')
|
||||||
else:
|
else:
|
||||||
|
|||||||
Reference in New Issue
Block a user