diff --git a/assets/cn/gg_handler/DOCK_SCROLL_AREA.png b/assets/cn/gg_handler/DOCK_SCROLL_AREA.png new file mode 100644 index 000000000..d5b7756c4 Binary files /dev/null and b/assets/cn/gg_handler/DOCK_SCROLL_AREA.png differ diff --git a/assets/cn/ui/DOCK_CHECK.png b/assets/cn/ui/DOCK_CHECK.png new file mode 100644 index 000000000..543944270 Binary files /dev/null and b/assets/cn/ui/DOCK_CHECK.png differ diff --git a/assets/cn/ui/MAIN_GOTO_DOCK.png b/assets/cn/ui/MAIN_GOTO_DOCK.png new file mode 100644 index 000000000..aff363f5c Binary files /dev/null and b/assets/cn/ui/MAIN_GOTO_DOCK.png differ diff --git a/module/gg_handler/assets.py b/module/gg_handler/assets.py index 410251e50..7a83ca97c 100644 --- a/module/gg_handler/assets.py +++ b/module/gg_handler/assets.py @@ -33,4 +33,5 @@ BUTTON_GG_SCRIPT_START = Button(area={'cn': (906, 557, 965, 596), 'en': (906, 55 BUTTON_GG_SCRIPT_START_PROCESS = Button(area={'cn': (1088, 561, 1147, 599), 'en': (1088, 561, 1147, 599), 'jp': (1088, 561, 1147, 599), 'tw': (1088, 561, 1147, 599)}, color={'cn': (93, 93, 93), 'en': (93, 93, 93), 'jp': (93, 93, 93), 'tw': (93, 93, 93)}, button={'cn': (1088, 561, 1147, 599), 'en': (1088, 561, 1147, 599), 'jp': (1088, 561, 1147, 599), 'tw': (1088, 561, 1147, 599)}, file={'cn': './assets/cn/gg_handler/BUTTON_GG_SCRIPT_START_PROCESS.png', 'en': './assets/cn/gg_handler/BUTTON_GG_SCRIPT_START_PROCESS.png', 'jp': './assets/cn/gg_handler/BUTTON_GG_SCRIPT_START_PROCESS.png', 'tw': './assets/cn/gg_handler/BUTTON_GG_SCRIPT_START_PROCESS.png'}) BUTTON_GG_SEARCH_MODE_CONFIRM = Button(area={'cn': (337, 68, 605, 73), 'en': (337, 68, 605, 73), 'jp': (337, 68, 605, 73), 'tw': (337, 68, 605, 73)}, color={'cn': (77, 122, 119), 'en': (77, 122, 119), 'jp': (77, 122, 119), 'tw': (77, 122, 119)}, button={'cn': (337, 68, 605, 73), 'en': (337, 68, 605, 73), 'jp': (337, 68, 605, 73), 'tw': (337, 68, 605, 73)}, file={'cn': './assets/cn/gg_handler/BUTTON_GG_SEARCH_MODE_CONFIRM.png', 'en': './assets/cn/gg_handler/BUTTON_GG_SEARCH_MODE_CONFIRM.png', 'jp': './assets/cn/gg_handler/BUTTON_GG_SEARCH_MODE_CONFIRM.png', 'tw': './assets/cn/gg_handler/BUTTON_GG_SEARCH_MODE_CONFIRM.png'}) BUTTON_GG_TAB_SEARCH_POS = Button(area={'cn': (445, 11, 491, 59), 'en': (445, 11, 491, 59), 'jp': (445, 11, 491, 59), 'tw': (445, 11, 491, 59)}, color={'cn': (255, 255, 255), 'en': (255, 255, 255), 'jp': (255, 255, 255), 'tw': (255, 255, 255)}, button={'cn': (445, 11, 491, 59), 'en': (445, 11, 491, 59), 'jp': (445, 11, 491, 59), 'tw': (445, 11, 491, 59)}, file={'cn': './assets/cn/gg_handler/BUTTON_GG_TAB_SEARCH_POS.png', 'en': './assets/cn/gg_handler/BUTTON_GG_TAB_SEARCH_POS.png', 'jp': './assets/cn/gg_handler/BUTTON_GG_TAB_SEARCH_POS.png', 'tw': './assets/cn/gg_handler/BUTTON_GG_TAB_SEARCH_POS.png'}) +DOCK_SCROLL_AREA = Button(area={'cn': (1237, 69, 1250, 631), 'en': (1237, 69, 1250, 631), 'jp': (1237, 69, 1250, 631), 'tw': (1237, 69, 1250, 631)}, color={'cn': (45, 45, 42), 'en': (45, 45, 42), 'jp': (45, 45, 42), 'tw': (45, 45, 42)}, button={'cn': (1237, 69, 1250, 631), 'en': (1237, 69, 1250, 631), 'jp': (1237, 69, 1250, 631), 'tw': (1237, 69, 1250, 631)}, file={'cn': './assets/cn/gg_handler/DOCK_SCROLL_AREA.png', 'en': './assets/cn/gg_handler/DOCK_SCROLL_AREA.png', 'jp': './assets/cn/gg_handler/DOCK_SCROLL_AREA.png', 'tw': './assets/cn/gg_handler/DOCK_SCROLL_AREA.png'}) OCR_PRE_BATTLE_CHECK = Button(area={'cn': (736, 518, 979, 582), 'en': (736, 518, 979, 582), 'jp': (736, 518, 979, 582), 'tw': (736, 518, 979, 582)}, color={'cn': (90, 100, 119), 'en': (90, 100, 119), 'jp': (90, 100, 119), 'tw': (90, 100, 119)}, button={'cn': (736, 518, 979, 582), 'en': (736, 518, 979, 582), 'jp': (736, 518, 979, 582), 'tw': (736, 518, 979, 582)}, file={'cn': './assets/cn/gg_handler/OCR_PRE_BATTLE_CHECK.png', 'en': './assets/cn/gg_handler/OCR_PRE_BATTLE_CHECK.png', 'jp': './assets/cn/gg_handler/OCR_PRE_BATTLE_CHECK.png', 'tw': './assets/cn/gg_handler/OCR_PRE_BATTLE_CHECK.png'}) diff --git a/module/gg_handler/change_attribute.py b/module/gg_handler/change_attribute.py index c1d00df9d..ccc3376e8 100644 --- a/module/gg_handler/change_attribute.py +++ b/module/gg_handler/change_attribute.py @@ -1,9 +1,14 @@ from module.logger import logger from module.config.config import deep_get from module.base.base import ModuleBase +from module.ui.ui import UI +from module.ui.scroll import Scroll +from module.gg_handler.assets import DOCK_SCROLL_AREA import uiautomator2 as u2 -class ChangeAttribute(ModuleBase): +DOCK_SCROLL = Scroll(DOCK_SCROLL_AREA, color=(247, 211, 66)) + +class ChangeAttribute(UI, ModuleBase): def __init__(self, config, device): super().__init__(config, device) @@ -31,6 +36,7 @@ class ChangeAttribute(ModuleBase): return 0 _set = False _confirmed = False + self.ScrollDockToLoadAllShipData() while 1: if self.d(resourceId=f"{self.gg_package_name}:id/search_toolbar").exists: self.d.xpath( @@ -72,4 +78,13 @@ class ChangeAttribute(ModuleBase): if _set and _confirmed: break else: - return 0 \ No newline at end of file + return 0 + + def ScrollDockToLoadAllShipData(self): + from module.ui.page import page_dock, page_main + self.device.screenshot() + self.ui_goto(page_dock) + for i in range(1, 6): + DOCK_SCROLL.set(i / 5, self) + self.device.sleep(1) + self.ui_goto(page_main) \ No newline at end of file diff --git a/module/ui/assets.py b/module/ui/assets.py index e10d22092..b9f85e069 100644 --- a/module/ui/assets.py +++ b/module/ui/assets.py @@ -26,6 +26,7 @@ CAMPAIGN_MENU_NO_EVENT = Button(area={'cn': (681, 204, 831, 233), 'en': (616, 20 COALITION_CHECK = Button(area={'cn': (118, 14, 227, 39), 'en': (118, 16, 221, 36), 'jp': (118, 14, 227, 39), 'tw': (118, 14, 227, 39)}, color={'cn': (145, 161, 200), 'en': (116, 130, 168), 'jp': (150, 166, 204), 'tw': (152, 168, 206)}, button={'cn': (118, 14, 227, 39), 'en': (118, 16, 221, 36), 'jp': (118, 14, 227, 39), 'tw': (118, 14, 227, 39)}, file={'cn': './assets/cn/ui/COALITION_CHECK.png', 'en': './assets/en/ui/COALITION_CHECK.png', 'jp': './assets/jp/ui/COALITION_CHECK.png', 'tw': './assets/tw/ui/COALITION_CHECK.png'}) COMMISSION_CHECK = Button(area={'cn': (122, 16, 175, 39), 'en': (120, 14, 301, 41), 'jp': (121, 14, 176, 39), 'tw': (121, 14, 176, 41)}, color={'cn': (157, 173, 210), 'en': (98, 112, 150), 'jp': (159, 175, 211), 'tw': (141, 155, 193)}, button={'cn': (122, 16, 175, 39), 'en': (120, 14, 301, 41), 'jp': (121, 14, 176, 39), 'tw': (121, 14, 176, 41)}, file={'cn': './assets/cn/ui/COMMISSION_CHECK.png', 'en': './assets/en/ui/COMMISSION_CHECK.png', 'jp': './assets/jp/ui/COMMISSION_CHECK.png', 'tw': './assets/tw/ui/COMMISSION_CHECK.png'}) DAILY_CHECK = Button(area={'cn': (23, 656, 67, 698), 'en': (23, 656, 67, 698), 'jp': (23, 656, 67, 698), 'tw': (23, 656, 67, 698)}, color={'cn': (84, 139, 210), 'en': (84, 139, 210), 'jp': (84, 139, 210), 'tw': (84, 139, 210)}, button={'cn': (23, 656, 67, 698), 'en': (23, 656, 67, 698), 'jp': (23, 656, 67, 698), 'tw': (23, 656, 67, 698)}, file={'cn': './assets/cn/ui/DAILY_CHECK.png', 'en': './assets/en/ui/DAILY_CHECK.png', 'jp': './assets/jp/ui/DAILY_CHECK.png', 'tw': './assets/tw/ui/DAILY_CHECK.png'}) +DOCK_CHECK = Button(area={'cn': (121, 14, 175, 39), 'en': (121, 14, 175, 39), 'jp': (121, 14, 175, 39), 'tw': (121, 14, 175, 39)}, color={'cn': (156, 171, 207), 'en': (156, 171, 207), 'jp': (156, 171, 207), 'tw': (156, 171, 207)}, button={'cn': (121, 14, 175, 39), 'en': (121, 14, 175, 39), 'jp': (121, 14, 175, 39), 'tw': (121, 14, 175, 39)}, file={'cn': './assets/cn/ui/DOCK_CHECK.png', 'en': './assets/cn/ui/DOCK_CHECK.png', 'jp': './assets/cn/ui/DOCK_CHECK.png', 'tw': './assets/cn/ui/DOCK_CHECK.png'}) DORMMENU_CHECK = Button(area={'cn': (248, 270, 363, 359), 'en': (225, 265, 401, 350), 'jp': (203, 248, 409, 450), 'tw': (248, 270, 363, 359)}, color={'cn': (194, 187, 184), 'en': (169, 168, 173), 'jp': (144, 155, 168), 'tw': (194, 187, 184)}, button={'cn': (248, 270, 363, 359), 'en': (225, 265, 401, 350), 'jp': (203, 248, 409, 450), 'tw': (248, 270, 363, 359)}, file={'cn': './assets/cn/ui/DORMMENU_CHECK.png', 'en': './assets/en/ui/DORMMENU_CHECK.png', 'jp': './assets/jp/ui/DORMMENU_CHECK.png', 'tw': './assets/tw/ui/DORMMENU_CHECK.png'}) DORMMENU_GOTO_ACADEMY = Button(area={'cn': (248, 270, 363, 359), 'en': (225, 265, 401, 350), 'jp': (217, 253, 389, 452), 'tw': (248, 270, 363, 359)}, color={'cn': (194, 187, 184), 'en': (169, 168, 173), 'jp': (154, 162, 171), 'tw': (194, 187, 184)}, button={'cn': (248, 270, 363, 359), 'en': (225, 265, 401, 350), 'jp': (217, 253, 389, 452), 'tw': (248, 270, 363, 359)}, file={'cn': './assets/cn/ui/DORMMENU_GOTO_ACADEMY.png', 'en': './assets/en/ui/DORMMENU_GOTO_ACADEMY.png', 'jp': './assets/jp/ui/DORMMENU_GOTO_ACADEMY.png', 'tw': './assets/tw/ui/DORMMENU_GOTO_ACADEMY.png'}) DORMMENU_GOTO_DORM = Button(area={'cn': (568, 289, 725, 423), 'en': (568, 289, 725, 423), 'jp': (536, 253, 746, 449), 'tw': (568, 289, 725, 423)}, color={'cn': (167, 153, 158), 'en': (167, 153, 158), 'jp': (154, 143, 152), 'tw': (167, 153, 158)}, button={'cn': (568, 289, 725, 423), 'en': (568, 289, 725, 423), 'jp': (536, 253, 746, 449), 'tw': (568, 289, 725, 423)}, file={'cn': './assets/cn/ui/DORMMENU_GOTO_DORM.png', 'en': './assets/en/ui/DORMMENU_GOTO_DORM.png', 'jp': './assets/jp/ui/DORMMENU_GOTO_DORM.png', 'tw': './assets/tw/ui/DORMMENU_GOTO_DORM.png'}) @@ -46,6 +47,7 @@ GOTO_MAIN = Button(area={'cn': (1230, 17, 1253, 45), 'en': (1217, 23, 1241, 45), GUILD_CHECK = Button(area={'cn': (121, 15, 199, 39), 'en': (121, 15, 196, 39), 'jp': (120, 14, 201, 41), 'tw': (120, 15, 200, 40)}, color={'cn': (145, 159, 195), 'en': (116, 129, 167), 'jp': (142, 155, 190), 'tw': (148, 162, 197)}, button={'cn': (121, 15, 199, 39), 'en': (121, 15, 196, 39), 'jp': (120, 14, 201, 41), 'tw': (120, 15, 200, 40)}, file={'cn': './assets/cn/ui/GUILD_CHECK.png', 'en': './assets/en/ui/GUILD_CHECK.png', 'jp': './assets/jp/ui/GUILD_CHECK.png', 'tw': './assets/tw/ui/GUILD_CHECK.png'}) MAIN_GOTO_BUILD = Button(area={'cn': (958, 665, 1113, 714), 'en': (962, 688, 1109, 711), 'jp': (1035, 674, 1088, 702), 'tw': (963, 671, 1091, 709)}, color={'cn': (129, 83, 76), 'en': (145, 88, 79), 'jp': (187, 131, 125), 'tw': (145, 93, 85)}, button={'cn': (958, 665, 1113, 714), 'en': (962, 688, 1109, 711), 'jp': (1035, 674, 1088, 702), 'tw': (963, 671, 1091, 709)}, file={'cn': './assets/cn/ui/MAIN_GOTO_BUILD.png', 'en': './assets/en/ui/MAIN_GOTO_BUILD.png', 'jp': './assets/jp/ui/MAIN_GOTO_BUILD.png', 'tw': './assets/tw/ui/MAIN_GOTO_BUILD.png'}) MAIN_GOTO_CAMPAIGN = Button(area={'cn': (1029, 304, 1102, 342), 'en': (1027, 307, 1118, 333), 'jp': (1019, 305, 1096, 343), 'tw': (1026, 303, 1104, 344)}, color={'cn': (240, 213, 157), 'en': (243, 219, 165), 'jp': (239, 210, 155), 'tw': (240, 213, 162)}, button={'cn': (1021, 292, 1160, 432), 'en': (1018, 293, 1156, 431), 'jp': (1006, 288, 1155, 436), 'tw': (1014, 288, 1159, 433)}, file={'cn': './assets/cn/ui/MAIN_GOTO_CAMPAIGN.png', 'en': './assets/en/ui/MAIN_GOTO_CAMPAIGN.png', 'jp': './assets/jp/ui/MAIN_GOTO_CAMPAIGN.png', 'tw': './assets/tw/ui/MAIN_GOTO_CAMPAIGN.png'}) +MAIN_GOTO_DOCK = Button(area={'cn': (249, 683, 300, 704), 'en': (249, 683, 300, 704), 'jp': (249, 683, 300, 704), 'tw': (249, 683, 300, 704)}, color={'cn': (148, 162, 199), 'en': (148, 162, 199), 'jp': (148, 162, 199), 'tw': (148, 162, 199)}, button={'cn': (249, 683, 300, 704), 'en': (249, 683, 300, 704), 'jp': (249, 683, 300, 704), 'tw': (249, 683, 300, 704)}, file={'cn': './assets/cn/ui/MAIN_GOTO_DOCK.png', 'en': './assets/cn/ui/MAIN_GOTO_DOCK.png', 'jp': './assets/cn/ui/MAIN_GOTO_DOCK.png', 'tw': './assets/cn/ui/MAIN_GOTO_DOCK.png'}) MAIN_GOTO_DORMMENU = Button(area={'cn': (1029, 304, 1102, 342), 'en': (1027, 307, 1118, 333), 'jp': (1006, 288, 1155, 436), 'tw': (1026, 303, 1104, 344)}, color={'cn': (240, 213, 157), 'en': (243, 219, 165), 'jp': (216, 171, 100), 'tw': (240, 213, 162)}, button={'cn': (488, 667, 638, 712), 'en': (498, 670, 631, 713), 'jp': (491, 670, 635, 710), 'tw': (488, 667, 638, 712)}, file={'cn': './assets/cn/ui/MAIN_GOTO_DORMMENU.png', 'en': './assets/en/ui/MAIN_GOTO_DORMMENU.png', 'jp': './assets/jp/ui/MAIN_GOTO_DORMMENU.png', 'tw': './assets/tw/ui/MAIN_GOTO_DORMMENU.png'}) MAIN_GOTO_EVENT_LIST = Button(area={'cn': (607, 141, 657, 191), 'en': (607, 141, 657, 191), 'jp': (607, 141, 657, 191), 'tw': (607, 141, 657, 191)}, color={'cn': (216, 187, 187), 'en': (216, 187, 187), 'jp': (216, 187, 187), 'tw': (216, 187, 187)}, button={'cn': (607, 141, 657, 191), 'en': (607, 141, 657, 191), 'jp': (607, 141, 657, 191), 'tw': (607, 141, 657, 191)}, file={'cn': './assets/cn/ui/MAIN_GOTO_EVENT_LIST.png', 'en': './assets/en/ui/MAIN_GOTO_EVENT_LIST.png', 'jp': './assets/jp/ui/MAIN_GOTO_EVENT_LIST.png', 'tw': './assets/tw/ui/MAIN_GOTO_EVENT_LIST.png'}) MAIN_GOTO_FLEET = Button(area={'cn': (859, 372, 936, 410), 'en': (832, 378, 975, 404), 'jp': (736, 360, 985, 435), 'tw': (855, 371, 936, 411)}, color={'cn': (187, 216, 248), 'en': (183, 215, 247), 'jp': (107, 164, 233), 'tw': (180, 212, 248)}, button={'cn': (749, 364, 992, 430), 'en': (777, 365, 987, 423), 'jp': (736, 360, 985, 435), 'tw': (741, 364, 990, 435)}, file={'cn': './assets/cn/ui/MAIN_GOTO_FLEET.png', 'en': './assets/en/ui/MAIN_GOTO_FLEET.png', 'jp': './assets/jp/ui/MAIN_GOTO_FLEET.png', 'tw': './assets/tw/ui/MAIN_GOTO_FLEET.png'}) diff --git a/module/ui/page.py b/module/ui/page.py index 345c7b379..97286e2b4 100644 --- a/module/ui/page.py +++ b/module/ui/page.py @@ -249,3 +249,7 @@ page_build = Page(BUILD_CHECK) page_main.link(button=MAIN_GOTO_BUILD, destination=page_build) page_build.link(button=GOTO_MAIN, destination=page_main) +# Dock +page_dock = Page(DOCK_CHECK) +page_main.link(button=MAIN_GOTO_DOCK, destination=page_dock) +page_dock.link(button=GOTO_MAIN, destination=page_main) \ No newline at end of file