1
0
mirror of https://gitee.com/sui-feng-cb/AzurLaneAutoScript1 synced 2026-04-15 02:01:11 +08:00

Refactor: Abstract chapter switches from 20240725 to 20241219

This commit is contained in:
LmeSzinc
2024-12-20 21:07:58 +08:00
parent a3bb25a95d
commit cc2cf0d046
27 changed files with 151 additions and 119 deletions

View File

@@ -1,21 +1,10 @@
from module.base.utils import color_similarity_2d
from module.campaign.assets import *
from module.campaign.campaign_base import CampaignBase as CampaignBase_
from module.campaign.campaign_ui import ModeSwitch
from module.campaign.campaign_ui import ASIDE_SWITCH_20241219, MODE_SWITCH_20241219
from module.logger import logger
from module.map_detection.grid import Grid
from module.template.assets import TEMPLATE_ENEMY_BOSS
MODE_SWITCH_20240725 = ModeSwitch('Mode_switch_20240725', is_selector=True, offset=(30, 30))
MODE_SWITCH_20240725.add_state('combat', SWITCH_20240725_COMBAT, offset=(444, 4))
MODE_SWITCH_20240725.add_state('story', SWITCH_20240725_STORY, offset=(444, 4))
CHAPTER_SWITCH_20241024 = ModeSwitch('Chapter_switch_20241024', is_selector=True, offset=(30, 30))
CHAPTER_SWITCH_20241024.add_state('ab', CHAPTER_20241024_AB)
CHAPTER_SWITCH_20241024.add_state('cd', CHAPTER_20241024_CD)
CHAPTER_SWITCH_20241024.add_state('sp', CHAPTER_20241024_SP)
CHAPTER_SWITCH_20241024.add_state('ex', CHAPTER_20241024_EX)
class EventGrid(Grid):
def predict_enemy_genre(self):
@@ -43,33 +32,16 @@ class CampaignBase(CampaignBase_):
"""
]
def campaign_set_chapter(self, name, mode='normal'):
"""
Args:
name (str): Campaign name, such as '7-2', 'd3', 'sp3'.
mode (str): 'normal' or 'hard'.
"""
chapter, stage = self._campaign_separate_name(name)
if chapter in ['t']:
def campaign_set_chapter_20241219(self, chapter, stage, mode='combat'):
if chapter == 't':
self.ui_goto_event()
MODE_SWITCH_20240725.set('combat', main=self)
MODE_SWITCH_20241219.set('combat', main=self)
if stage in ['1', '2', '3']:
CHAPTER_SWITCH_20241024.set('ab', main=self)
ASIDE_SWITCH_20241219.set('part1', main=self)
elif stage in ['4', '5', '6']:
CHAPTER_SWITCH_20241024.set('cd', main=self)
ASIDE_SWITCH_20241219.set('part2', main=self)
else:
logger.warning(f'Stage {name} is not in CHAPTER_SWITCH_20241024')
logger.warning(f'Stage {chapter}{stage} is not in event_20241024')
self.campaign_ensure_chapter(index=chapter)
elif chapter in ['ex_sp']:
self.ui_goto_event()
MODE_SWITCH_20240725.set('combat', main=self)
CHAPTER_SWITCH_20241024.set('sp', main=self)
self.campaign_ensure_chapter(index=chapter)
elif chapter in ['ex_ex']:
self.ui_goto_event()
MODE_SWITCH_20240725.set('combat', main=self)
CHAPTER_SWITCH_20241024.set('ex', main=self)
self.campaign_ensure_chapter(index=chapter)
else:
logger.warning(f'Unknown campaign chapter: {name}')
return super().campaign_set_chapter_20241219(chapter, stage, mode)