mirror of
https://github.com/LmeSzinc/StarRailCopilot.git
synced 2024-11-15 22:19:18 +00:00
Fix: Selecting rogue path when Erudition is unlocked
This commit is contained in:
parent
1553d78b83
commit
1beb66d0ab
BIN
assets/share/rogue/path/CHECK_ERUDITION.png
Normal file
BIN
assets/share/rogue/path/CHECK_ERUDITION.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.9 KiB |
@ -43,6 +43,16 @@ CHECK_ELATION = ButtonWrapper(
|
||||
button=(228, 275, 266, 320),
|
||||
),
|
||||
)
|
||||
CHECK_ERUDITION = ButtonWrapper(
|
||||
name='CHECK_ERUDITION',
|
||||
share=Button(
|
||||
file='./assets/share/rogue/path/CHECK_ERUDITION.png',
|
||||
area=(231, 264, 260, 330),
|
||||
search=(211, 244, 280, 350),
|
||||
color=(129, 105, 74),
|
||||
button=(231, 264, 260, 330),
|
||||
),
|
||||
)
|
||||
CHECK_NIHILITY = ButtonWrapper(
|
||||
name='CHECK_NIHILITY',
|
||||
share=Button(
|
||||
|
@ -40,6 +40,7 @@ class RoguePathHandler(RogueUI):
|
||||
KEYWORDS_ROGUE_PATH.Destruction: CHECK_DESTRUCTION,
|
||||
KEYWORDS_ROGUE_PATH.Elation: CHECK_ELATION,
|
||||
KEYWORDS_ROGUE_PATH.Propagation: CHECK_PROPAGATION,
|
||||
KEYWORDS_ROGUE_PATH.Erudition: CHECK_ERUDITION,
|
||||
}
|
||||
# 2023.12.28 Buttons moved up
|
||||
for b in buttons.values():
|
||||
@ -76,6 +77,7 @@ class RoguePathHandler(RogueUI):
|
||||
KEYWORDS_ROGUE_PATH.Destruction: 6,
|
||||
KEYWORDS_ROGUE_PATH.Elation: 7,
|
||||
KEYWORDS_ROGUE_PATH.Propagation: 8,
|
||||
KEYWORDS_ROGUE_PATH.Erudition: 9,
|
||||
}
|
||||
return buttons
|
||||
|
||||
@ -141,6 +143,7 @@ class RoguePathHandler(RogueUI):
|
||||
"""
|
||||
logger.info('Change confirm path')
|
||||
interval = Timer(2)
|
||||
load_timer = Timer(3, count=4).start()
|
||||
timeout = Timer(10, count=20).start()
|
||||
while 1:
|
||||
if skip_first_screenshot:
|
||||
@ -162,11 +165,17 @@ class RoguePathHandler(RogueUI):
|
||||
if diff > 0:
|
||||
self.device.multi_click(CHOOSE_RIGHT, n=diff)
|
||||
interval.reset()
|
||||
load_timer.reset()
|
||||
elif diff < 0:
|
||||
self.device.multi_click(CHOOSE_LEFT, n=abs(diff))
|
||||
interval.reset()
|
||||
load_timer.reset()
|
||||
else:
|
||||
logger.warning(f'Invalid path distance: {diff}')
|
||||
if selected_path is None and load_timer.reached_and_reset():
|
||||
# Clicking left should be enough to skip invalid paths
|
||||
self.device.click(CHOOSE_LEFT)
|
||||
continue
|
||||
|
||||
def rogue_path_select(self, path: str | RoguePath, skip_first_screenshot=True):
|
||||
"""
|
||||
|
Loading…
Reference in New Issue
Block a user