mirror of
https://gitee.com/sui-feng-cb/AzurLaneAutoScript1
synced 2026-03-17 06:25:25 +08:00
Revert "Merge branch 'dev' of https://github.com/LmeSzinc/AzurLaneAutoScript into dev"
This reverts commitbdc5aa0720, reversing changes made to6ee7a62edf.
This commit is contained in:
@@ -1,17 +1,17 @@
|
||||
from module.base.button import Button
|
||||
from module.base.template import Template
|
||||
|
||||
# This file was automatically generated by dev_tools.button_extract.
|
||||
# Don't modify it manually.
|
||||
|
||||
EQUIPMENT_OPEN = Button(area={'cn': (1196, 114, 1263, 181), 'en': (1198, 117, 1266, 183), 'jp': (1196, 114, 1263, 181)}, color={'cn': (119, 161, 213), 'en': (118, 157, 209), 'jp': (119, 161, 213)}, button={'cn': (1196, 114, 1263, 181), 'en': (1198, 117, 1266, 183), 'jp': (1196, 114, 1263, 181)}, file={'cn': './assets/cn/equipment/EQUIPMENT_OPEN.png', 'en': './assets/en/equipment/EQUIPMENT_OPEN.png', 'jp': './assets/jp/equipment/EQUIPMENT_OPEN.png'})
|
||||
EQUIP_1 = Button(area={'cn': (1218, 249, 1274, 302), 'en': (1217, 281, 1275, 337), 'jp': (1218, 249, 1274, 302)}, color={'cn': (102, 152, 219), 'en': (80, 122, 185), 'jp': (102, 152, 219)}, button={'cn': (1218, 249, 1274, 302), 'en': (1217, 281, 1275, 337), 'jp': (1218, 249, 1274, 302)}, file={'cn': './assets/cn/equipment/EQUIP_1.png', 'en': './assets/en/equipment/EQUIP_1.png', 'jp': './assets/jp/equipment/EQUIP_1.png'})
|
||||
EQUIP_2 = Button(area={'cn': (1218, 349, 1274, 402), 'en': (1217, 371, 1275, 427), 'jp': (1218, 349, 1274, 402)}, color={'cn': (101, 150, 215), 'en': (79, 121, 184), 'jp': (101, 150, 215)}, button={'cn': (1218, 349, 1274, 402), 'en': (1217, 371, 1275, 427), 'jp': (1218, 349, 1274, 402)}, file={'cn': './assets/cn/equipment/EQUIP_2.png', 'en': './assets/en/equipment/EQUIP_2.png', 'jp': './assets/jp/equipment/EQUIP_2.png'})
|
||||
EQUIP_3 = Button(area={'cn': (1218, 450, 1274, 503), 'en': (1217, 460, 1275, 517), 'jp': (1218, 450, 1274, 503)}, color={'cn': (98, 145, 211), 'en': (79, 121, 184), 'jp': (98, 145, 211)}, button={'cn': (1218, 450, 1274, 503), 'en': (1217, 460, 1275, 517), 'jp': (1218, 450, 1274, 503)}, file={'cn': './assets/cn/equipment/EQUIP_3.png', 'en': './assets/en/equipment/EQUIP_3.png', 'jp': './assets/jp/equipment/EQUIP_3.png'})
|
||||
EQUIP_OFF = Button(area={'cn': (933, 548, 1063, 593), 'en': (921, 544, 1051, 588), 'jp': (933, 548, 1063, 593)}, color={'cn': (107, 151, 216), 'en': (97, 145, 203), 'jp': (107, 151, 216)}, button={'cn': (933, 548, 1063, 593), 'en': (921, 544, 1051, 588), 'jp': (933, 548, 1063, 593)}, file={'cn': './assets/cn/equipment/EQUIP_OFF.png', 'en': './assets/en/equipment/EQUIP_OFF.png', 'jp': './assets/jp/equipment/EQUIP_OFF.png'})
|
||||
FLEET_ENTER = Button(area={'cn': (502, 474, 517, 489), 'en': (502, 474, 517, 489), 'jp': (502, 474, 517, 489)}, color={'cn': (58, 62, 77), 'en': (58, 62, 77), 'jp': (58, 62, 77)}, button={'cn': (502, 474, 517, 489), 'en': (502, 474, 517, 489), 'jp': (502, 474, 517, 489)}, file={'cn': './assets/cn/equipment/FLEET_ENTER.png', 'en': './assets/en/equipment/FLEET_ENTER.png', 'jp': './assets/jp/equipment/FLEET_ENTER.png'})
|
||||
FLEET_NEXT = Button(area={'cn': (1234, 327, 1254, 356), 'en': (1234, 327, 1254, 356), 'jp': (1234, 327, 1254, 356)}, color={'cn': (72, 93, 125), 'en': (72, 93, 125), 'jp': (72, 93, 125)}, button={'cn': (1234, 327, 1254, 356), 'en': (1234, 327, 1254, 356), 'jp': (1234, 327, 1254, 356)}, file={'cn': './assets/cn/equipment/FLEET_NEXT.png', 'en': './assets/en/equipment/FLEET_NEXT.png', 'jp': './assets/jp/equipment/FLEET_NEXT.png'})
|
||||
FLEET_PREV = Button(area={'cn': (26, 327, 46, 356), 'en': (26, 327, 46, 356), 'jp': (26, 327, 46, 356)}, color={'cn': (72, 93, 125), 'en': (72, 93, 125), 'jp': (72, 93, 125)}, button={'cn': (26, 327, 46, 356), 'en': (26, 327, 46, 356), 'jp': (26, 327, 46, 356)}, file={'cn': './assets/cn/equipment/FLEET_PREV.png', 'en': './assets/en/equipment/FLEET_PREV.png', 'jp': './assets/jp/equipment/FLEET_PREV.png'})
|
||||
OCR_FLEET_INDEX = Button(area={'cn': (957, 113, 987, 163), 'en': (957, 113, 987, 163), 'jp': (957, 113, 987, 163)}, color={'cn': (36, 54, 86), 'en': (36, 54, 86), 'jp': (36, 54, 86)}, button={'cn': (957, 113, 987, 163), 'en': (957, 113, 987, 163), 'jp': (957, 113, 987, 163)}, file={'cn': './assets/cn/equipment/OCR_FLEET_INDEX.png', 'en': './assets/en/equipment/OCR_FLEET_INDEX.png', 'jp': './assets/jp/equipment/OCR_FLEET_INDEX.png'})
|
||||
SWIPE_AREA = Button(area={'cn': (220, 167, 580, 527), 'en': (220, 167, 580, 527), 'jp': (220, 167, 580, 527)}, color={'cn': (165, 172, 194), 'en': (165, 172, 194), 'jp': (165, 172, 194)}, button={'cn': (220, 167, 580, 527), 'en': (220, 167, 580, 527), 'jp': (220, 167, 580, 527)}, file={'cn': './assets/cn/equipment/SWIPE_AREA.png', 'en': './assets/en/equipment/SWIPE_AREA.png', 'jp': './assets/jp/equipment/SWIPE_AREA.png'})
|
||||
SWIPE_CHECK = Button(area={'cn': (190, 353, 610, 455), 'en': (190, 353, 610, 455), 'jp': (190, 353, 610, 455)}, color={'cn': (171, 180, 198), 'en': (171, 180, 198), 'jp': (171, 180, 198)}, button={'cn': (190, 353, 610, 455), 'en': (190, 353, 610, 455), 'jp': (190, 353, 610, 455)}, file={'cn': './assets/cn/equipment/SWIPE_CHECK.png', 'en': './assets/en/equipment/SWIPE_CHECK.png', 'jp': './assets/jp/equipment/SWIPE_CHECK.png'})
|
||||
from module.base.button import Button
|
||||
from module.base.template import Template
|
||||
|
||||
# This file is generated by module.dev_tools.asset_extract.
|
||||
# Don't modified it manually.
|
||||
|
||||
EQUIPMENT_OPEN = Button(area={'cn': (1196, 114, 1263, 181), 'en': (1196, 114, 1263, 181), 'jp': (1196, 114, 1263, 181)}, color={'cn': (119, 161, 213), 'en': (119, 161, 213), 'jp': (119, 161, 213)}, button={'cn': (1196, 114, 1263, 181), 'en': (1196, 114, 1263, 181), 'jp': (1196, 114, 1263, 181)}, file={'cn': './assets/cn/equipment/EQUIPMENT_OPEN.png', 'en': './assets/en/equipment/EQUIPMENT_OPEN.png', 'jp': './assets/jp/equipment/EQUIPMENT_OPEN.png'})
|
||||
EQUIP_1 = Button(area={'cn': (1218, 249, 1274, 302), 'en': (1218, 249, 1274, 302), 'jp': (1218, 249, 1274, 302)}, color={'cn': (102, 152, 219), 'en': (102, 152, 219), 'jp': (102, 152, 219)}, button={'cn': (1218, 249, 1274, 302), 'en': (1218, 249, 1274, 302), 'jp': (1218, 249, 1274, 302)}, file={'cn': './assets/cn/equipment/EQUIP_1.png', 'en': './assets/en/equipment/EQUIP_1.png', 'jp': './assets/jp/equipment/EQUIP_1.png'})
|
||||
EQUIP_2 = Button(area={'cn': (1218, 349, 1274, 402), 'en': (1218, 349, 1274, 402), 'jp': (1218, 349, 1274, 402)}, color={'cn': (101, 150, 215), 'en': (101, 150, 215), 'jp': (101, 150, 215)}, button={'cn': (1218, 349, 1274, 402), 'en': (1218, 349, 1274, 402), 'jp': (1218, 349, 1274, 402)}, file={'cn': './assets/cn/equipment/EQUIP_2.png', 'en': './assets/en/equipment/EQUIP_2.png', 'jp': './assets/jp/equipment/EQUIP_2.png'})
|
||||
EQUIP_3 = Button(area={'cn': (1218, 450, 1274, 503), 'en': (1218, 450, 1274, 503), 'jp': (1218, 450, 1274, 503)}, color={'cn': (98, 145, 211), 'en': (98, 145, 211), 'jp': (98, 145, 211)}, button={'cn': (1218, 450, 1274, 503), 'en': (1218, 450, 1274, 503), 'jp': (1218, 450, 1274, 503)}, file={'cn': './assets/cn/equipment/EQUIP_3.png', 'en': './assets/en/equipment/EQUIP_3.png', 'jp': './assets/jp/equipment/EQUIP_3.png'})
|
||||
EQUIP_OFF = Button(area={'cn': (933, 548, 1063, 593), 'en': (933, 548, 1063, 593), 'jp': (933, 548, 1063, 593)}, color={'cn': (107, 151, 216), 'en': (107, 151, 216), 'jp': (107, 151, 216)}, button={'cn': (933, 548, 1063, 593), 'en': (933, 548, 1063, 593), 'jp': (933, 548, 1063, 593)}, file={'cn': './assets/cn/equipment/EQUIP_OFF.png', 'en': './assets/en/equipment/EQUIP_OFF.png', 'jp': './assets/jp/equipment/EQUIP_OFF.png'})
|
||||
FLEET_ENTER = Button(area={'cn': (502, 474, 517, 489), 'en': (502, 474, 517, 489), 'jp': (502, 474, 517, 489)}, color={'cn': (58, 62, 77), 'en': (58, 62, 77), 'jp': (58, 62, 77)}, button={'cn': (502, 474, 517, 489), 'en': (502, 474, 517, 489), 'jp': (502, 474, 517, 489)}, file={'cn': './assets/cn/equipment/FLEET_ENTER.png', 'en': './assets/en/equipment/FLEET_ENTER.png', 'jp': './assets/jp/equipment/FLEET_ENTER.png'})
|
||||
FLEET_NEXT = Button(area={'cn': (1234, 327, 1254, 356), 'en': (1234, 327, 1254, 356), 'jp': (1234, 327, 1254, 356)}, color={'cn': (72, 93, 125), 'en': (72, 93, 125), 'jp': (72, 93, 125)}, button={'cn': (1234, 327, 1254, 356), 'en': (1234, 327, 1254, 356), 'jp': (1234, 327, 1254, 356)}, file={'cn': './assets/cn/equipment/FLEET_NEXT.png', 'en': './assets/en/equipment/FLEET_NEXT.png', 'jp': './assets/jp/equipment/FLEET_NEXT.png'})
|
||||
FLEET_PREV = Button(area={'cn': (26, 327, 46, 356), 'en': (26, 327, 46, 356), 'jp': (26, 327, 46, 356)}, color={'cn': (72, 93, 125), 'en': (72, 93, 125), 'jp': (72, 93, 125)}, button={'cn': (26, 327, 46, 356), 'en': (26, 327, 46, 356), 'jp': (26, 327, 46, 356)}, file={'cn': './assets/cn/equipment/FLEET_PREV.png', 'en': './assets/en/equipment/FLEET_PREV.png', 'jp': './assets/jp/equipment/FLEET_PREV.png'})
|
||||
OCR_FLEET_INDEX = Button(area={'cn': (958, 124, 984, 155), 'en': (958, 124, 984, 155), 'jp': (958, 124, 984, 155)}, color={'cn': (46, 72, 117), 'en': (46, 72, 117), 'jp': (46, 72, 117)}, button={'cn': (958, 124, 984, 155), 'en': (958, 124, 984, 155), 'jp': (958, 124, 984, 155)}, file={'cn': './assets/cn/equipment/OCR_FLEET_INDEX.png', 'en': './assets/en/equipment/OCR_FLEET_INDEX.png', 'jp': './assets/jp/equipment/OCR_FLEET_INDEX.png'})
|
||||
SWIPE_AREA = Button(area={'cn': (220, 167, 580, 527), 'en': (220, 167, 580, 527), 'jp': (220, 167, 580, 527)}, color={'cn': (165, 172, 194), 'en': (165, 172, 194), 'jp': (165, 172, 194)}, button={'cn': (220, 167, 580, 527), 'en': (220, 167, 580, 527), 'jp': (220, 167, 580, 527)}, file={'cn': './assets/cn/equipment/SWIPE_AREA.png', 'en': './assets/en/equipment/SWIPE_AREA.png', 'jp': './assets/jp/equipment/SWIPE_AREA.png'})
|
||||
SWIPE_CHECK = Button(area={'cn': (190, 353, 610, 455), 'en': (190, 353, 610, 455), 'jp': (190, 353, 610, 455)}, color={'cn': (171, 180, 198), 'en': (171, 180, 198), 'jp': (171, 180, 198)}, button={'cn': (190, 353, 610, 455), 'en': (190, 353, 610, 455), 'jp': (190, 353, 610, 455)}, file={'cn': './assets/cn/equipment/SWIPE_CHECK.png', 'en': './assets/en/equipment/SWIPE_CHECK.png', 'jp': './assets/jp/equipment/SWIPE_CHECK.png'})
|
||||
|
||||
@@ -3,7 +3,7 @@ from module.base.timer import Timer
|
||||
from module.equipment.assets import *
|
||||
from module.handler.info_handler import InfoHandler
|
||||
from module.logger import logger
|
||||
from module.ui.ui import UI
|
||||
from module.ui.assets import BACK_ARROW
|
||||
from module.base.utils import color_similarity_2d
|
||||
import numpy as np
|
||||
|
||||
@@ -13,40 +13,33 @@ DETAIL_SIDEBAR = ButtonGrid(
|
||||
origin=(21, 118), delta=(0, 94.5), button_shape=(60, 75), grid_shape=(1, 5), name='DETAIL_SIDEBAR')
|
||||
|
||||
|
||||
class Equipment(UI):
|
||||
class Equipment(InfoHandler):
|
||||
equipment_has_take_on = False
|
||||
|
||||
def _view_swipe(self, distance, check_button=EQUIPMENT_OPEN):
|
||||
swipe_count = 0
|
||||
swipe_timer = Timer(5, count=10)
|
||||
self.ensure_no_info_bar()
|
||||
swipe_timer = Timer(3, count=5)
|
||||
SWIPE_CHECK.load_color(self.device.image)
|
||||
while 1:
|
||||
if not swipe_timer.started() or swipe_timer.reached():
|
||||
swipe_timer.reset()
|
||||
self.device.swipe(vector=(distance, 0), box=SWIPE_AREA.area, random_range=SWIPE_RANDOM_RANGE,
|
||||
padding=0, duration=(0.1, 0.12), name='EQUIP_SWIPE')
|
||||
swipe_count += 1
|
||||
padding=0, duration=(0.1, 0.12))
|
||||
|
||||
self.device.screenshot()
|
||||
if SWIPE_CHECK.match(self.device.image):
|
||||
if swipe_count > 1:
|
||||
logger.warning('Same ship on multiple swipes')
|
||||
return False
|
||||
continue
|
||||
|
||||
if self.appear(check_button, offset=(30, 30)) and not SWIPE_CHECK.match(self.device.image):
|
||||
logger.info('New ship detected on swipe')
|
||||
return True
|
||||
break
|
||||
|
||||
def equip_view_next(self, check_button=EQUIPMENT_OPEN):
|
||||
return self._view_swipe(distance=-SWIPE_DISTANCE, check_button=check_button)
|
||||
self._view_swipe(distance=-SWIPE_DISTANCE, check_button=check_button)
|
||||
|
||||
def equip_view_prev(self, check_button=EQUIPMENT_OPEN):
|
||||
return self._view_swipe(distance=SWIPE_DISTANCE, check_button=check_button)
|
||||
self._view_swipe(distance=SWIPE_DISTANCE, check_button=check_button)
|
||||
|
||||
def equip_enter(self, click_button, check_button=EQUIPMENT_OPEN, long_click=True):
|
||||
enter_timer = Timer(10)
|
||||
enter_timer = Timer(5)
|
||||
|
||||
while 1:
|
||||
if enter_timer.reached():
|
||||
@@ -62,6 +55,23 @@ class Equipment(UI):
|
||||
if self.appear(check_button):
|
||||
break
|
||||
|
||||
def equip_quit(self, out):
|
||||
quit_timer = Timer(3)
|
||||
|
||||
while 1:
|
||||
self.device.screenshot()
|
||||
|
||||
# End
|
||||
if self.appear(out):
|
||||
break
|
||||
|
||||
if quit_timer.reached() and self.appear(BACK_ARROW):
|
||||
# self.device.sleep(1)
|
||||
self.device.click(BACK_ARROW)
|
||||
self.device.sleep((0.2, 0.3))
|
||||
quit_timer.reset()
|
||||
continue
|
||||
|
||||
def _equip_sidebar_click(self, index):
|
||||
"""
|
||||
Args:
|
||||
@@ -75,10 +85,6 @@ class Equipment(UI):
|
||||
Returns:
|
||||
bool: if changed.
|
||||
"""
|
||||
if index <= 0 or index > 5:
|
||||
logger.warning(f'Sidebar index cannot be clicked, {index}, limit to 1 through 5 only')
|
||||
return False
|
||||
|
||||
current = 0
|
||||
total = 0
|
||||
|
||||
@@ -100,7 +106,6 @@ class Equipment(UI):
|
||||
current = 6 - current
|
||||
else:
|
||||
logger.warning('Ship details sidebar total count error.')
|
||||
return True
|
||||
|
||||
logger.attr('Detail_sidebar', f'{current}/{total}')
|
||||
if current == index:
|
||||
@@ -118,17 +123,7 @@ class Equipment(UI):
|
||||
3 for limit break.
|
||||
2 for gem / equipment.
|
||||
1 for detail.
|
||||
|
||||
Returns:
|
||||
bool: whether sidebar could be ensured
|
||||
at most 3 attempts are made before
|
||||
return False otherwise True
|
||||
"""
|
||||
if index <= 0 or index > 5:
|
||||
logger.warning(f'Sidebar index cannot be ensured, {index}, limit 1 through 5 only')
|
||||
return False
|
||||
|
||||
counter = 0
|
||||
while 1:
|
||||
if skip_first_screenshot:
|
||||
skip_first_screenshot = False
|
||||
@@ -136,14 +131,10 @@ class Equipment(UI):
|
||||
self.device.screenshot()
|
||||
|
||||
if self._equip_sidebar_click(index):
|
||||
if counter > 2:
|
||||
logger.warning('Sidebar could not be ensured')
|
||||
return False
|
||||
counter += 1
|
||||
self.device.sleep((0.3, 0.5))
|
||||
continue
|
||||
else:
|
||||
return True
|
||||
break
|
||||
|
||||
def _equip_take_off_one(self):
|
||||
bar_timer = Timer(5)
|
||||
@@ -188,7 +179,7 @@ class Equipment(UI):
|
||||
else:
|
||||
self._equip_take_off_one()
|
||||
|
||||
self.ui_back(out)
|
||||
self.equip_quit(out)
|
||||
self.equipment_has_take_on = False
|
||||
|
||||
def _equip_take_on_one(self, index):
|
||||
@@ -238,5 +229,5 @@ class Equipment(UI):
|
||||
else:
|
||||
self._equip_take_on_one(index=index)
|
||||
|
||||
self.ui_back(out)
|
||||
self.equip_quit(out)
|
||||
self.equipment_has_take_on = True
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
from module.base.ocr import Digit
|
||||
from module.equipment.assets import *
|
||||
from module.equipment.equipment import Equipment
|
||||
from module.ocr.ocr import Digit
|
||||
from module.ui.assets import FLEET_CHECK
|
||||
from module.ui.ui import page_fleet
|
||||
from module.ui.ui import UI, page_fleet
|
||||
|
||||
OCR_FLEET_INDEX = Digit(OCR_FLEET_INDEX, letter=(90, 154, 255), threshold=128, alphabet='123456')
|
||||
OCR_FLEET_INDEX = Digit(OCR_FLEET_INDEX, letter=(90, 154, 255), back=(24, 32, 49), length=1, white_list='123456')
|
||||
|
||||
|
||||
class DailyEquipment(Equipment):
|
||||
class DailyEquipment(UI, Equipment):
|
||||
equipment_has_take_on = False
|
||||
|
||||
def equipment_take_on(self):
|
||||
|
||||
Reference in New Issue
Block a user