mirror of
https://gitee.com/sui-feng-cb/AzurLaneAutoScript1
synced 2026-03-23 08:38:00 +08:00
Upd: GemsFarming hardmode
This commit is contained in:
@@ -41,6 +41,10 @@ FLEET_DETAIL_ENTER = Button(area={'cn': (729, 314, 802, 438), 'en': (729, 314, 8
|
||||
FLEET_DETAIL_ENTER_FLAGSHIP = Button(area={'cn': (103, 327, 176, 437), 'en': (103, 327, 176, 437), 'jp': (103, 327, 176, 437), 'tw': (103, 327, 176, 437)}, color={'cn': (141, 135, 138), 'en': (141, 135, 138), 'jp': (141, 135, 138), 'tw': (141, 135, 138)}, button={'cn': (103, 327, 176, 437), 'en': (103, 327, 176, 437), 'jp': (103, 327, 176, 437), 'tw': (103, 327, 176, 437)}, file={'cn': './assets/cn/equipment/FLEET_DETAIL_ENTER_FLAGSHIP.png', 'en': './assets/en/equipment/FLEET_DETAIL_ENTER_FLAGSHIP.png', 'jp': './assets/jp/equipment/FLEET_DETAIL_ENTER_FLAGSHIP.png', 'tw': './assets/tw/equipment/FLEET_DETAIL_ENTER_FLAGSHIP.png'})
|
||||
FLEET_ENTER = Button(area={'cn': (502, 474, 517, 489), 'en': (502, 474, 517, 489), 'jp': (502, 474, 517, 489), 'tw': (502, 474, 517, 489)}, color={'cn': (58, 62, 77), 'en': (58, 62, 77), 'jp': (58, 62, 77), 'tw': (58, 62, 77)}, button={'cn': (502, 474, 517, 489), 'en': (502, 474, 517, 489), 'jp': (502, 474, 517, 489), 'tw': (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', 'tw': './assets/tw/equipment/FLEET_ENTER.png'})
|
||||
FLEET_ENTER_FLAGSHIP = Button(area={'cn': (577, 277, 605, 291), 'en': (577, 277, 605, 291), 'jp': (577, 277, 605, 291), 'tw': (577, 277, 605, 291)}, color={'cn': (132, 124, 128), 'en': (132, 124, 128), 'jp': (132, 124, 128), 'tw': (132, 124, 128)}, button={'cn': (577, 277, 605, 291), 'en': (577, 277, 605, 291), 'jp': (577, 277, 605, 291), 'tw': (577, 277, 605, 291)}, file={'cn': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP.png', 'en': './assets/en/equipment/FLEET_ENTER_FLAGSHIP.png', 'jp': './assets/jp/equipment/FLEET_ENTER_FLAGSHIP.png', 'tw': './assets/tw/equipment/FLEET_ENTER_FLAGSHIP.png'})
|
||||
FLEET_ENTER_FLAGSHIP_HARD_1 = Button(area={'cn': (390, 173, 476, 259), 'en': (390, 173, 476, 259), 'jp': (390, 173, 476, 259), 'tw': (390, 173, 476, 259)}, color={'cn': (91, 71, 68), 'en': (91, 71, 68), 'jp': (91, 71, 68), 'tw': (91, 71, 68)}, button={'cn': (390, 173, 476, 259), 'en': (390, 173, 476, 259), 'jp': (390, 173, 476, 259), 'tw': (390, 173, 476, 259)}, file={'cn': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_1.png', 'en': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_1.png', 'jp': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_1.png', 'tw': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_1.png'})
|
||||
FLEET_ENTER_FLAGSHIP_HARD_2 = Button(area={'cn': (390, 287, 476, 373), 'en': (390, 287, 476, 373), 'jp': (390, 287, 476, 373), 'tw': (390, 287, 476, 373)}, color={'cn': (69, 59, 55), 'en': (69, 59, 55), 'jp': (69, 59, 55), 'tw': (69, 59, 55)}, button={'cn': (390, 287, 476, 373), 'en': (390, 287, 476, 373), 'jp': (390, 287, 476, 373), 'tw': (390, 287, 476, 373)}, file={'cn': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_2.png', 'en': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_2.png', 'jp': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_2.png', 'tw': './assets/cn/equipment/FLEET_ENTER_FLAGSHIP_HARD_2.png'})
|
||||
FLEET_ENTER_HARD_1 = Button(area={'cn': (705, 173, 791, 259), 'en': (705, 173, 791, 259), 'jp': (705, 173, 791, 259), 'tw': (705, 173, 791, 259)}, color={'cn': (63, 64, 62), 'en': (63, 64, 62), 'jp': (63, 64, 62), 'tw': (63, 64, 62)}, button={'cn': (705, 173, 791, 259), 'en': (705, 173, 791, 259), 'jp': (705, 173, 791, 259), 'tw': (705, 173, 791, 259)}, file={'cn': './assets/cn/equipment/FLEET_ENTER_HARD_1.png', 'en': './assets/cn/equipment/FLEET_ENTER_HARD_1.png', 'jp': './assets/cn/equipment/FLEET_ENTER_HARD_1.png', 'tw': './assets/cn/equipment/FLEET_ENTER_HARD_1.png'})
|
||||
FLEET_ENTER_HARD_2 = Button(area={'cn': (705, 287, 791, 373), 'en': (705, 287, 791, 373), 'jp': (705, 287, 791, 373), 'tw': (705, 287, 791, 373)}, color={'cn': (39, 44, 50), 'en': (39, 44, 50), 'jp': (39, 44, 50), 'tw': (39, 44, 50)}, button={'cn': (705, 287, 791, 373), 'en': (705, 287, 791, 373), 'jp': (705, 287, 791, 373), 'tw': (705, 287, 791, 373)}, file={'cn': './assets/cn/equipment/FLEET_ENTER_HARD_2.png', 'en': './assets/cn/equipment/FLEET_ENTER_HARD_2.png', 'jp': './assets/cn/equipment/FLEET_ENTER_HARD_2.png', 'tw': './assets/cn/equipment/FLEET_ENTER_HARD_2.png'})
|
||||
FLEET_NEXT = Button(area={'cn': (1234, 327, 1254, 356), 'en': (1234, 327, 1254, 356), 'jp': (1234, 327, 1254, 356), 'tw': (1234, 327, 1254, 356)}, color={'cn': (72, 93, 125), 'en': (72, 93, 125), 'jp': (72, 93, 125), 'tw': (72, 93, 125)}, button={'cn': (1234, 327, 1254, 356), 'en': (1234, 327, 1254, 356), 'jp': (1234, 327, 1254, 356), 'tw': (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', 'tw': './assets/tw/equipment/FLEET_NEXT.png'})
|
||||
FLEET_PREV = Button(area={'cn': (26, 327, 46, 356), 'en': (26, 327, 46, 356), 'jp': (26, 327, 46, 356), 'tw': (26, 327, 46, 356)}, color={'cn': (72, 93, 125), 'en': (72, 93, 125), 'jp': (72, 93, 125), 'tw': (72, 93, 125)}, button={'cn': (26, 327, 46, 356), 'en': (26, 327, 46, 356), 'jp': (26, 327, 46, 356), 'tw': (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', 'tw': './assets/tw/equipment/FLEET_PREV.png'})
|
||||
OCR_FLEET_INDEX = Button(area={'cn': (957, 113, 987, 163), 'en': (957, 113, 987, 163), 'jp': (957, 113, 987, 163), 'tw': (957, 113, 987, 163)}, color={'cn': (36, 54, 86), 'en': (36, 54, 86), 'jp': (36, 54, 86), 'tw': (36, 54, 86)}, button={'cn': (957, 113, 987, 163), 'en': (957, 113, 987, 163), 'jp': (957, 113, 987, 163), 'tw': (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', 'tw': './assets/tw/equipment/OCR_FLEET_INDEX.png'})
|
||||
|
||||
@@ -1,47 +1,40 @@
|
||||
from module.campaign.campaign_base import CampaignBase
|
||||
from module.campaign.run import CampaignRun
|
||||
from module.equipment.assets import *
|
||||
from module.equipment.equipment import Equipment
|
||||
from module.logger import logger
|
||||
from module.equipment.equipment_change import EquipmentChange
|
||||
from module.map.assets import FLEET_PREPARATION, MAP_PREPARATION
|
||||
from module.ocr.ocr import Digit
|
||||
from module.ui.assets import FLEET_CHECK
|
||||
from module.ui.assets import BACK_ARROW, FLEET_CHECK
|
||||
from module.ui.page import page_fleet
|
||||
|
||||
OCR_FLEET_INDEX = Digit(OCR_FLEET_INDEX, letter=(90, 154, 255), threshold=128, alphabet='123456')
|
||||
|
||||
|
||||
class DailyEquipment(Equipment):
|
||||
equipment_has_take_on = False
|
||||
|
||||
@property
|
||||
def _fleet_daily(self):
|
||||
fleet = self.config.FLEET_DAILY
|
||||
if isinstance(fleet, list):
|
||||
logger.info(f'Multiple daily fleets are set, change equipment only for the first one. fleet: {fleet}')
|
||||
return fleet[0]
|
||||
else:
|
||||
return fleet
|
||||
|
||||
def equipment_take_on(self):
|
||||
if self.config.FLEET_DAILY_EQUIPMENT is None:
|
||||
return False
|
||||
if self.equipment_has_take_on:
|
||||
return False
|
||||
|
||||
class FleetEquipment(EquipmentChange):
|
||||
def fleet_enter(self, fleet):
|
||||
self.ui_ensure(page_fleet)
|
||||
self.ui_ensure_index(self._fleet_daily, letter=OCR_FLEET_INDEX, next_button=FLEET_NEXT, prev_button=FLEET_PREV)
|
||||
super().equipment_take_on(enter=FLEET_ENTER, out=FLEET_CHECK, fleet=self.config.FLEET_DAILY_EQUIPMENT)
|
||||
self.equipment_has_take_on = True
|
||||
self.device.sleep(1)
|
||||
return True
|
||||
self.ui_ensure_index(fleet, letter=OCR_FLEET_INDEX,
|
||||
next_button=FLEET_NEXT, prev_button=FLEET_PREV, skip_first_screenshot=True)
|
||||
|
||||
def equipment_take_off(self):
|
||||
if self.config.FLEET_DAILY_EQUIPMENT is None:
|
||||
return False
|
||||
if not self.equipment_has_take_on:
|
||||
return False
|
||||
def fleet_equipment_take_on_preset(self, preset_record, enter=FLEET_DETAIL_ENTER_FLAGSHIP,
|
||||
long_click=False, out=FLEET_DETAIL_CHECK):
|
||||
self.ui_click(FLEET_DETAIL, appear_button=page_fleet.check_button,
|
||||
check_button=FLEET_DETAIL_CHECK, skip_first_screenshot=True)
|
||||
super().fleet_equipment_take_on_preset(preset_record=preset_record, enter=FLEET_DETAIL_ENTER_FLAGSHIP,
|
||||
long_click=False, out=FLEET_DETAIL_CHECK)
|
||||
self.ui_back(FLEET_CHECK)
|
||||
|
||||
self.ui_ensure(page_fleet)
|
||||
self.ui_ensure_index(self._fleet_daily, letter=OCR_FLEET_INDEX, next_button=FLEET_NEXT, prev_button=FLEET_PREV)
|
||||
super().equipment_take_off(enter=FLEET_ENTER, out=FLEET_CHECK, fleet=self.config.FLEET_DAILY_EQUIPMENT)
|
||||
self.equipment_has_take_on = False
|
||||
self.device.sleep(1)
|
||||
return True
|
||||
def fleet_equipment_take_off(self, enter=FLEET_DETAIL_ENTER_FLAGSHIP, long_click=False, out=FLEET_DETAIL_CHECK):
|
||||
self.ui_click(FLEET_DETAIL, appear_button=page_fleet.check_button,
|
||||
check_button=FLEET_DETAIL_CHECK, skip_first_screenshot=True)
|
||||
super().fleet_equipment_take_off(enter=enter, long_click=long_click, out=out)
|
||||
self.ui_back(FLEET_CHECK)
|
||||
|
||||
def fleet_enter_ship(self, button):
|
||||
self.ui_click(FLEET_DETAIL, appear_button=page_fleet.check_button,
|
||||
check_button=FLEET_DETAIL_CHECK, skip_first_screenshot=True)
|
||||
self.equip_enter(button, long_click=False)
|
||||
|
||||
def fleet_back(self):
|
||||
self.ui_back(FLEET_DETAIL_CHECK)
|
||||
self.ui_back(FLEET_CHECK)
|
||||
|
||||
Reference in New Issue
Block a user