diff --git a/deploy/adb.py b/deploy/adb.py index 1f9dff44d..d4feb1235 100644 --- a/deploy/adb.py +++ b/deploy/adb.py @@ -86,14 +86,3 @@ 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 \ No newline at end of file diff --git a/dev_tools/button_extract.py b/dev_tools/button_extract.py index 9f188d532..b966f1a77 100644 --- a/dev_tools/button_extract.py +++ b/dev_tools/button_extract.py @@ -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, max_workers=2) + process_map(worker, modules) if __name__ == '__main__': diff --git a/dev_tools/campaign_swipe.py b/dev_tools/campaign_swipe.py index 941d9d8c6..ef74ee523 100644 --- a/dev_tools/campaign_swipe.py +++ b/dev_tools/campaign_swipe.py @@ -38,7 +38,7 @@ class Config: MAP_SWIPE_MULTIPLY_MINITOUCH = (1.276, 0.974) -cfg = AzurLaneConfig('alas5', task='Alas').merge(Config()) +cfg = AzurLaneConfig('alas', 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((380, 0)).run() + sim = SwipeSimulate((420, 0)).run() diff --git a/dev_tools/item_statistics.py b/dev_tools/item_statistics.py index bcd667a0e..a6031d2b7 100644 --- a/dev_tools/item_statistics.py +++ b/dev_tools/item_statistics.py @@ -1,5 +1,6 @@ import shutil +import numpy as np from tqdm import tqdm import module.config.server as server @@ -7,8 +8,8 @@ import module.config.server as server server.server = 'cn' # Edit your server here. from module.logger import logger -from module.statistics.image.battle_status import BattleStatusStatistics -from module.statistics.image.get_items import GetItemsStatistics +from module.statistics.battle_status import BattleStatusStatistics +from module.statistics.get_items import GetItemsStatistics from module.statistics.utils import * STATUS_ITEMS_INTERVAL = 10 diff --git a/dev_tools/map_extractor.py b/dev_tools/map_extractor.py index 4a0752c4b..7dcafcf03 100644 --- a/dev_tools/map_extractor.py +++ b/dev_tools/map_extractor.py @@ -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/event_20240521_cn' -KEYWORD = '1810001' +FOLDER = './campaign/test' +KEYWORD = '' 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() diff --git a/dev_tools/os_extract.py b/dev_tools/os_extract.py index 0ae530c5c..e2df62b06 100644 --- a/dev_tools/os_extract.py +++ b/dev_tools/os_extract.py @@ -126,7 +126,7 @@ Arguments: FILE: Path to repository, such as 'xxx/AzurLaneLuaScripts' SAVE: File to save, 'module/os/map_data.py' """ -FOLDER = r'E:\ProgramData\Pycharm\AzurLaneLuaScripts' +FOLDER = '' SAVE = 'module/os/map_data.py' LOADER = LuaLoader(FOLDER) diff --git a/dev_tools/relative_crop.py b/dev_tools/relative_crop.py index 7a4ffec6e..9f0902896 100644 --- a/dev_tools/relative_crop.py +++ b/dev_tools/relative_crop.py @@ -15,28 +15,15 @@ class Config: """ Paste the config of map file here """ - 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 + pass from module.os.config import OSConfig -cfg = AzurLaneConfig('alas5').merge(Config()) +cfg = AzurLaneConfig('alas').merge(OSConfig()) # Folder to save temp images folder = './screenshots/relative_crop' # Put Screenshot here -file = r'E:\ProgramData\Pycharm\StarRailCopilot\screenshots\dev_screenshots\2023-12-22_00-41-21-728648.png' +file = '' i = load_image(file) grids = View(cfg) @@ -49,7 +36,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, -0.2, 0.8, 0.2), shape=(40, 20))) + piece = rgb2gray(grid.relative_crop((-0.5, -1, 0.5, 0), shape=(60, 60))) file = '%s_%s_%s.png' % (int(time.time()), grid.location[0], grid.location[1]) file = os.path.join(folder, file) diff --git a/dev_tools/relative_record.py b/dev_tools/relative_record.py index ba63cde7a..e101dde4a 100644 --- a/dev_tools/relative_record.py +++ b/dev_tools/relative_record.py @@ -17,19 +17,7 @@ class Config: """ Paste the config of map file here """ - 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) + pass """ @@ -53,11 +41,10 @@ Arguments: NAME: Siren name, images will save in / NODE: Node in local map view, that you are going to crop. """ -CONFIG = 'alas5' -FOLDER = r'E:\ProgramData\Pycharm\Azurlane-image\screenshot\record' -NAME = 'huiguangzhihe' -NODE = 'E5' - +CONFIG = 'alas' +FOLDER = '' +NAME = 'Deutschland' +NODE = 'D5' if __name__ == '__main__': for folder in [FOLDER, os.path.join(FOLDER, NAME)]: diff --git a/dev_tools/relative_record_gif.py b/dev_tools/relative_record_gif.py index 3b9b53e6a..1b7cc15ac 100644 --- a/dev_tools/relative_record_gif.py +++ b/dev_tools/relative_record_gif.py @@ -27,7 +27,7 @@ Arguments: """ # FOLDER = '' # NAME = 'Deutschland' -AREA = (25, 16, 37, 34) +AREA = (32, 32, 54, 52) THRESHOLD = 0.92 if __name__ == '__main__': diff --git a/dev_tools/research_extractor.py b/dev_tools/research_extractor.py index 6d3687d1e..9ce02ded2 100644 --- a/dev_tools/research_extractor.py +++ b/dev_tools/research_extractor.py @@ -137,7 +137,7 @@ Arguments: FILE: Path to AzurLaneData, '/AzurLaneData' SAVE: File to save, 'module/research/project_data.py' """ -FOLDER = r'E:\ProgramData\Pycharm\AzurLaneLuaScripts' +FOLDER = '' SAVE = 'module/research/project_data.py' TechnologyTemplate().write(SAVE) diff --git a/dev_tools/utils.py b/dev_tools/utils.py index 38d9d5d52..ce6e8f6d1 100644 --- a/dev_tools/utils.py +++ b/dev_tools/utils.py @@ -20,7 +20,7 @@ class LuaLoader: ] def __init__(self, folder, server='zh-CN'): - self.folder = os.path.abspath(folder) + self.folder = folder self._server = '' self.server = server diff --git a/module/combat/combat.py b/module/combat/combat.py index ed13c5964..f19e884b3 100644 --- a/module/combat/combat.py +++ b/module/combat/combat.py @@ -15,7 +15,6 @@ 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): diff --git a/module/config/utils.py b/module/config/utils.py index f2fda1bc0..60e07c4cc 100644 --- a/module/config/utils.py +++ b/module/config/utils.py @@ -67,44 +67,7 @@ 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: - L1 - 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. diff --git a/module/daemon/benchmark.py b/module/daemon/benchmark.py index e5c31c5d1..cc43a8aee 100644 --- a/module/daemon/benchmark.py +++ b/module/daemon/benchmark.py @@ -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 = ['DroidCast_raw'] - click = ['ADB', 'uiautomator2', 'minitouch', 'MaaTouch'] + screenshot = ['ADB', 'ADB_nc', 'uiautomator2', 'aScreenCap', 'aScreenCap_nc', 'DroidCast', 'DroidCast_raw'] + click = ['ADB', 'uiautomator2', 'minitouch'] 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) diff --git a/module/daemon/daemon.py b/module/daemon/daemon.py index 70d1fd070..7bfc8531d 100644 --- a/module/daemon/daemon.py +++ b/module/daemon/daemon.py @@ -7,7 +7,6 @@ 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() @@ -62,8 +61,6 @@ class AzurLaneDaemon(DaemonBase, CampaignBase): # End # No end condition, stop it manually. - if self.handle_popup_confirm(): - continue return True diff --git a/module/device/connection.py b/module/device/connection.py index 6c26d0edc..05f2c7e61 100644 --- a/module/device/connection.py +++ b/module/device/connection.py @@ -14,7 +14,6 @@ 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, @@ -1015,16 +1014,3 @@ 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) \ No newline at end of file diff --git a/module/device/device.py b/module/device/device.py index c9526837c..26b631323 100644 --- a/module/device/device.py +++ b/module/device/device.py @@ -306,12 +306,3 @@ 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)) diff --git a/module/device/method/droidcast.py b/module/device/method/droidcast.py index be974715a..73c0f22b9 100644 --- a/module/device/method/droidcast.py +++ b/module/device/method/droidcast.py @@ -344,12 +344,3 @@ 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() diff --git a/module/game_setting/setting_extractor.py b/module/game_setting/setting_extractor.py index 4bdc97377..02759b680 100644 --- a/module/game_setting/setting_extractor.py +++ b/module/game_setting/setting_extractor.py @@ -190,6 +190,6 @@ class SettingExtractor: if __name__ == '__main__': # Path to AzurLaneLuaScripts\CN - FOLDER = r'E:\ProgramData\Pycharm\AzurLaneLuaScripts\CN' + FOLDER = r'' ex = SettingExtractor() ex.generate(FOLDER) diff --git a/module/game_setting/setting_generated.py b/module/game_setting/setting_generated.py index 4372a5682..8df5b7f57 100644 --- a/module/game_setting/setting_generated.py +++ b/module/game_setting/setting_generated.py @@ -10,12 +10,6 @@ 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') @@ -100,10 +94,6 @@ 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') @@ -133,14 +123,12 @@ 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') - # PlayerPrefs.GetString("auto_switch_difficult_safe", "only") + + # /mod/experiment/world/view/wsmapright.lua + # PlayerPrefs.GetInt("world_skip_precombat", 0) 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") @@ -233,10 +221,6 @@ 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) @@ -267,8 +251,6 @@ 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]) @@ -283,18 +265,6 @@ 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") @@ -323,13 +293,11 @@ 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(Chapter.GetSPOperationItemCacheKey(slot0.id), 0) + # PlayerPrefs.GetInt(uv0.GetChapterLastFleetCacheKey(slot0), 0) pass # Unknown # /model/vo/chapterfleet.lua @@ -345,10 +313,6 @@ 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) @@ -358,27 +322,17 @@ 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_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_(.*)') + # PlayerPrefs.GetInt("localization_use", 0) + localization_use = Field(formatter=int, default=0, regex='localization_use') # /view/activity/activitymediator.lua # PlayerPrefs.GetString("permanent_time", "") @@ -400,33 +354,9 @@ 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/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/refluxmediator.lua + # PlayerPrefs.GetInt(slot6.id .. "_" .. slot2.data2) + pass # Unknown # /view/activity/banaiactivity/blackwhitegridlayer.lua # PlayerPrefs.GetString("BlackWhiteGridMapData-" .. slot1.id .. "-" .. slot0.player.id, "") @@ -434,10 +364,6 @@ 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(.*)(.*)') @@ -462,10 +388,6 @@ 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 @@ -506,10 +428,6 @@ 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(.*)') @@ -539,18 +457,12 @@ class GameSettingsGenerated: chapter_submarine_ai_type = Field(formatter=int, default=0, regex='chapter_submarine_ai_type_(.*)') # /view/battle/levelscene.lua - # PlayerPrefs.GetInt("ex_mapId", 0) + # PlayerPrefs.GetInt("ex_mapId") ex_mapId = Field(formatter=int, default=0, regex='ex_mapId') - # 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 + # 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_(.*)') # /view/collection/galleryconst.lua # PlayerPrefs.GetInt(uv0.Set_BG_Func_Save_Tag .. getProxy(PlayerProxy):getRawData().id) @@ -572,16 +484,12 @@ 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/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 + autoFight_firstUse_sp = Field(formatter=int, default=0, regex='autoFight_firstUse_sp') # PlayerPrefs.GetInt(uv0, 1) pass # Unknown - # PlayerPrefs.GetInt(uv1, 1) + # PlayerPrefs.GetInt(uv0, 1) pass # Unknown # PlayerPrefs.GetInt("lastFleetDuty_" .. (slot0.chapter.id or 0), 0) lastFleetDuty = Field(formatter=int, default=0, regex='lastFleetDuty_(.*)') @@ -595,13 +503,15 @@ 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, 1) + # PlayerPrefs.GetInt("chapter_quickPlay_flag_" .. slot1.id, 0) pass # Duplicate # /view/level/leveloperationitempanel.lua @@ -624,40 +534,18 @@ 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_(.*)') @@ -666,11 +554,7 @@ class GameSettingsGenerated: # /view/minigame/gameview/qtegameview.lua # PlayerPrefs.GetInt("QTEGameGuide", 0) - 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') + QTEGameGuide = Field(formatter=int, default=0, regex='QTEGameGuide') # /view/minigame/gameview/volleyballgameview.lua # PlayerPrefs.GetInt("volleyballgame_first_" .. getProxy(PlayerProxy):getData().id) @@ -694,12 +578,6 @@ 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 @@ -712,14 +590,6 @@ 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 @@ -824,10 +694,6 @@ 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') @@ -838,10 +704,6 @@ 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') @@ -853,12 +715,6 @@ 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 @@ -871,7 +727,11 @@ 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(slot4, slot5) - pass # Unknown - # PlayerPrefs.GetString(slot4, slot5) + # PlayerPrefs.GetString(slot6, slot7) 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 diff --git a/module/os/operation_siren.py b/module/os/operation_siren.py index 6ac951653..39770f5b0 100644 --- a/module/os/operation_siren.py +++ b/module/os/operation_siren.py @@ -872,7 +872,7 @@ class OperationSiren(OSMap): if __name__ == '__main__': - self = OperationSiren('alas', task='OpsiExplore') + self = OperationSiren('month_test', task='OpsiMonthBoss') 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.os_shop() + logger.hr("OS clear Month Boss", level=1) + self.clear_month_boss() diff --git a/module/research/assets.py b/module/research/assets.py index 8c9aff210..2059f7418 100644 --- a/module/research/assets.py +++ b/module/research/assets.py @@ -24,7 +24,6 @@ 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'}) @@ -33,17 +32,7 @@ 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'}) @@ -71,7 +60,6 @@ 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'}) diff --git a/module/statistics/assets.py b/module/statistics/assets.py index df222f116..5698ea92a 100644 --- a/module/statistics/assets.py +++ b/module/statistics/assets.py @@ -7,4 +7,3 @@ 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'})