mirror of
https://github.com/LmeSzinc/AzurLaneAutoScript.git
synced 2025-01-07 07:07:15 +08:00
Fix: Handle MEOWFFICER_TRAIN_EVALUATE in _meow_skip_lock() (#3917)
This commit is contained in:
parent
d1b16a99c2
commit
ea68f68dc9
@ -86,3 +86,14 @@ class AdbManager(DeployConfig):
|
||||
|
||||
initer._device.shell(["rm", "/data/local/tmp/minicap"])
|
||||
initer._device.shell(["rm", "/data/local/tmp/minicap.so"])
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
import psutil
|
||||
for c in psutil.net_connections():
|
||||
# print(type(c.laddr), c.laddr, type(c.raddr), c.raddr)
|
||||
try:
|
||||
if c.laddr.port == 5038 or c.raddr.port == 5038:
|
||||
print(c.status, c.pid)
|
||||
except AttributeError:
|
||||
continue
|
@ -219,7 +219,7 @@ class AssetExtractor:
|
||||
modules = [m for m in os.listdir(AzurLaneConfig.ASSETS_FOLDER + '/cn')
|
||||
if os.path.isdir(os.path.join(AzurLaneConfig.ASSETS_FOLDER + '/cn', m))]
|
||||
|
||||
process_map(worker, modules)
|
||||
process_map(worker, modules, max_workers=2)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
@ -38,7 +38,7 @@ class Config:
|
||||
MAP_SWIPE_MULTIPLY_MINITOUCH = (1.276, 0.974)
|
||||
|
||||
|
||||
cfg = AzurLaneConfig('alas', task='Alas').merge(Config())
|
||||
cfg = AzurLaneConfig('alas5', task='Alas').merge(Config())
|
||||
cfg.DETECTION_BACKEND = 'perspective'
|
||||
az = CampaignBase(cfg)
|
||||
az.map = MAP
|
||||
@ -165,4 +165,4 @@ if __name__ == '__main__':
|
||||
-- -- -- -- -- --
|
||||
After run, Result is ready to copy.
|
||||
"""
|
||||
sim = SwipeSimulate((420, 0)).run()
|
||||
sim = SwipeSimulate((380, 0)).run()
|
||||
|
@ -1,6 +1,5 @@
|
||||
import shutil
|
||||
|
||||
import numpy as np
|
||||
from tqdm import tqdm
|
||||
|
||||
import module.config.server as server
|
||||
@ -8,8 +7,8 @@ import module.config.server as server
|
||||
server.server = 'cn' # Edit your server here.
|
||||
|
||||
from module.logger import logger
|
||||
from module.statistics.battle_status import BattleStatusStatistics
|
||||
from module.statistics.get_items import GetItemsStatistics
|
||||
from module.statistics.image.battle_status import BattleStatusStatistics
|
||||
from module.statistics.image.get_items import GetItemsStatistics
|
||||
from module.statistics.utils import *
|
||||
|
||||
STATUS_ITEMS_INTERVAL = 10
|
||||
|
@ -304,15 +304,15 @@ class MapData:
|
||||
|
||||
# portal
|
||||
self.portal = []
|
||||
if self.map_id in MAP_EVENT_LIST:
|
||||
for event_id in MAP_EVENT_LIST[self.map_id]['event_list'].values():
|
||||
event = MAP_EVENT_TEMPLATE[event_id]
|
||||
for effect in event['effect'].values():
|
||||
if effect[0] == 'jump':
|
||||
address = event['address']
|
||||
address = location2node((address[1], address[0]))
|
||||
target = location2node((effect[2], effect[1]))
|
||||
self.portal.append((address, target))
|
||||
# if self.map_id in MAP_EVENT_LIST:
|
||||
# for event_id in MAP_EVENT_LIST[self.map_id]['event_list'].values():
|
||||
# event = MAP_EVENT_TEMPLATE[event_id]
|
||||
# for effect in event['effect'].values():
|
||||
# if effect[0] == 'jump':
|
||||
# address = event['address']
|
||||
# address = location2node((address[1], address[0]))
|
||||
# target = location2node((effect[2], effect[1]))
|
||||
# self.portal.append((address, target))
|
||||
|
||||
# land_based
|
||||
# land_based = {{6, 7, 1}, ...}
|
||||
@ -676,8 +676,8 @@ Arguments:
|
||||
adapted for war_archives usage
|
||||
"""
|
||||
FILE = '../AzurLaneLuaScripts'
|
||||
FOLDER = './campaign/test'
|
||||
KEYWORD = ''
|
||||
FOLDER = './campaign/event_20240521_cn'
|
||||
KEYWORD = '1810001'
|
||||
SELECT = True
|
||||
OVERWRITE = True
|
||||
IS_WAR_ARCHIVES = False
|
||||
@ -686,8 +686,8 @@ ENEMY_FILTER = '1L > 1M > 1E > 1C > 2L > 2M > 2E > 2C > 3L > 3M > 3E > 3C'
|
||||
LOADER = LuaLoader(FILE, server='CN')
|
||||
DATA = LOADER.load('./sharecfgdata/chapter_template.lua')
|
||||
DATA_LOOP = LOADER.load('./sharecfgdata/chapter_template_loop.lua')
|
||||
MAP_EVENT_LIST = LOADER.load('./sharecfg/map_event_list.lua')
|
||||
MAP_EVENT_TEMPLATE = LOADER.load('./sharecfg/map_event_template.lua')
|
||||
# MAP_EVENT_LIST = LOADER.load('./sharecfg/map_event_list.lua')
|
||||
# MAP_EVENT_TEMPLATE = LOADER.load('./sharecfg/map_event_template.lua')
|
||||
EXPECTATION_DATA = LOADER.load('./sharecfgdata/expedition_data_template.lua')
|
||||
|
||||
ct = ChapterTemplate()
|
||||
|
@ -126,7 +126,7 @@ Arguments:
|
||||
FILE: Path to repository, such as 'xxx/AzurLaneLuaScripts'
|
||||
SAVE: File to save, 'module/os/map_data.py'
|
||||
"""
|
||||
FOLDER = ''
|
||||
FOLDER = r'E:\ProgramData\Pycharm\AzurLaneLuaScripts'
|
||||
SAVE = 'module/os/map_data.py'
|
||||
|
||||
LOADER = LuaLoader(FOLDER)
|
||||
|
@ -15,15 +15,28 @@ class Config:
|
||||
"""
|
||||
Paste the config of map file here
|
||||
"""
|
||||
pass
|
||||
INTERNAL_LINES_FIND_PEAKS_PARAMETERS = {
|
||||
'height': (80, 255 - 17),
|
||||
'width': (0.9, 10),
|
||||
'prominence': 10,
|
||||
'distance': 35,
|
||||
}
|
||||
EDGE_LINES_FIND_PEAKS_PARAMETERS = {
|
||||
'height': (255 - 17, 255),
|
||||
'prominence': 10,
|
||||
'distance': 50,
|
||||
'wlen': 1000
|
||||
}
|
||||
HOMO_EDGE_COLOR_RANGE = (0, 17)
|
||||
HOMO_EDGE_HOUGHLINES_THRESHOLD = 210
|
||||
|
||||
from module.os.config import OSConfig
|
||||
cfg = AzurLaneConfig('alas').merge(OSConfig())
|
||||
cfg = AzurLaneConfig('alas5').merge(Config())
|
||||
|
||||
# Folder to save temp images
|
||||
folder = './screenshots/relative_crop'
|
||||
# Put Screenshot here
|
||||
file = ''
|
||||
file = r'E:\ProgramData\Pycharm\StarRailCopilot\screenshots\dev_screenshots\2023-12-22_00-41-21-728648.png'
|
||||
|
||||
i = load_image(file)
|
||||
grids = View(cfg)
|
||||
@ -36,7 +49,7 @@ os.makedirs(folder, exist_ok=True)
|
||||
for grid in grids:
|
||||
# Find more relative_crop area in module/map/grid_predictor.py
|
||||
# This one is for `predict_enemy_genre`
|
||||
piece = rgb2gray(grid.relative_crop((-0.5, -1, 0.5, 0), shape=(60, 60)))
|
||||
piece = rgb2gray(grid.relative_crop((-0, -0.2, 0.8, 0.2), shape=(40, 20)))
|
||||
|
||||
file = '%s_%s_%s.png' % (int(time.time()), grid.location[0], grid.location[1])
|
||||
file = os.path.join(folder, file)
|
||||
|
@ -17,7 +17,19 @@ class Config:
|
||||
"""
|
||||
Paste the config of map file here
|
||||
"""
|
||||
pass
|
||||
INTERNAL_LINES_FIND_PEAKS_PARAMETERS = {
|
||||
'height': (80, 255 - 17),
|
||||
'width': (0.9, 10),
|
||||
'prominence': 10,
|
||||
'distance': 35,
|
||||
}
|
||||
EDGE_LINES_FIND_PEAKS_PARAMETERS = {
|
||||
'height': (255 - 17, 255),
|
||||
'prominence': 10,
|
||||
'distance': 50,
|
||||
'wlen': 1000
|
||||
}
|
||||
HOMO_EDGE_COLOR_RANGE = (0, 17)
|
||||
|
||||
|
||||
"""
|
||||
@ -41,10 +53,11 @@ Arguments:
|
||||
NAME: Siren name, images will save in <FOLDER>/<NAME>
|
||||
NODE: Node in local map view, that you are going to crop.
|
||||
"""
|
||||
CONFIG = 'alas'
|
||||
FOLDER = ''
|
||||
NAME = 'Deutschland'
|
||||
NODE = 'D5'
|
||||
CONFIG = 'alas5'
|
||||
FOLDER = r'E:\ProgramData\Pycharm\Azurlane-image\screenshot\record'
|
||||
NAME = 'huiguangzhihe'
|
||||
NODE = 'E5'
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
for folder in [FOLDER, os.path.join(FOLDER, NAME)]:
|
||||
|
@ -27,7 +27,7 @@ Arguments:
|
||||
"""
|
||||
# FOLDER = ''
|
||||
# NAME = 'Deutschland'
|
||||
AREA = (32, 32, 54, 52)
|
||||
AREA = (25, 16, 37, 34)
|
||||
THRESHOLD = 0.92
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
@ -137,7 +137,7 @@ Arguments:
|
||||
FILE: Path to AzurLaneData, '<your_folder>/AzurLaneData'
|
||||
SAVE: File to save, 'module/research/project_data.py'
|
||||
"""
|
||||
FOLDER = ''
|
||||
FOLDER = r'E:\ProgramData\Pycharm\AzurLaneLuaScripts'
|
||||
SAVE = 'module/research/project_data.py'
|
||||
|
||||
TechnologyTemplate().write(SAVE)
|
||||
|
@ -20,7 +20,7 @@ class LuaLoader:
|
||||
]
|
||||
|
||||
def __init__(self, folder, server='zh-CN'):
|
||||
self.folder = folder
|
||||
self.folder = os.path.abspath(folder)
|
||||
self._server = ''
|
||||
self.server = server
|
||||
|
||||
|
@ -15,6 +15,7 @@ from module.retire.retirement import Retirement
|
||||
from module.statistics.azurstats import DropImage
|
||||
from module.template.assets import TEMPLATE_COMBAT_LOADING
|
||||
from module.ui.assets import BACK_ARROW, MUNITIONS_CHECK
|
||||
from module.ui.page import page_event
|
||||
|
||||
|
||||
class Combat(Level, HPBalancer, Retirement, SubmarineCall, CombatAuto, CombatManual, AutoSearchHandler):
|
||||
|
@ -67,7 +67,44 @@ def filepath_config(filename, mod_name='alas'):
|
||||
def filepath_code():
|
||||
return './module/config/config_generated.py'
|
||||
|
||||
def show_function_call():
|
||||
"""
|
||||
INFO 21:07:31.554 │ Function calls:
|
||||
<string> L1 <module>
|
||||
spawn.py L116 spawn_main()
|
||||
spawn.py L129 _main()
|
||||
process.py L314 _bootstrap()
|
||||
process.py L108 run()
|
||||
process_manager.py L149 run_process()
|
||||
alas.py L285 loop()
|
||||
alas.py L69 run()
|
||||
src.py L55 rogue()
|
||||
rogue.py L36 run()
|
||||
rogue.py L18 rogue_once()
|
||||
entry.py L335 rogue_world_enter()
|
||||
path.py L193 rogue_path_select()
|
||||
"""
|
||||
import os
|
||||
import traceback
|
||||
stack = traceback.extract_stack()
|
||||
func_list = []
|
||||
for row in stack:
|
||||
filename, line_number, function_name, _ = row
|
||||
filename = os.path.basename(filename)
|
||||
# /tasks/character/switch.py:64 character_update()
|
||||
func_list.append([filename, str(line_number), function_name])
|
||||
max_filename = max([len(row[0]) for row in func_list])
|
||||
max_linenum = max([len(row[1]) for row in func_list]) + 1
|
||||
|
||||
def format_(file, line, func):
|
||||
file = file.rjust(max_filename, " ")
|
||||
line = f'L{line}'.rjust(max_linenum, " ")
|
||||
if not func.startswith('<'):
|
||||
func = f'{func}()'
|
||||
return f'{file} {line} {func}'
|
||||
|
||||
func_list = [f'\n{format_(*row)}' for row in func_list]
|
||||
print('Function calls:' + ''.join(func_list))
|
||||
def read_file(file):
|
||||
"""
|
||||
Read a file, support both .yaml and .json format.
|
||||
|
@ -173,8 +173,8 @@ class Benchmark(DaemonBase, CampaignUI):
|
||||
def get_test_methods(self) -> t.Tuple[t.Tuple[str], t.Tuple[str]]:
|
||||
device = self.config.Benchmark_DeviceType
|
||||
# device == 'emulator'
|
||||
screenshot = ['ADB', 'ADB_nc', 'uiautomator2', 'aScreenCap', 'aScreenCap_nc', 'DroidCast', 'DroidCast_raw']
|
||||
click = ['ADB', 'uiautomator2', 'minitouch']
|
||||
screenshot = ['DroidCast_raw']
|
||||
click = ['ADB', 'uiautomator2', 'minitouch', 'MaaTouch']
|
||||
|
||||
def remove(*args):
|
||||
return [l for l in screenshot if l not in args]
|
||||
@ -205,8 +205,8 @@ class Benchmark(DaemonBase, CampaignUI):
|
||||
def run(self):
|
||||
self.config.override(Emulator_ScreenshotMethod='ADB')
|
||||
self.device.uninstall_minicap()
|
||||
self.ui_goto_campaign()
|
||||
self.campaign_set_chapter('7-2')
|
||||
# self.ui_goto_campaign()
|
||||
# self.campaign_set_chapter('7-2')
|
||||
|
||||
logger.attr('DeviceType', self.config.Benchmark_DeviceType)
|
||||
logger.attr('TestScene', self.config.Benchmark_TestScene)
|
||||
|
@ -7,6 +7,7 @@ from module.map.map_operation import FLEET_PREPARATION, MAP_PREPARATION
|
||||
|
||||
class AzurLaneDaemon(DaemonBase, CampaignBase):
|
||||
def run(self):
|
||||
self.config.override(Emotion_Mode='ignore')
|
||||
while 1:
|
||||
self.device.screenshot()
|
||||
|
||||
@ -61,6 +62,8 @@ class AzurLaneDaemon(DaemonBase, CampaignBase):
|
||||
|
||||
# End
|
||||
# No end condition, stop it manually.
|
||||
if self.handle_popup_confirm():
|
||||
continue
|
||||
|
||||
return True
|
||||
|
||||
|
@ -14,6 +14,7 @@ from adbutils.errors import AdbError
|
||||
|
||||
from module.base.decorator import Config, cached_property, del_cached_property, run_once
|
||||
from module.base.utils import ensure_time
|
||||
from module.config.config import AzurLaneConfig
|
||||
from module.config.server import VALID_CHANNEL_PACKAGE, VALID_PACKAGE, set_server
|
||||
from module.device.connection_attr import ConnectionAttr
|
||||
from module.device.method.utils import (PackageNotInstalled, RETRY_TRIES, get_serial_pair, handle_adb_error,
|
||||
@ -1014,3 +1015,16 @@ class Connection(ConnectionAttr):
|
||||
f'Multiple AzurLane packages found, auto package detection cannot decide which to choose, '
|
||||
'please copy one of the available devices listed above to Alas.Emulator.PackageName')
|
||||
raise RequestHumanTakeover
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
cfg = AzurLaneConfig('alas')
|
||||
cfg.override(Emulator_Serial='127.0.0.1:16416')
|
||||
self = Connection(cfg)
|
||||
with self.adb_client.open as c:
|
||||
list_cmd = f"framebuffer:"
|
||||
c.send_command(list_cmd)
|
||||
c.check_okay()
|
||||
|
||||
version = c.read_string_block()
|
||||
print(version)
|
@ -306,3 +306,12 @@ class Device(Screenshot, Control, AppControl):
|
||||
super().app_stop()
|
||||
self.stuck_record_clear()
|
||||
self.click_record_clear()
|
||||
if __name__ == '__main__':
|
||||
self = Device('alas')
|
||||
# self.maatouch_uninstall()
|
||||
# self.maatouch_install()
|
||||
# self.click_maatouch(300, 300)
|
||||
# self.click_maatouch(300, 300)
|
||||
# self.drag_maatouch((800, 300), (300, 300))
|
||||
self.swipe_minitouch((300, 300), (800, 300))
|
||||
self.swipe_minitouch((800, 300), (300, 300))
|
||||
|
@ -344,3 +344,12 @@ class DroidCast(Uiautomator2):
|
||||
for proc in self._iter_droidcast_proc():
|
||||
logger.info(f'Kill pid={proc.pid}')
|
||||
self.adb_shell(['kill', '-s', 9, proc.pid])
|
||||
|
||||
if __name__ == '__main__':
|
||||
self = DroidCast('alas')
|
||||
# self.adb_shell(["rm", self.config.DROIDCAST_FILEPATH_REMOTE])
|
||||
# self.droidcast_stop()
|
||||
for _ in range(5):
|
||||
self.image = self.screenshot_droidcast_raw()
|
||||
from PIL import Image
|
||||
Image.fromarray(self.image).show()
|
||||
|
@ -190,6 +190,6 @@ class SettingExtractor:
|
||||
|
||||
if __name__ == '__main__':
|
||||
# Path to AzurLaneLuaScripts\CN
|
||||
FOLDER = r''
|
||||
FOLDER = r'E:\ProgramData\Pycharm\AzurLaneLuaScripts\CN'
|
||||
ex = SettingExtractor()
|
||||
ex.generate(FOLDER)
|
||||
|
@ -10,6 +10,12 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("autoBotIsAcitve" .. slot6, 0)
|
||||
autoBotIsAcitve = Field(formatter=int, default=0, regex='autoBotIsAcitve(.*)')
|
||||
|
||||
# /controller/command/stage/trackingcommand.lua
|
||||
# PlayerPrefs.GetString("remaster_tip")
|
||||
remaster_tip = Field(formatter=str, default='', regex='remaster_tip')
|
||||
# PlayerPrefs.GetInt("chapter_autofight_flag_" .. uv0.id, 1)
|
||||
chapter_autofight_flag = Field(formatter=int, default=1, regex='chapter_autofight_flag_(.*)')
|
||||
|
||||
# /gamecfg/activity/entrancedata.lua
|
||||
# PlayerPrefs.GetString("permanent_time", "")
|
||||
permanent_time = Field(formatter=str, default='', regex='permanent_time')
|
||||
@ -94,6 +100,10 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt(AUTOFIGHT_DOWN_FRAME, 0)
|
||||
pass # Unknown
|
||||
|
||||
# /mod/experiment/world/model/worldatlas.lua
|
||||
# PlayerPrefs.GetInt(string.format("world_new_shop_unlock_count_in_port_%d_%d_%d", getProxy(PlayerProxy):getRawData().id, nowWorld().activateCount, slot1), -1)
|
||||
world_new_shop_unlock_count_in_port__d__d__d = Field(formatter=int, default=0, regex='world_new_shop_unlock_count_in_port_%d_%d_%d')
|
||||
|
||||
# /mod/experiment/world/model/worldconst.lua
|
||||
# PlayerPrefs.GetInt("world_help_progress")
|
||||
world_help_progress = Field(formatter=int, default=0, regex='world_help_progress')
|
||||
@ -123,12 +133,14 @@ class GameSettingsGenerated:
|
||||
auto_switch_mode = Field(formatter=int, default=0, regex='auto_switch_mode')
|
||||
# PlayerPrefs.GetString("auto_switch_difficult_safe", "only")
|
||||
auto_switch_difficult_safe = Field(formatter=str, default='only', regex='auto_switch_difficult_safe')
|
||||
# PlayerPrefs.GetInt("auto_switch_mode", 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetString("auto_switch_difficult_base", "all")
|
||||
auto_switch_difficult_base = Field(formatter=str, default='all', regex='auto_switch_difficult_base')
|
||||
|
||||
# /mod/experiment/world/view/wsmapright.lua
|
||||
# PlayerPrefs.GetInt("world_skip_precombat", 0)
|
||||
# PlayerPrefs.GetString("auto_switch_difficult_safe", "only")
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetString("auto_switch_difficult_treasure", "all")
|
||||
auto_switch_difficult_treasure = Field(formatter=str, default='all', regex='auto_switch_difficult_treasure')
|
||||
|
||||
# /model/const/chapterconst.lua
|
||||
# PlayerPrefs.GetInt("chapter_skip_battle")
|
||||
@ -221,6 +233,10 @@ class GameSettingsGenerated:
|
||||
SetScreenRatio = Field(formatter=float, default=0.0, regex='SetScreenRatio')
|
||||
# PlayerPrefs.GetInt("story_autoplay_flag", 0)
|
||||
story_autoplay_flag = Field(formatter=int, default=0, regex='story_autoplay_flag')
|
||||
# PlayerPrefs.GetInt("ActBossTipLastTime", 0)
|
||||
ActBossTipLastTime = Field(formatter=int, default=0, regex='ActBossTipLastTime')
|
||||
# PlayerPrefs.GetInt("ActBossTip", 0)
|
||||
ActBossTip = Field(formatter=int, default=0, regex='ActBossTip')
|
||||
# PlayerPrefs.GetInt("collection_Help", 0)
|
||||
collection_Help = Field(formatter=int, default=0, regex='collection_Help')
|
||||
# PlayerPrefs.GetInt("main_scene_word_toggle", 1)
|
||||
@ -251,6 +267,8 @@ class GameSettingsGenerated:
|
||||
event_act_help1 = Field(formatter=int, default=0, regex='event_act_help1(.*)')
|
||||
# PlayerPrefs.GetInt("story_speed_flag" .. ((not getProxy(PlayerProxy) or getProxy(PlayerProxy):getRawData().id) and 1), 0)
|
||||
story_speed_flag = Field(formatter=int, default=0, regex='story_speed_flag(.*)')
|
||||
# PlayerPrefs.GetInt("Painting_Download_Prefs", 0)
|
||||
Painting_Download_Prefs = Field(formatter=int, default=0, regex='Painting_Download_Prefs')
|
||||
# PlayerPrefs.GetInt("tipLimitSkinShopTime_", 0)
|
||||
tipLimitSkinShopTime = Field(formatter=int, default=0, regex='tipLimitSkinShopTime_')
|
||||
# PlayerPrefs.GetString("_WorldBossProgressTipFlag_", slot1[1] .. "&" .. slot1[1] + slot1[2])
|
||||
@ -265,6 +283,18 @@ class GameSettingsGenerated:
|
||||
IsTipNewTheme = Field(formatter=int, default=0, regex='(.*)IsTipNewTheme(.*)')
|
||||
# PlayerPrefs.GetString(getProxy(PlayerProxy):getRawData().id .. "IsTipNewGenFurniture")
|
||||
IsTipNewGenFurniture = Field(formatter=str, default='', regex='(.*)IsTipNewGenFurniture')
|
||||
# PlayerPrefs.GetString("RandomFlagShipList" .. slot1:getRawData().id, "")
|
||||
RandomFlagShipList = Field(formatter=str, default='', regex='RandomFlagShipList(.*)')
|
||||
# PlayerPrefs.GetInt("RandomFlagShipTime" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
RandomFlagShipTime = Field(formatter=int, default=0, regex='RandomFlagShipTime(.*)')
|
||||
# PlayerPrefs.GetInt("AutoBotCOFlag" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
AutoBotCOFlag = Field(formatter=int, default=0, regex='AutoBotCOFlag(.*)')
|
||||
# PlayerPrefs.GetInt("WorkbenchDailyTip" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
WorkbenchDailyTip = Field(formatter=int, default=0, regex='WorkbenchDailyTip(.*)')
|
||||
# PlayerPrefs.GetInt(BATTLERESULT_SKIP_DISPAY_PAINTING)
|
||||
pass # Unknown
|
||||
# PlayerPrefs.GetInt(BATTLERESULT_DISPAY_PAINTING, 0)
|
||||
pass # Unknown
|
||||
|
||||
# /model/proxy/technologyproxy.lua
|
||||
# PlayerPrefs.GetInt("technology_version")
|
||||
@ -293,11 +323,13 @@ class GameSettingsGenerated:
|
||||
# /model/vo/activity.lua
|
||||
# PlayerPrefs.GetInt("ACTIVITY_TYPE_EVENT_" .. slot0.id .. "_" .. getProxy(PlayerProxy):getData().id)
|
||||
ACTIVITY_TYPE_EVENT = Field(formatter=int, default=0, regex='ACTIVITY_TYPE_EVENT_(.*)_(.*)')
|
||||
# PlayerPrefs.GetInt("DAY_TIP_" .. uv0.id .. "_" .. getProxy(PlayerProxy):getData().id .. "_" .. uv0:getDayIndex())
|
||||
DAY_TIP = Field(formatter=int, default=0, regex='DAY_TIP_(.*)_(.*)_(.*)')
|
||||
|
||||
# /model/vo/chapter.lua
|
||||
# PlayerPrefs.GetInt("chapter_quickPlay_flag_" .. slot0.id, 0)
|
||||
chapter_quickPlay_flag = Field(formatter=int, default=0, regex='chapter_quickPlay_flag_(.*)')
|
||||
# PlayerPrefs.GetInt(uv0.GetChapterLastFleetCacheKey(slot0), 0)
|
||||
# PlayerPrefs.GetInt(Chapter.GetSPOperationItemCacheKey(slot0.id), 0)
|
||||
pass # Unknown
|
||||
|
||||
# /model/vo/chapterfleet.lua
|
||||
@ -313,6 +345,10 @@ class GameSettingsGenerated:
|
||||
paint_hide_other_obj = Field(formatter=int, default=0, regex='paint_hide_other_obj_(.*)')
|
||||
# PlayerPrefs.GetString("equipment_record" .. "_" .. slot1 .. "_" .. slot0.id)
|
||||
equipment_record = Field(formatter=str, default='', regex='equipment_record_(.*)_(.*)')
|
||||
# PlayerPrefs.GetString("spweapon_record" .. "_" .. slot1 .. "_" .. slot0.id, "")
|
||||
spweapon_record = Field(formatter=str, default='', regex='spweapon_record_(.*)_(.*)')
|
||||
# PlayerPrefs.GetInt("SHIP_NAME_COLOR", PLATFORM_CODE == PLATFORM_CH and 1 or 0)
|
||||
SHIP_NAME_COLOR = Field(formatter=int, default=0, regex='SHIP_NAME_COLOR')
|
||||
|
||||
# /model/vo/guild/events/guildmission.lua
|
||||
# PlayerPrefs.GetInt("guild_mission_formation_tip" .. slot0.configId, 0)
|
||||
@ -322,17 +358,27 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt(slot0:prefKey())
|
||||
pass # Unknown
|
||||
|
||||
# /model/vo/task/activitytask.lua
|
||||
# PlayerPrefs.GetInt("ryza_task_" .. getProxy(PlayerProxy):getRawData().id .. "_" .. slot0.id)
|
||||
ryza_task = Field(formatter=int, default=0, regex='ryza_task_(.*)_(.*)')
|
||||
# PlayerPrefs.GetInt("ryza_task_" .. getProxy(PlayerProxy):getRawData().id .. "_" .. slot0.id)
|
||||
pass # Duplicate
|
||||
|
||||
# /support/helpers/m02.lua
|
||||
# PlayerPrefs.GetInt("paint_hide_other_obj_" .. slot1, 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("paint_hide_other_obj_" .. slot1, 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("paint_hide_other_obj_" .. slot1, 0)
|
||||
pass # Duplicate
|
||||
|
||||
# /support/utils/hxset.lua
|
||||
# PlayerPrefs.GetInt(uv0.codeModeKey)
|
||||
pass # Unknown
|
||||
# PlayerPrefs.GetInt("localization_use", 0)
|
||||
localization_use = Field(formatter=int, default=0, regex='localization_use')
|
||||
# PlayerPrefs.GetInt("localization_time_1_" .. getProxy(PlayerProxy):getData().id, 0)
|
||||
localization_time_1 = Field(formatter=int, default=0, regex='localization_time_1_(.*)')
|
||||
# PlayerPrefs.GetInt("localization_time_2_" .. slot2, 0)
|
||||
localization_time_2 = Field(formatter=int, default=0, regex='localization_time_2_(.*)')
|
||||
|
||||
# /view/activity/activitymediator.lua
|
||||
# PlayerPrefs.GetString("permanent_time", "")
|
||||
@ -354,9 +400,33 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt(string.format("cursing_%d_task_week_%d", slot0.activity.id, slot5), 0)
|
||||
cursing__d_task_week__d = Field(formatter=int, default=0, regex='cursing_%d_task_week_%d')
|
||||
|
||||
# /view/activity/refluxmediator.lua
|
||||
# PlayerPrefs.GetInt(slot6.id .. "_" .. slot2.data2)
|
||||
pass # Unknown
|
||||
# /view/activity/ryzataskscene.lua
|
||||
# PlayerPrefs.GetInt("ryza_task_help_" .. getProxy(PlayerProxy):getRawData().id)
|
||||
ryza_task_help = Field(formatter=int, default=0, regex='ryza_task_help_(.*)')
|
||||
|
||||
# /view/activity/atelier/atelierbufflayer.lua
|
||||
# PlayerPrefs.GetInt("first_enter_ryza_buff_" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
first_enter_ryza_buff = Field(formatter=int, default=0, regex='first_enter_ryza_buff_(.*)')
|
||||
|
||||
# /view/activity/atelier/ateliercompositescene.lua
|
||||
# PlayerPrefs.GetInt("first_enter_ryza_atelier_" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
first_enter_ryza_atelier = Field(formatter=int, default=0, regex='first_enter_ryza_atelier_(.*)')
|
||||
|
||||
# /view/activity/backhills/anniversaryisland2023/anniversaryislandcomposite2023scene.lua
|
||||
# PlayerPrefs.GetInt("workbench_show_composite_avaliable", 0)
|
||||
workbench_show_composite_avaliable = Field(formatter=int, default=0, regex='workbench_show_composite_avaliable')
|
||||
|
||||
# /view/activity/backhills/anniversaryisland2023/anniversaryislandhotspringscene.lua
|
||||
# PlayerPrefs.GetString("hotspring_ship_pos_2023", "")
|
||||
hotspring_ship_pos_2023 = Field(formatter=str, default='', regex='hotspring_ship_pos_2023')
|
||||
|
||||
# /view/activity/backhills/newyearfestival/newyearhotspringscene.lua
|
||||
# PlayerPrefs.GetString("hotspring_ship_pos", "")
|
||||
hotspring_ship_pos = Field(formatter=str, default='', regex='hotspring_ship_pos')
|
||||
|
||||
# /view/activity/backhills/springfestival2023/fireworkpanellayer.lua
|
||||
# PlayerPrefs.GetInt("fireworks_" .. slot0.playerId .. "_pos_" .. slot5)
|
||||
fireworks = Field(formatter=int, default=0, regex='fireworks_(.*)_pos_(.*)')
|
||||
|
||||
# /view/activity/banaiactivity/blackwhitegridlayer.lua
|
||||
# PlayerPrefs.GetString("BlackWhiteGridMapData-" .. slot1.id .. "-" .. slot0.player.id, "")
|
||||
@ -364,6 +434,10 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("BlackWhiteGridMapIndex-" .. slot0.player.id, 1)
|
||||
BlackWhiteGridMapIndex = Field(formatter=int, default=1, regex='BlackWhiteGridMapIndex-(.*)')
|
||||
|
||||
# /view/activity/bossrush/bossrushfleetselectmediator.lua
|
||||
# PlayerPrefs.GetInt("series_mode_flag" .. slot1.id, -1)
|
||||
series_mode_flag = Field(formatter=int, default=-1, regex='series_mode_flag(.*)')
|
||||
|
||||
# /view/activity/decodegame/game/decodegameview.lua
|
||||
# PlayerPrefs.GetInt("DecodeGameHelpBg" .. getProxy(PlayerProxy):getRawData().id .. slot1, 0)
|
||||
DecodeGameHelpBg = Field(formatter=int, default=0, regex='DecodeGameHelpBg(.*)(.*)')
|
||||
@ -388,6 +462,10 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("SuperBurinPopUp_" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
SuperBurinPopUp = Field(formatter=int, default=0, regex='SuperBurinPopUp_(.*)')
|
||||
|
||||
# /view/activity/subpages/cardpuzzlepage.lua
|
||||
# PlayerPrefs.GetInt("DAY_TIP_" .. slot0.activity.id .. "_" .. getProxy(PlayerProxy):getData().id .. "_" .. slot0.activity:getDayIndex())
|
||||
pass # Duplicate
|
||||
|
||||
# /view/activity/subpages/collectioneventptpage.lua
|
||||
# PlayerPrefs.GetInt("ACTIVITY_TYPE_EVENT_" .. slot0.activity.id .. "_" .. getProxy(PlayerProxy):getData().id)
|
||||
pass # Duplicate
|
||||
@ -428,6 +506,10 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("wwf_todo_task_num_" .. getProxy(PlayerProxy):getData().id)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/activity/worldboss/activitybosstotalrewardpanel.lua
|
||||
# PlayerPrefs.GetInt(AUTO_BATTLE_LABEL, 0)
|
||||
pass # Unknown
|
||||
|
||||
# /view/activity/worldinpicture/worldinpicturescene.lua
|
||||
# PlayerPrefs.GetString("WorldInPictureScene_1" .. getProxy(PlayerProxy):getRawData().id, "0#0")
|
||||
WorldInPictureScene_1 = Field(formatter=str, default='0#0', regex='WorldInPictureScene_1(.*)')
|
||||
@ -457,12 +539,18 @@ class GameSettingsGenerated:
|
||||
chapter_submarine_ai_type = Field(formatter=int, default=0, regex='chapter_submarine_ai_type_(.*)')
|
||||
|
||||
# /view/battle/levelscene.lua
|
||||
# PlayerPrefs.GetInt("ex_mapId")
|
||||
# PlayerPrefs.GetInt("ex_mapId", 0)
|
||||
ex_mapId = Field(formatter=int, default=0, regex='ex_mapId')
|
||||
# PlayerPrefs.GetString("remaster_tip")
|
||||
remaster_tip = Field(formatter=str, default='', regex='remaster_tip')
|
||||
# PlayerPrefs.GetInt("chapter_autofight_flag_" .. uv2.id, 1)
|
||||
chapter_autofight_flag = Field(formatter=int, default=1, regex='chapter_autofight_flag_(.*)')
|
||||
# PlayerPrefs.GetInt("first_enter_ryza_buff_" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/battle/battleresult/pages/newbattleresultdisplayawardpage.lua
|
||||
# PlayerPrefs.GetInt(DISPLAY_SHIP_GET_EFFECT)
|
||||
pass # Unknown
|
||||
|
||||
# /view/battle/battleresult/util/newbattleresultdataextender.lua
|
||||
# PlayerPrefs.GetInt(AUTO_BATTLE_LABEL, 0)
|
||||
pass # Unknown
|
||||
|
||||
# /view/collection/galleryconst.lua
|
||||
# PlayerPrefs.GetInt(uv0.Set_BG_Func_Save_Tag .. getProxy(PlayerProxy):getRawData().id)
|
||||
@ -484,12 +572,16 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("Tec_Ship_Gift_Enter_Tag", 0)
|
||||
Tec_Ship_Gift_Enter_Tag = Field(formatter=int, default=0, regex='Tec_Ship_Gift_Enter_Tag')
|
||||
|
||||
# /view/level/levelfleetview.lua
|
||||
# /view/level/levelcontinuousoperationtotalrewardpanel.lua
|
||||
# PlayerPrefs.GetInt("autoFight_firstUse_sp", 0)
|
||||
autoFight_firstUse_sp = Field(formatter=int, default=0, regex='autoFight_firstUse_sp')
|
||||
|
||||
# /view/level/levelfleetview.lua
|
||||
# PlayerPrefs.GetInt("autoFight_firstUse_sp", 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt(uv0, 1)
|
||||
pass # Unknown
|
||||
# PlayerPrefs.GetInt(uv0, 1)
|
||||
# PlayerPrefs.GetInt(uv1, 1)
|
||||
pass # Unknown
|
||||
# PlayerPrefs.GetInt("lastFleetDuty_" .. (slot0.chapter.id or 0), 0)
|
||||
lastFleetDuty = Field(formatter=int, default=0, regex='lastFleetDuty_(.*)')
|
||||
@ -503,15 +595,13 @@ class GameSettingsGenerated:
|
||||
pass # Unknown
|
||||
# PlayerPrefs.GetInt(uv0, 1)
|
||||
pass # Unknown
|
||||
# PlayerPrefs.GetInt(Chapter.GetSPOperationItemCacheKey(slot0.chapter.id), 0)
|
||||
pass # Unknown
|
||||
|
||||
# /view/level/levelinfoview.lua
|
||||
# PlayerPrefs.GetInt("chapter_loop_flag_" .. slot1.id, -1)
|
||||
chapter_loop_flag = Field(formatter=int, default=-1, regex='chapter_loop_flag_(.*)')
|
||||
# PlayerPrefs.GetInt("chapter_autofight_flag_" .. slot1.id, 1)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("chapter_quickPlay_flag_" .. slot1.id, 0)
|
||||
# PlayerPrefs.GetInt("chapter_quickPlay_flag_" .. slot1.id, 1)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/level/leveloperationitempanel.lua
|
||||
@ -534,18 +624,40 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("help_displayed_on_" .. uv1.id, 0)
|
||||
help_displayed_on = Field(formatter=int, default=0, regex='help_displayed_on_(.*)')
|
||||
|
||||
# /view/limitchallenge/limitchallengeconst.lua
|
||||
# PlayerPrefs.GetInt(uv0.RedPointKey, 0)
|
||||
pass # Unknown
|
||||
|
||||
# /view/login/loginscene.lua
|
||||
# PlayerPrefs.GetString("op_ver", "")
|
||||
op_ver = Field(formatter=str, default='', regex='op_ver')
|
||||
|
||||
# /view/main/mailmediator.lua
|
||||
# PlayerPrefs.GetInt("help_research_package", 0)
|
||||
help_research_package = Field(formatter=int, default=0, regex='help_research_package')
|
||||
|
||||
# /view/main/trainingcampscene.lua
|
||||
# PlayerPrefs.GetInt("TrainCamp_Tec_Catchup_First_Tag", 0)
|
||||
TrainCamp_Tec_Catchup_First_Tag = Field(formatter=int, default=0, regex='TrainCamp_Tec_Catchup_First_Tag')
|
||||
|
||||
# /view/main/skinshop/skinshopscene.lua
|
||||
# PlayerPrefs.GetInt("skinShop#l2dPreViewToggle" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
skinShop#l2dPreViewToggle = Field(formatter=int, default=0, regex='skinShop#l2dPreViewToggle(.*)')
|
||||
|
||||
# /view/mediacollection/worldmediacollectionmemorygrouplayer.lua
|
||||
# PlayerPrefs.GetInt("MEMORY_GROUP_NOTIFICATION" .. getProxy(PlayerProxy):getRawData().id .. " " .. slot3.id, 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("MEMORY_GROUP_NOTIFICATION" .. slot2 .. " " .. slot7.id, 0)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/minigame/gameview/decodeminigameview.lua
|
||||
# PlayerPrefs.GetInt("DecodeGameMapId", 1)
|
||||
DecodeGameMapId = Field(formatter=int, default=1, regex='DecodeGameMapId')
|
||||
|
||||
# /view/minigame/gameview/gameroomqteview.lua
|
||||
# PlayerPrefs.GetInt("QTEGameGuide", 0)
|
||||
QTEGameGuide = Field(formatter=int, default=0, regex='QTEGameGuide')
|
||||
|
||||
# /view/minigame/gameview/musicgameview.lua
|
||||
# PlayerPrefs.GetInt("musicgame_first_" .. getProxy(PlayerProxy):getData().id)
|
||||
musicgame_first = Field(formatter=int, default=0, regex='musicgame_first_(.*)')
|
||||
@ -554,7 +666,11 @@ class GameSettingsGenerated:
|
||||
|
||||
# /view/minigame/gameview/qtegameview.lua
|
||||
# PlayerPrefs.GetInt("QTEGameGuide", 0)
|
||||
QTEGameGuide = Field(formatter=int, default=0, regex='QTEGameGuide')
|
||||
pass # Duplicate
|
||||
|
||||
# /view/minigame/gameview/ryzaminigameview.lua
|
||||
# PlayerPrefs.GetInt("ryza_minigame_help", 0)
|
||||
ryza_minigame_help = Field(formatter=int, default=0, regex='ryza_minigame_help')
|
||||
|
||||
# /view/minigame/gameview/volleyballgameview.lua
|
||||
# PlayerPrefs.GetInt("volleyballgame_first_" .. getProxy(PlayerProxy):getData().id)
|
||||
@ -578,6 +694,12 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("ItemIconChange_" .. slot2.equipID, 0)
|
||||
ItemIconChange = Field(formatter=int, default=0, regex='ItemIconChange_(.*)')
|
||||
|
||||
# /view/newmain/sequence/mainguidesequence.lua
|
||||
# PlayerPrefs.GetInt("ryza_task_help_" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("first_enter_ryza_atelier_" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/newmain/view/mainchatroomview.lua
|
||||
# PlayerPrefs.GetInt(HIDE_CHAT_FLAG)
|
||||
pass # Unknown
|
||||
@ -590,6 +712,14 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("paint_hide_other_obj_" .. slot0.painting.paintingName, 0)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/reflux/refluxscene.lua
|
||||
# PlayerPrefs.GetInt(getProxy(PlayerProxy):getRawData().id .. "_" .. getProxy(RefluxProxy).returnTimestamp, 0)
|
||||
pass # Unknown
|
||||
|
||||
# /view/reflux/refluxshopview.lua
|
||||
# PlayerPrefs.GetInt("RefluxShop_Enter_Day", 0)
|
||||
RefluxShop_Enter_Day = Field(formatter=int, default=0, regex='RefluxShop_Enter_Day')
|
||||
|
||||
# /view/setting/newsettingsscene.lua
|
||||
# PlayerPrefs.GetFloat("firstIntoOtherPanel")
|
||||
pass # Duplicate
|
||||
@ -694,6 +824,10 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("newserver_shop_first_" .. slot0.playerId)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/shops/skinshop/views/newskinshopmainview.lua
|
||||
# PlayerPrefs.GetInt("skinShop#l2dPreViewToggle" .. getProxy(PlayerProxy):getRawData().id, 0)
|
||||
pass # Duplicate
|
||||
|
||||
# /view/snapshot/snapshotscene.lua
|
||||
# PlayerPrefs.GetInt("hadShowForVideoTip")
|
||||
hadShowForVideoTip = Field(formatter=int, default=0, regex='hadShowForVideoTip')
|
||||
@ -704,6 +838,10 @@ class GameSettingsGenerated:
|
||||
# PlayerPrefs.GetInt("snapshotAgress")
|
||||
snapshotAgress = Field(formatter=int, default=0, regex='snapshotAgress')
|
||||
|
||||
# /view/technology/selecttechnologymediator.lua
|
||||
# PlayerPrefs.GetString("technology_day_mark", "")
|
||||
technology_day_mark = Field(formatter=str, default='', regex='technology_day_mark')
|
||||
|
||||
# /view/technology/technologysettingslayer.lua
|
||||
# PlayerPrefs.GetInt("isShowFinishCatchupVersion")
|
||||
isShowFinishCatchupVersion = Field(formatter=int, default=0, regex='isShowFinishCatchupVersion')
|
||||
@ -715,6 +853,12 @@ class GameSettingsGenerated:
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("world_sub_call_line", 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("world_skip_precombat", 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("auto_switch_mode", 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("auto_switch_mode", 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("auto_switch_mode", 0)
|
||||
pass # Duplicate
|
||||
|
||||
@ -727,11 +871,7 @@ class GameSettingsGenerated:
|
||||
auto_switch_wait_2 = Field(formatter=int, default=0, regex='auto_switch_wait_2')
|
||||
# PlayerPrefs.GetInt("auto_switch_mode", 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetString(slot6, slot7)
|
||||
# PlayerPrefs.GetString(slot4, slot5)
|
||||
pass # Unknown
|
||||
# PlayerPrefs.GetString(slot4, slot5)
|
||||
pass # Unknown
|
||||
|
||||
# /view/world/worldmediacollection/worldmediacollectionmemorygrouplayer.lua
|
||||
# PlayerPrefs.GetInt("MEMORY_GROUP_NOTIFICATION" .. getProxy(PlayerProxy):getRawData().id .. " " .. slot3.id, 0)
|
||||
pass # Duplicate
|
||||
# PlayerPrefs.GetInt("MEMORY_GROUP_NOTIFICATION" .. slot2 .. " " .. slot7.id, 0)
|
||||
pass # Duplicate
|
||||
|
@ -148,12 +148,19 @@ class MeowfficerCollect(MeowfficerBase):
|
||||
Handle skip transitions; proceeds slowly
|
||||
with caution to prevent unintentional actions
|
||||
"""
|
||||
|
||||
def additional():
|
||||
if self.appear(MEOWFFICER_TRAIN_EVALUATE, offset=(20, 20), interval=3):
|
||||
self.device.click(MEOWFFICER_TRAIN_EVALUATE)
|
||||
return True
|
||||
return False
|
||||
|
||||
# Trigger lock popup appearance to initiate sequence
|
||||
self.ui_click(MEOWFFICER_TRAIN_CLICK_SAFE_AREA,
|
||||
appear_button=MEOWFFICER_GET_CHECK, check_button=MEOWFFICER_CONFIRM,
|
||||
appear_button=MEOWFFICER_GET_CHECK, check_button=MEOWFFICER_CONFIRM, additional=additional,
|
||||
offset=(40, 40), retry_wait=3, skip_first_screenshot=True)
|
||||
|
||||
self.ui_click(MEOWFFICER_CANCEL, check_button=self._meow_check_popup_exit,
|
||||
self.ui_click(MEOWFFICER_CANCEL, check_button=self._meow_check_popup_exit, additional=additional,
|
||||
offset=(40, 20), retry_wait=3, skip_first_screenshot=True)
|
||||
self.device.click_record.pop()
|
||||
self.device.click_record.pop()
|
||||
|
@ -872,7 +872,7 @@ class OperationSiren(OSMap):
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
self = OperationSiren('month_test', task='OpsiMonthBoss')
|
||||
self = OperationSiren('alas', task='OpsiExplore')
|
||||
from module.os.config import OSConfig
|
||||
|
||||
self.config = self.config.merge(OSConfig())
|
||||
@ -880,5 +880,5 @@ if __name__ == '__main__':
|
||||
self.device.screenshot()
|
||||
self.os_init()
|
||||
|
||||
logger.hr("OS clear Month Boss", level=1)
|
||||
self.clear_month_boss()
|
||||
# logger.hr("OS clear Month Boss", level=1)
|
||||
self.os_shop()
|
||||
|
@ -24,6 +24,7 @@ ENTRANCE_3 = Button(area={'cn': (540, 135, 732, 265), 'en': (540, 135, 732, 265)
|
||||
ENTRANCE_4 = Button(area={'cn': (782, 159, 951, 275), 'en': (782, 159, 951, 275), 'jp': (782, 159, 951, 275), 'tw': (782, 159, 951, 275)}, color={'cn': (80, 153, 218), 'en': (80, 153, 218), 'jp': (80, 153, 218), 'tw': (80, 153, 218)}, button={'cn': (782, 159, 951, 275), 'en': (782, 159, 951, 275), 'jp': (782, 159, 951, 275), 'tw': (782, 159, 951, 275)}, file={'cn': './assets/cn/research/ENTRANCE_4.png', 'en': './assets/en/research/ENTRANCE_4.png', 'jp': './assets/jp/research/ENTRANCE_4.png', 'tw': './assets/tw/research/ENTRANCE_4.png'})
|
||||
ENTRANCE_5 = Button(area={'cn': (1025, 186, 1169, 287), 'en': (1025, 186, 1169, 287), 'jp': (1025, 186, 1169, 287), 'tw': (1025, 186, 1169, 287)}, color={'cn': (80, 153, 218), 'en': (80, 153, 218), 'jp': (80, 153, 218), 'tw': (80, 153, 218)}, button={'cn': (1025, 186, 1169, 287), 'en': (1025, 186, 1169, 287), 'jp': (1025, 186, 1169, 287), 'tw': (1025, 186, 1169, 287)}, file={'cn': './assets/cn/research/ENTRANCE_5.png', 'en': './assets/en/research/ENTRANCE_5.png', 'jp': './assets/jp/research/ENTRANCE_5.png', 'tw': './assets/tw/research/ENTRANCE_5.png'})
|
||||
GET_ITEMS_RESEARCH_SAVE = Button(area={'cn': (357, 643, 497, 701), 'en': (357, 643, 497, 701), 'jp': (357, 643, 497, 701), 'tw': (357, 643, 497, 701)}, color={'cn': (54, 65, 83), 'en': (54, 65, 83), 'jp': (54, 65, 83), 'tw': (54, 65, 83)}, button={'cn': (357, 643, 497, 701), 'en': (357, 643, 497, 701), 'jp': (357, 643, 497, 701), 'tw': (357, 643, 497, 701)}, file={'cn': './assets/cn/research/GET_ITEMS_RESEARCH_SAVE.png', 'en': './assets/en/research/GET_ITEMS_RESEARCH_SAVE.png', 'jp': './assets/jp/research/GET_ITEMS_RESEARCH_SAVE.png', 'tw': './assets/tw/research/GET_ITEMS_RESEARCH_SAVE.png'})
|
||||
HAS_RESEARCH_QUEUE = Button(area={'cn': (44, 216, 64, 236), 'en': (44, 216, 64, 236), 'jp': (44, 216, 64, 236), 'tw': (44, 216, 64, 236)}, color={'cn': (50, 54, 82), 'en': (50, 54, 82), 'jp': (50, 54, 82), 'tw': (50, 54, 82)}, button={'cn': (44, 216, 64, 236), 'en': (44, 216, 64, 236), 'jp': (44, 216, 64, 236), 'tw': (44, 216, 64, 236)}, file={'cn': './assets/cn/research/HAS_RESEARCH_QUEUE.png', 'en': './assets/cn/research/HAS_RESEARCH_QUEUE.png', 'jp': './assets/cn/research/HAS_RESEARCH_QUEUE.png', 'tw': './assets/cn/research/HAS_RESEARCH_QUEUE.png'})
|
||||
ITEMS_3_SWIPE = Button(area={'cn': (693, 219, 715, 503), 'en': (693, 219, 715, 503), 'jp': (693, 219, 715, 503), 'tw': (693, 219, 715, 503)}, color={'cn': (78, 70, 55), 'en': (78, 70, 55), 'jp': (78, 70, 55), 'tw': (78, 70, 55)}, button={'cn': (693, 219, 715, 503), 'en': (693, 219, 715, 503), 'jp': (693, 219, 715, 503), 'tw': (693, 219, 715, 503)}, file={'cn': './assets/cn/research/ITEMS_3_SWIPE.png', 'en': './assets/en/research/ITEMS_3_SWIPE.png', 'jp': './assets/jp/research/ITEMS_3_SWIPE.png', 'tw': './assets/tw/research/ITEMS_3_SWIPE.png'})
|
||||
OCR_RESEARCH_1 = Button(area={'cn': (78, 277, 249, 330), 'en': (78, 277, 249, 330), 'jp': (78, 277, 249, 330), 'tw': (78, 277, 249, 330)}, color={'cn': (139, 160, 196), 'en': (139, 160, 196), 'jp': (139, 160, 196), 'tw': (139, 160, 196)}, button={'cn': (78, 277, 249, 330), 'en': (78, 277, 249, 330), 'jp': (78, 277, 249, 330), 'tw': (78, 277, 249, 330)}, file={'cn': './assets/cn/research/OCR_RESEARCH_1.png', 'en': './assets/en/research/OCR_RESEARCH_1.png', 'jp': './assets/jp/research/OCR_RESEARCH_1.png', 'tw': './assets/tw/research/OCR_RESEARCH_1.png'})
|
||||
OCR_RESEARCH_2 = Button(area={'cn': (292, 263, 490, 325), 'en': (292, 263, 490, 325), 'jp': (292, 263, 490, 325), 'tw': (292, 263, 490, 325)}, color={'cn': (122, 153, 201), 'en': (122, 153, 201), 'jp': (122, 153, 201), 'tw': (122, 153, 201)}, button={'cn': (292, 263, 490, 325), 'en': (292, 263, 490, 325), 'jp': (292, 263, 490, 325), 'tw': (292, 263, 490, 325)}, file={'cn': './assets/cn/research/OCR_RESEARCH_2.png', 'en': './assets/en/research/OCR_RESEARCH_2.png', 'jp': './assets/jp/research/OCR_RESEARCH_2.png', 'tw': './assets/tw/research/OCR_RESEARCH_2.png'})
|
||||
@ -32,7 +33,17 @@ OCR_RESEARCH_4 = Button(area={'cn': (752, 263, 950, 325), 'en': (752, 263, 950,
|
||||
OCR_RESEARCH_5 = Button(area={'cn': (998, 276, 1169, 329), 'en': (998, 276, 1169, 329), 'jp': (998, 276, 1169, 329), 'tw': (998, 276, 1169, 329)}, color={'cn': (124, 156, 204), 'en': (124, 156, 204), 'jp': (124, 156, 204), 'tw': (124, 156, 204)}, button={'cn': (998, 276, 1169, 329), 'en': (998, 276, 1169, 329), 'jp': (998, 276, 1169, 329), 'tw': (998, 276, 1169, 329)}, file={'cn': './assets/cn/research/OCR_RESEARCH_5.png', 'en': './assets/en/research/OCR_RESEARCH_5.png', 'jp': './assets/jp/research/OCR_RESEARCH_5.png', 'tw': './assets/tw/research/OCR_RESEARCH_5.png'})
|
||||
QUEUE_CHECK = Button(area={'cn': (118, 16, 227, 39), 'en': (117, 16, 215, 38), 'jp': (116, 14, 232, 42), 'tw': (118, 14, 227, 39)}, color={'cn': (149, 166, 205), 'en': (125, 139, 179), 'jp': (147, 163, 199), 'tw': (155, 171, 210)}, button={'cn': (118, 16, 227, 39), 'en': (117, 16, 215, 38), 'jp': (116, 14, 232, 42), 'tw': (118, 14, 227, 39)}, file={'cn': './assets/cn/research/QUEUE_CHECK.png', 'en': './assets/en/research/QUEUE_CHECK.png', 'jp': './assets/jp/research/QUEUE_CHECK.png', 'tw': './assets/tw/research/QUEUE_CHECK.png'})
|
||||
QUEUE_CLAIM_REWARD = Button(area={'cn': (1230, 275, 1272, 420), 'en': (1225, 258, 1270, 448), 'jp': (1219, 254, 1279, 460), 'tw': (1219, 253, 1280, 460)}, color={'cn': (249, 182, 121), 'en': (249, 171, 97), 'jp': (249, 170, 97), 'tw': (249, 174, 102)}, button={'cn': (1230, 275, 1272, 420), 'en': (1225, 258, 1270, 448), 'jp': (1219, 254, 1279, 460), 'tw': (1219, 253, 1280, 460)}, file={'cn': './assets/cn/research/QUEUE_CLAIM_REWARD.png', 'en': './assets/en/research/QUEUE_CLAIM_REWARD.png', 'jp': './assets/jp/research/QUEUE_CLAIM_REWARD.png', 'tw': './assets/tw/research/QUEUE_CLAIM_REWARD.png'})
|
||||
QUEUE_OCR_RESEARCH_1 = Button(area={'cn': (56, 280, 270, 346), 'en': (56, 280, 270, 346), 'jp': (56, 280, 270, 346), 'tw': (56, 280, 270, 346)}, color={'cn': (122, 154, 200), 'en': (122, 154, 200), 'jp': (122, 154, 200), 'tw': (122, 154, 200)}, button={'cn': (56, 280, 270, 346), 'en': (56, 280, 270, 346), 'jp': (56, 280, 270, 346), 'tw': (56, 280, 270, 346)}, file={'cn': './assets/cn/research/QUEUE_OCR_RESEARCH_1.png', 'en': './assets/cn/research/QUEUE_OCR_RESEARCH_1.png', 'jp': './assets/cn/research/QUEUE_OCR_RESEARCH_1.png', 'tw': './assets/cn/research/QUEUE_OCR_RESEARCH_1.png'})
|
||||
QUEUE_OCR_RESEARCH_2 = Button(area={'cn': (283, 281, 497, 347), 'en': (283, 281, 497, 347), 'jp': (283, 281, 497, 347), 'tw': (283, 281, 497, 347)}, color={'cn': (202, 178, 142), 'en': (202, 178, 142), 'jp': (202, 178, 142), 'tw': (202, 178, 142)}, button={'cn': (283, 281, 497, 347), 'en': (283, 281, 497, 347), 'jp': (283, 281, 497, 347), 'tw': (283, 281, 497, 347)}, file={'cn': './assets/cn/research/QUEUE_OCR_RESEARCH_2.png', 'en': './assets/cn/research/QUEUE_OCR_RESEARCH_2.png', 'jp': './assets/cn/research/QUEUE_OCR_RESEARCH_2.png', 'tw': './assets/cn/research/QUEUE_OCR_RESEARCH_2.png'})
|
||||
QUEUE_OCR_RESEARCH_3 = Button(area={'cn': (513, 280, 727, 346), 'en': (513, 280, 727, 346), 'jp': (513, 280, 727, 346), 'tw': (513, 280, 727, 346)}, color={'cn': (122, 155, 203), 'en': (122, 155, 203), 'jp': (122, 155, 203), 'tw': (122, 155, 203)}, button={'cn': (513, 280, 727, 346), 'en': (513, 280, 727, 346), 'jp': (513, 280, 727, 346), 'tw': (513, 280, 727, 346)}, file={'cn': './assets/cn/research/QUEUE_OCR_RESEARCH_3.png', 'en': './assets/cn/research/QUEUE_OCR_RESEARCH_3.png', 'jp': './assets/cn/research/QUEUE_OCR_RESEARCH_3.png', 'tw': './assets/cn/research/QUEUE_OCR_RESEARCH_3.png'})
|
||||
QUEUE_OCR_RESEARCH_4 = Button(area={'cn': (739, 281, 953, 347), 'en': (739, 281, 953, 347), 'jp': (739, 281, 953, 347), 'tw': (739, 281, 953, 347)}, color={'cn': (202, 178, 143), 'en': (202, 178, 143), 'jp': (202, 178, 143), 'tw': (202, 178, 143)}, button={'cn': (739, 281, 953, 347), 'en': (739, 281, 953, 347), 'jp': (739, 281, 953, 347), 'tw': (739, 281, 953, 347)}, file={'cn': './assets/cn/research/QUEUE_OCR_RESEARCH_4.png', 'en': './assets/cn/research/QUEUE_OCR_RESEARCH_4.png', 'jp': './assets/cn/research/QUEUE_OCR_RESEARCH_4.png', 'tw': './assets/cn/research/QUEUE_OCR_RESEARCH_4.png'})
|
||||
QUEUE_OCR_RESEARCH_5 = Button(area={'cn': (969, 280, 1183, 346), 'en': (969, 280, 1183, 346), 'jp': (969, 280, 1183, 346), 'tw': (969, 280, 1183, 346)}, color={'cn': (124, 156, 205), 'en': (124, 156, 205), 'jp': (124, 156, 205), 'tw': (124, 156, 205)}, button={'cn': (969, 280, 1183, 346), 'en': (969, 280, 1183, 346), 'jp': (969, 280, 1183, 346), 'tw': (969, 280, 1183, 346)}, file={'cn': './assets/cn/research/QUEUE_OCR_RESEARCH_5.png', 'en': './assets/cn/research/QUEUE_OCR_RESEARCH_5.png', 'jp': './assets/cn/research/QUEUE_OCR_RESEARCH_5.png', 'tw': './assets/cn/research/QUEUE_OCR_RESEARCH_5.png'})
|
||||
QUEUE_REMAIN = Button(area={'cn': (156, 605, 272, 637), 'en': (151, 580, 278, 617), 'jp': (157, 605, 277, 636), 'tw': (165, 582, 275, 613)}, color={'cn': (193, 212, 240), 'en': (191, 210, 238), 'jp': (188, 208, 239), 'tw': (192, 211, 241)}, button={'cn': (156, 605, 272, 637), 'en': (151, 580, 278, 617), 'jp': (157, 605, 277, 636), 'tw': (165, 582, 275, 613)}, file={'cn': './assets/cn/research/QUEUE_REMAIN.png', 'en': './assets/en/research/QUEUE_REMAIN.png', 'jp': './assets/jp/research/QUEUE_REMAIN.png', 'tw': './assets/tw/research/QUEUE_REMAIN.png'})
|
||||
QUEUE_SETIES_1 = Button(area={'cn': (66, 127, 99, 151), 'en': (66, 127, 99, 151), 'jp': (66, 127, 99, 151), 'tw': (66, 127, 99, 151)}, color={'cn': (196, 107, 90), 'en': (196, 107, 90), 'jp': (196, 107, 90), 'tw': (196, 107, 90)}, button={'cn': (66, 127, 99, 151), 'en': (66, 127, 99, 151), 'jp': (66, 127, 99, 151), 'tw': (66, 127, 99, 151)}, file={'cn': './assets/cn/research/QUEUE_SETIES_1.png', 'en': './assets/cn/research/QUEUE_SETIES_1.png', 'jp': './assets/cn/research/QUEUE_SETIES_1.png', 'tw': './assets/cn/research/QUEUE_SETIES_1.png'})
|
||||
QUEUE_SETIES_2 = Button(area={'cn': (294, 127, 327, 151), 'en': (294, 127, 327, 151), 'jp': (294, 127, 327, 151), 'tw': (294, 127, 327, 151)}, color={'cn': (80, 98, 204), 'en': (80, 98, 204), 'jp': (80, 98, 204), 'tw': (80, 98, 204)}, button={'cn': (294, 127, 327, 151), 'en': (294, 127, 327, 151), 'jp': (294, 127, 327, 151), 'tw': (294, 127, 327, 151)}, file={'cn': './assets/cn/research/QUEUE_SETIES_2.png', 'en': './assets/cn/research/QUEUE_SETIES_2.png', 'jp': './assets/cn/research/QUEUE_SETIES_2.png', 'tw': './assets/cn/research/QUEUE_SETIES_2.png'})
|
||||
QUEUE_SETIES_3 = Button(area={'cn': (523, 127, 556, 151), 'en': (523, 127, 556, 151), 'jp': (523, 127, 556, 151), 'tw': (523, 127, 556, 151)}, color={'cn': (200, 113, 98), 'en': (200, 113, 98), 'jp': (200, 113, 98), 'tw': (200, 113, 98)}, button={'cn': (523, 127, 556, 151), 'en': (523, 127, 556, 151), 'jp': (523, 127, 556, 151), 'tw': (523, 127, 556, 151)}, file={'cn': './assets/cn/research/QUEUE_SETIES_3.png', 'en': './assets/cn/research/QUEUE_SETIES_3.png', 'jp': './assets/cn/research/QUEUE_SETIES_3.png', 'tw': './assets/cn/research/QUEUE_SETIES_3.png'})
|
||||
QUEUE_SETIES_4 = Button(area={'cn': (751, 127, 784, 151), 'en': (751, 127, 784, 151), 'jp': (751, 127, 784, 151), 'tw': (751, 127, 784, 151)}, color={'cn': (80, 101, 211), 'en': (80, 101, 211), 'jp': (80, 101, 211), 'tw': (80, 101, 211)}, button={'cn': (751, 127, 784, 151), 'en': (751, 127, 784, 151), 'jp': (751, 127, 784, 151), 'tw': (751, 127, 784, 151)}, file={'cn': './assets/cn/research/QUEUE_SETIES_4.png', 'en': './assets/cn/research/QUEUE_SETIES_4.png', 'jp': './assets/cn/research/QUEUE_SETIES_4.png', 'tw': './assets/cn/research/QUEUE_SETIES_4.png'})
|
||||
QUEUE_SETIES_5 = Button(area={'cn': (979, 127, 1012, 151), 'en': (979, 127, 1012, 151), 'jp': (979, 127, 1012, 151), 'tw': (979, 127, 1012, 151)}, color={'cn': (200, 114, 100), 'en': (200, 114, 100), 'jp': (200, 114, 100), 'tw': (200, 114, 100)}, button={'cn': (979, 127, 1012, 151), 'en': (979, 127, 1012, 151), 'jp': (979, 127, 1012, 151), 'tw': (979, 127, 1012, 151)}, file={'cn': './assets/cn/research/QUEUE_SETIES_5.png', 'en': './assets/cn/research/QUEUE_SETIES_5.png', 'jp': './assets/cn/research/QUEUE_SETIES_5.png', 'tw': './assets/cn/research/QUEUE_SETIES_5.png'})
|
||||
RESEARCH_COST_CHECKER = Button(area={'cn': (809, 365, 972, 386), 'en': (809, 365, 972, 386), 'jp': (809, 365, 972, 386), 'tw': (809, 365, 972, 386)}, color={'cn': (105, 114, 128), 'en': (105, 114, 128), 'jp': (105, 114, 128), 'tw': (105, 114, 128)}, button={'cn': (809, 365, 972, 386), 'en': (809, 365, 972, 386), 'jp': (809, 365, 972, 386), 'tw': (809, 365, 972, 386)}, file={'cn': './assets/cn/research/RESEARCH_COST_CHECKER.png', 'en': './assets/en/research/RESEARCH_COST_CHECKER.png', 'jp': './assets/jp/research/RESEARCH_COST_CHECKER.png', 'tw': './assets/tw/research/RESEARCH_COST_CHECKER.png'})
|
||||
RESEARCH_DETAIL_QUIT = Button(area={'cn': (695, 656, 784, 707), 'en': (695, 656, 784, 707), 'jp': (695, 656, 784, 707), 'tw': (695, 656, 784, 707)}, color={'cn': (50, 57, 74), 'en': (50, 57, 74), 'jp': (50, 57, 74), 'tw': (50, 57, 74)}, button={'cn': (695, 656, 784, 707), 'en': (695, 656, 784, 707), 'jp': (695, 656, 784, 707), 'tw': (695, 656, 784, 707)}, file={'cn': './assets/cn/research/RESEARCH_DETAIL_QUIT.png', 'en': './assets/en/research/RESEARCH_DETAIL_QUIT.png', 'jp': './assets/jp/research/RESEARCH_DETAIL_QUIT.png', 'tw': './assets/tw/research/RESEARCH_DETAIL_QUIT.png'})
|
||||
RESEARCH_FINISHED = Button(area={'cn': (384, 547, 502, 585), 'en': (382, 545, 504, 587), 'jp': (383, 546, 503, 586), 'tw': (384, 547, 502, 585)}, color={'cn': (233, 163, 69), 'en': (235, 174, 92), 'jp': (229, 159, 63), 'tw': (233, 163, 69)}, button={'cn': (384, 547, 502, 585), 'en': (382, 545, 504, 587), 'jp': (383, 546, 503, 586), 'tw': (384, 547, 502, 585)}, file={'cn': './assets/cn/research/RESEARCH_FINISHED.png', 'en': './assets/en/research/RESEARCH_FINISHED.png', 'jp': './assets/jp/research/RESEARCH_FINISHED.png', 'tw': './assets/tw/research/RESEARCH_FINISHED.png'})
|
||||
@ -60,6 +71,7 @@ STATUS_3 = Button(area={'cn': (549, 598, 556, 605), 'en': (549, 598, 556, 605),
|
||||
STATUS_4 = Button(area={'cn': (790, 570, 796, 576), 'en': (790, 570, 796, 576), 'jp': (790, 570, 796, 576), 'tw': (790, 570, 796, 576)}, color={'cn': (115, 166, 222), 'en': (115, 166, 222), 'jp': (115, 166, 222), 'tw': (115, 166, 222)}, button={'cn': (790, 570, 796, 576), 'en': (790, 570, 796, 576), 'jp': (790, 570, 796, 576), 'tw': (790, 570, 796, 576)}, file={'cn': './assets/cn/research/STATUS_4.png', 'en': './assets/en/research/STATUS_4.png', 'jp': './assets/jp/research/STATUS_4.png', 'tw': './assets/tw/research/STATUS_4.png'})
|
||||
STATUS_5 = Button(area={'cn': (1031, 541, 1037, 547), 'en': (1031, 541, 1037, 547), 'jp': (1031, 541, 1037, 547), 'tw': (1031, 541, 1037, 547)}, color={'cn': (115, 166, 222), 'en': (115, 166, 222), 'jp': (115, 166, 222), 'tw': (115, 166, 222)}, button={'cn': (1031, 541, 1037, 547), 'en': (1031, 541, 1037, 547), 'jp': (1031, 541, 1037, 547), 'tw': (1031, 541, 1037, 547)}, file={'cn': './assets/cn/research/STATUS_5.png', 'en': './assets/en/research/STATUS_5.png', 'jp': './assets/jp/research/STATUS_5.png', 'tw': './assets/tw/research/STATUS_5.png'})
|
||||
TEMPLATE_DETAIL = Template(file={'cn': './assets/cn/research/TEMPLATE_DETAIL.png', 'en': './assets/en/research/TEMPLATE_DETAIL.png', 'jp': './assets/jp/research/TEMPLATE_DETAIL.png', 'tw': './assets/tw/research/TEMPLATE_DETAIL.png'})
|
||||
TEMPLATE_FINISHED = Template(file={'cn': './assets/cn/research/TEMPLATE_FINISHED.png', 'en': './assets/cn/research/TEMPLATE_FINISHED.png', 'jp': './assets/cn/research/TEMPLATE_FINISHED.png', 'tw': './assets/cn/research/TEMPLATE_FINISHED.png'})
|
||||
TEMPLATE_RUNNING = Template(file={'cn': './assets/cn/research/TEMPLATE_RUNNING.png', 'en': './assets/en/research/TEMPLATE_RUNNING.png', 'jp': './assets/jp/research/TEMPLATE_RUNNING.png', 'tw': './assets/tw/research/TEMPLATE_RUNNING.png'})
|
||||
TEMPLATE_S1 = Template(file={'cn': './assets/cn/research/TEMPLATE_S1.png', 'en': './assets/en/research/TEMPLATE_S1.png', 'jp': './assets/jp/research/TEMPLATE_S1.png', 'tw': './assets/tw/research/TEMPLATE_S1.png'})
|
||||
TEMPLATE_S2 = Template(file={'cn': './assets/cn/research/TEMPLATE_S2.png', 'en': './assets/en/research/TEMPLATE_S2.png', 'jp': './assets/jp/research/TEMPLATE_S2.png', 'tw': './assets/tw/research/TEMPLATE_S2.png'})
|
||||
|
@ -7,3 +7,4 @@ from module.base.template import Template
|
||||
CAMPAIGN_BONUS = Button(area={'cn': (404, 149, 439, 166), 'en': (406, 150, 477, 162), 'jp': (404, 150, 476, 167), 'tw': (404, 149, 439, 166)}, color={'cn': (188, 195, 207), 'en': (199, 204, 212), 'jp': (207, 211, 218), 'tw': (188, 195, 207)}, button={'cn': (404, 149, 439, 166), 'en': (406, 150, 477, 162), 'jp': (404, 150, 476, 167), 'tw': (404, 149, 439, 166)}, file={'cn': './assets/cn/statistics/CAMPAIGN_BONUS.png', 'en': './assets/en/statistics/CAMPAIGN_BONUS.png', 'jp': './assets/jp/statistics/CAMPAIGN_BONUS.png', 'tw': './assets/cn/statistics/CAMPAIGN_BONUS.png'})
|
||||
ENEMY_NAME = Button(area={'cn': (781, 283, 965, 322), 'en': (781, 283, 965, 322), 'jp': (781, 283, 965, 322), 'tw': (781, 283, 965, 322)}, color={'cn': (92, 102, 119), 'en': (92, 102, 119), 'jp': (92, 102, 119), 'tw': (92, 102, 119)}, button={'cn': (781, 283, 965, 322), 'en': (781, 283, 965, 322), 'jp': (781, 283, 965, 322), 'tw': (781, 283, 965, 322)}, file={'cn': './assets/cn/statistics/ENEMY_NAME.png', 'en': './assets/en/statistics/ENEMY_NAME.png', 'jp': './assets/jp/statistics/ENEMY_NAME.png', 'tw': './assets/tw/statistics/ENEMY_NAME.png'})
|
||||
GET_ITEMS_ODD = Button(area={'cn': (628, 294, 653, 397), 'en': (628, 294, 653, 397), 'jp': (628, 294, 653, 397), 'tw': (628, 294, 653, 397)}, color={'cn': (98, 103, 121), 'en': (98, 103, 121), 'jp': (98, 103, 121), 'tw': (98, 103, 121)}, button={'cn': (628, 294, 653, 397), 'en': (628, 294, 653, 397), 'jp': (628, 294, 653, 397), 'tw': (628, 294, 653, 397)}, file={'cn': './assets/cn/statistics/GET_ITEMS_ODD.png', 'en': './assets/en/statistics/GET_ITEMS_ODD.png', 'jp': './assets/jp/statistics/GET_ITEMS_ODD.png', 'tw': './assets/tw/statistics/GET_ITEMS_ODD.png'})
|
||||
OPSI_REWARD = Button(area={'cn': (334, 149, 369, 165), 'en': (334, 149, 369, 165), 'jp': (334, 149, 369, 165), 'tw': (334, 149, 369, 165)}, color={'cn': (182, 193, 204), 'en': (182, 193, 204), 'jp': (182, 193, 204), 'tw': (182, 193, 204)}, button={'cn': (334, 149, 369, 165), 'en': (334, 149, 369, 165), 'jp': (334, 149, 369, 165), 'tw': (334, 149, 369, 165)}, file={'cn': './assets/cn/statistics/OPSI_REWARD.png', 'en': './assets/cn/statistics/OPSI_REWARD.png', 'jp': './assets/cn/statistics/OPSI_REWARD.png', 'tw': './assets/cn/statistics/OPSI_REWARD.png'})
|
||||
|
Loading…
Reference in New Issue
Block a user