mirror of
https://github.com/W1NDes/M-AzurLaneAutoScript.git
synced 2026-05-16 01:30:36 +08:00
Fix(Event):修复在已通过一次性关卡后的关卡递进错误
This commit is contained in:
parent
aaa0350dd7
commit
3fb7fe8048
@ -225,6 +225,11 @@ class CampaignUI(MapOperation, CampaignEvent, CampaignOcr):
|
||||
name = mode_name
|
||||
|
||||
if name not in self.stage_entrance:
|
||||
if name.lower() in ["hts1", "hts2", "ts1", "ts2"]:
|
||||
if any(stage.upper() in [s.upper() for s in self.stage_entrance] for stage in ["T3", "T6", "HT3", "HT6"]):
|
||||
logger.warning(f'Maybe already Pass the Stage: {name}')
|
||||
raise CampaignNameError("AlreadyPassed")
|
||||
|
||||
logger.warning(f'Stage not found: {name}')
|
||||
raise CampaignNameError
|
||||
|
||||
@ -377,7 +382,9 @@ class CampaignUI(MapOperation, CampaignEvent, CampaignOcr):
|
||||
self.campaign_set_chapter(name, mode)
|
||||
self.ENTRANCE = self.campaign_get_entrance(name=name)
|
||||
return True
|
||||
except CampaignNameError:
|
||||
except CampaignNameError as e:
|
||||
if getattr(e, 'args', [None])[0] == "AlreadyPassed":
|
||||
return False
|
||||
pass
|
||||
|
||||
if self.handle_campaign_ui_additional():
|
||||
|
||||
@ -426,16 +426,20 @@ class CampaignRun(CampaignEvent, ShopStatus):
|
||||
self.campaign.withdraw()
|
||||
except CampaignEnd:
|
||||
pass
|
||||
self.campaign.ensure_campaign_ui(name=self.stage, mode=mode)
|
||||
ensure_campaign_ui_result = self.campaign.ensure_campaign_ui(name=self.stage, mode=mode)
|
||||
elif self.campaign.is_in_auto_search_menu():
|
||||
if self.can_use_auto_search_continue():
|
||||
logger.info('In auto search menu, skip ensure_campaign_ui.')
|
||||
else:
|
||||
logger.info('In auto search menu, closing.')
|
||||
# Because event_20240725 task balancer delete self.campaign.ensure_auto_search_exit()
|
||||
self.campaign.ensure_campaign_ui(name=self.stage, mode=mode)
|
||||
ensure_campaign_ui_result = self.campaign.ensure_campaign_ui(name=self.stage, mode=mode)
|
||||
else:
|
||||
self.campaign.ensure_campaign_ui(name=self.stage, mode=mode)
|
||||
ensure_campaign_ui_result = self.campaign.ensure_campaign_ui(name=self.stage, mode=mode)
|
||||
if ensure_campaign_ui_result is False:
|
||||
logger.info('Maybe Already pass the stage, goto next.')
|
||||
self.campaign.handle_map_stop()
|
||||
break
|
||||
self.disable_raid_on_event()
|
||||
self.handle_commission_notice()
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user