diff --git a/assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png b/assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png new file mode 100644 index 000000000..85fafe0ef Binary files /dev/null and b/assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png differ diff --git a/assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png b/assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png new file mode 100644 index 000000000..285a7861b Binary files /dev/null and b/assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png differ diff --git a/assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png b/assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png new file mode 100644 index 000000000..c11838863 Binary files /dev/null and b/assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png differ diff --git a/assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png b/assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png new file mode 100644 index 000000000..d1133314b Binary files /dev/null and b/assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png differ diff --git a/dev_tools/keyword_extract.py b/dev_tools/keyword_extract.py index 9da77b2d7..449b37ed9 100644 --- a/dev_tools/keyword_extract.py +++ b/dev_tools/keyword_extract.py @@ -556,7 +556,7 @@ class KeywordExtract: self.load_keywords(['本周任务', '本期任务']) self.write_keywords(keyword_class='BattlePassMissionTab', output_file='./tasks/battle_pass/keywords/mission_tab.py') - # self.generate_assignments() + self.generate_assignments() self.generate_forgotten_hall_stages() self.generate_daily_quests() self.generate_battle_pass_quests() diff --git a/dev_tools/keywords/assignment.py b/dev_tools/keywords/assignment.py index 5dac448dc..d7cdccdb3 100644 --- a/dev_tools/keywords/assignment.py +++ b/dev_tools/keywords/assignment.py @@ -59,7 +59,7 @@ def get_assignment_entry_data(): for expedition_namehash, expedition_id in expedition_namehash_to_id.items(): reward_id = expedition_id_to_reward_id[expedition_id] item_ids = reward_id_to_item_ids[reward_id] - item_names = [item_id_to_namehash[x] for x in item_ids] + item_names = [item_id_to_namehash[x] for x in item_ids if x] if len(item_names) == 1: item = GenerateKeyword.find_keyword(item_names[0], lang='cn')[1] if item in item_name_remap: @@ -128,6 +128,7 @@ class GenerateAssignmentEventGroup(GenerateKeyword): def iter_keywords(self) -> Iterable[dict]: yield dict(text_id=self.find_keyword('空间站特派', lang='cn')[0]) yield dict(text_id=self.find_keyword('关于波提欧的一切…', lang='cn')[0]) + yield dict(text_id=self.find_keyword('游侠谜影', lang='cn')[0]) class GenerateAssignmentEventEntry(GenerateKeyword): @@ -141,5 +142,5 @@ class GenerateAssignmentEventEntry(GenerateKeyword): if __name__ == "__main__": from dev_tools.keywords.base import TextMap - TextMap.DATA_FOLDER = '../StarRailData' + TextMap.DATA_FOLDER = '../DanhengServer-Resources' GenerateAssignment()() diff --git a/dev_tools/keywords/base.py b/dev_tools/keywords/base.py index 0cd904c3e..6fcd397ac 100644 --- a/dev_tools/keywords/base.py +++ b/dev_tools/keywords/base.py @@ -68,6 +68,7 @@ def text_to_variable(text): text = re.sub(r'[(),#"?!&%*]|', '', text) # text = re.sub(r'[#_]?\d+(_times?)?', '', text) text = re.sub(r'', '', text) + text = re.sub(r'^\d+', '', text) text = text.replace('é', 'e') return text.strip('_') diff --git a/module/ui/switch.py b/module/ui/switch.py index 95304fe41..6d5ae8d31 100644 --- a/module/ui/switch.py +++ b/module/ui/switch.py @@ -153,9 +153,7 @@ class Switch: if counter >= 1: logger.warning(f'{self.name} switch {state} asset has evaluated to unknown too many times, ' f'asset should be re-verified') - return False counter += 1 - continue # Click if click_timer.reached(): diff --git a/tasks/assignment/assets/assets_assignment_ui.py b/tasks/assignment/assets/assets_assignment_ui.py index 03cda2fdc..4dd6cd80b 100644 --- a/tasks/assignment/assets/assets_assignment_ui.py +++ b/tasks/assignment/assets/assets_assignment_ui.py @@ -242,6 +242,40 @@ OCR_ASSIGNMENT_TIME = ButtonWrapper( button=(605, 564, 886, 589), ), ) +SHADOW_OF_THE_RANGER_CHECK = ButtonWrapper( + name='SHADOW_OF_THE_RANGER_CHECK', + cn=Button( + file='./assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png', + area=(161, 100, 232, 117), + search=(141, 80, 252, 137), + color=(171, 166, 151), + button=(161, 100, 232, 117), + ), + en=Button( + file='./assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CHECK.png', + area=(165, 95, 197, 126), + search=(145, 75, 217, 146), + color=(187, 182, 166), + button=(165, 95, 197, 126), + ), +) +SHADOW_OF_THE_RANGER_CLICK = ButtonWrapper( + name='SHADOW_OF_THE_RANGER_CLICK', + cn=Button( + file='./assets/cn/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png', + area=(161, 100, 232, 117), + search=(141, 80, 252, 137), + color=(88, 87, 86), + button=(161, 100, 232, 117), + ), + en=Button( + file='./assets/en/assignment/ui/SHADOW_OF_THE_RANGER_CLICK.png', + area=(165, 95, 197, 126), + search=(145, 75, 217, 146), + color=(80, 79, 77), + button=(165, 95, 197, 126), + ), +) SPACE_STATION_TASK_FORCE_CHECK = ButtonWrapper( name='SPACE_STATION_TASK_FORCE_CHECK', cn=Button( diff --git a/tasks/assignment/keywords/__init__.py b/tasks/assignment/keywords/__init__.py index f37689661..de99e7c2a 100644 --- a/tasks/assignment/keywords/__init__.py +++ b/tasks/assignment/keywords/__init__.py @@ -5,6 +5,7 @@ import tasks.assignment.keywords.event_entry as KEYWORDS_ASSIGNMENT_EVENT_ENTRY import tasks.assignment.keywords.event_group as KEYWORDS_ASSIGNMENT_EVENT_GROUP from tasks.assignment.keywords.classes import * +CURRENT_EVENT_GROUP = KEYWORDS_ASSIGNMENT_EVENT_GROUP.Shadow_of_the_Ranger KEYWORDS_ASSIGNMENT_GROUP.Character_Materials.entries = ( KEYWORDS_ASSIGNMENT_ENTRY.Nine_Billion_Names, KEYWORDS_ASSIGNMENT_ENTRY.Destruction_of_the_Destroyer, @@ -30,37 +31,12 @@ KEYWORDS_ASSIGNMENT_GROUP.Synthesis_Materials.entries = ( KEYWORDS_ASSIGNMENT_ENTRY.Fragments_of_Illusory_Dreams, KEYWORDS_ASSIGNMENT_ENTRY.Scalpel_and_Screwdriver, ) -KEYWORDS_ASSIGNMENT_EVENT_GROUP.All_About_Boothill.entries = ( - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Activate_Genetic_Samples, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Reproduce_Experimental_Data, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Burned_Warehouse, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Car_Thief, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Synesthesia_Beacon_Function_Iteration, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Hunters_Wanted_No_Newbies_Please, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Peaceful_Life_for_Good_People, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Closed_Beta_Test_Recruitment, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Protect_Digital_Exhibits, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Final_Survivor, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Water_Pollution_Control, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Hook_Line_and_Sinker, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Investigation_Order_Boothill, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Volunteers_Wanted, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Burn_Treatment, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.I_Want_to_Speak_to_Your_Manager, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Licensed_Product_Damage_Assessment, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Annoying_Flies, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Urgent_Protection_Services, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.A_Dream_Is_Born, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Wanted_Boothill, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Casual_Cowboy, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Dangerous_Journey, - KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Crossing_the_Fire_Line, -) +CURRENT_EVENT_GROUP.entries = tuple(AssignmentEventEntry.instances.values()) for group in ( KEYWORDS_ASSIGNMENT_GROUP.Character_Materials, KEYWORDS_ASSIGNMENT_GROUP.EXP_Materials_Credits, KEYWORDS_ASSIGNMENT_GROUP.Synthesis_Materials, - KEYWORDS_ASSIGNMENT_EVENT_GROUP.All_About_Boothill, + CURRENT_EVENT_GROUP, ): for entry in group.entries: assert entry.group is None diff --git a/tasks/assignment/keywords/event_entry.py b/tasks/assignment/keywords/event_entry.py index 9dd113804..2a9e3ee9a 100644 --- a/tasks/assignment/keywords/event_entry.py +++ b/tasks/assignment/keywords/event_entry.py @@ -3,188 +3,116 @@ from .classes import AssignmentEventEntry # This file was auto-generated, do not modify it manually. To generate: # ``` python -m dev_tools.keyword_extract ``` -Activate_Genetic_Samples = AssignmentEventEntry( +Analyzing_Genetic_Samples = AssignmentEventEntry( id=1, - name='Activate_Genetic_Samples', - cn='激活基因样本', - cht='激發基因樣本', - en='Activate Genetic Samples', - jp='遺伝子サンプルの活性化', - es='Activación de muestras genéticas', + name='Analyzing_Genetic_Samples', + cn='解析基因样本', + cht='解析基因樣本', + en='Analyzing Genetic Samples', + jp='遺伝子サンプル解析', + es='Análisis de muestras genéticas', ) -Reproduce_Experimental_Data = AssignmentEventEntry( +Ranger_Online_Looking_for_Group = AssignmentEventEntry( id=2, - name='Reproduce_Experimental_Data', - cn='复现实验数据', - cht='重現實驗數據', - en='Reproduce Experimental Data', - jp='実験データの復元', - es='Recreación de datos experimentales', + name='Ranger_Online_Looking_for_Group', + cn='在线等一游侠进组', + cht='線上等一遊俠進組', + en='Ranger Online: Looking for Group', + jp='レンジャー募集中', + es='Se busca informante para unirse al grupo', ) -Burned_Warehouse = AssignmentEventEntry( +Double_Symphony = AssignmentEventEntry( id=3, - name='Burned_Warehouse', - cn='仓库被烧', - cht='倉庫被燒', - en='Burned Warehouse', - jp='燃えた倉庫', - es='Almacén incinerado', + name='Double_Symphony', + cn='双重奏', + cht='雙重奏', + en='Double Symphony', + jp='二重奏', + es='Doble sinfonía', ) -Car_Thief = AssignmentEventEntry( +Analyze_Memory_Zone_Meme = AssignmentEventEntry( id=4, - name='Car_Thief', - cn='███的偷车贼!', - cht='███的偷車賊!', - en='███████ Car Thief!', - jp='███の車泥棒!', - es='¡████ ladrón de autos!', + name='Analyze_Memory_Zone_Meme', + cn='解析忆域迷因', + cht='解析憶域迷因', + en='Analyze Memory Zone Meme', + jp='記憶域ミームの解析', + es='Análisis de Meme de la Zona de los Recuerdos', ) -Synesthesia_Beacon_Function_Iteration = AssignmentEventEntry( +Memory_Restoration_Report = AssignmentEventEntry( id=5, - name='Synesthesia_Beacon_Function_Iteration', - cn='联觉信标功能迭代', - cht='聯覺信標功能更新', - en='Synesthesia Beacon Function Iteration', - jp='共感覚ビーコン機能アップデート', - es='Iteración de funciones de la baliza sinestésica', + name='Memory_Restoration_Report', + cn='记忆修复报告', + cht='記憶修正報告', + en='Memory Restoration Report', + jp='記憶修復報告', + es='Informe de recuperación de recuerdos', ) -Hunters_Wanted_No_Newbies_Please = AssignmentEventEntry( +Beacon_Data_Decryption = AssignmentEventEntry( id=6, - name='Hunters_Wanted_No_Newbies_Please', - cn='来猎人,菜鸟勿扰', - cht='來獵人,菜鳥勿擾', - en='Hunters Wanted, No Newbies Please', - jp='プロハンター歓迎、初心者お断り', - es='Se necesitan cazadores. Novatos abstenerse', + name='Beacon_Data_Decryption', + cn='信标内容破译', + cht='信標內容破譯', + en='Beacon Data Decryption', + jp='ビーコンの内容解読', + es='Desencriptación de datos de baliza', ) -Peaceful_Life_for_Good_People = AssignmentEventEntry( +Robin_Fan_Party = AssignmentEventEntry( id=7, - name='Peaceful_Life_for_Good_People', - cn='好人一生平安', - cht='好人一生平安', - en='Peaceful Life for Good People', - jp='善人は一生安泰', - es='Vida pacífica para la gente de bien', + name='Robin_Fan_Party', + cn='知更鸟粉丝派对', + cht='知更鳥粉絲派對', + en="Robin's Fan Party", + jp='ロビンファンパーティー', + es='Fiesta de fans de Robin', ) -Closed_Beta_Test_Recruitment = AssignmentEventEntry( +Futile_Eradication = AssignmentEventEntry( id=8, - name='Closed_Beta_Test_Recruitment', - cn='征集内测玩家', - cht='徵求封測玩家', - en='Closed Beta Test Recruitment', - jp='テスター募集', - es='Reclutamiento para beta cerrada', + name='Futile_Eradication', + cn='野火烧不尽', + cht='野火燒不盡', + en='Futile Eradication', + jp='消せない野火', + es='El incendio no se extingue', ) -Protect_Digital_Exhibits = AssignmentEventEntry( +Bounty_for_Witnesses = AssignmentEventEntry( id=9, - name='Protect_Digital_Exhibits', - cn='保护数字展品', - cht='保護數位展品', - en='Protect Digital Exhibits', - jp='デジタル展示品を守れ', - es='Protección de objetos de exposición digitales', + name='Bounty_for_Witnesses', + cn='重金寻求目击者', + cht='重金尋求目擊者', + en='Bounty for Witnesses', + jp='目撃情報に高額報酬', + es='Recompensa para testigos', ) -Final_Survivor = AssignmentEventEntry( +New_Student_Protection_Plan = AssignmentEventEntry( id=10, - name='Final_Survivor', - cn='最后的生还者', - cht='最後的生還者', - en='Final Survivor', - jp='最後の生還者', - es='Última superviviente', + name='New_Student_Protection_Plan', + cn='守护新生计划', + cht='守護新生計畫', + en='New Student Protection Plan', + jp='新生ピノコニー・ガーディアン計画', + es='Plan de protección de nuevos estudiantes', ) -Water_Pollution_Control = AssignmentEventEntry( +Big_Data_Analysis = AssignmentEventEntry( id=11, - name='Water_Pollution_Control', - cn='水域排污', - cht='水域排汙', - en='Water Pollution Control', - jp='水質汚染', - es='Control de contaminación acuática', + name='Big_Data_Analysis', + cn='大数据分析', + cht='大資料分析', + en='Big Data Analysis', + jp='ビッグデータ分析', + es='Análisis de datos masivos', ) -Hook_Line_and_Sinker = AssignmentEventEntry( +Banana_Conspiracy = AssignmentEventEntry( id=12, - name='Hook_Line_and_Sinker', - cn='愿者上钩', - cht='願者上鉤', - en='Hook, Line, and Sinker', - jp='いずれ捕まる', - es='Quien muerde el anzuelo es porque quiere', -) -Investigation_Order_Boothill = AssignmentEventEntry( - id=13, - name='Investigation_Order_Boothill', - cn='追查令:波提欧', - cht='追查令:波提歐', - en='Investigation Order: Boothill', - jp='調査命令:ブートヒル', - es='Orden de investigación: Boothill', -) -Volunteers_Wanted = AssignmentEventEntry( - id=14, - name='Volunteers_Wanted', - cn='寻找志愿者', - cht='尋找志向者', - en='Volunteers Wanted', - jp='ボランティアを探せ', - es='Se necesitan voluntarios', -) -Burn_Treatment = AssignmentEventEntry( - id=15, - name='Burn_Treatment', - cn='烧伤治疗', - cht='燒傷治療', - en='Burn Treatment', - jp='火傷の治療', - es='Tratamiento cauterizador', -) -I_Want_to_Speak_to_Your_Manager = AssignmentEventEntry( - id=16, - name='I_Want_to_Speak_to_Your_Manager', - cn='去把你们经理喊过来', - cht='叫你們經理出來', - en='I Want to Speak to Your Manager', - jp='責任者を呼べ', - es='Quiero hablar con su gerente', -) -Licensed_Product_Damage_Assessment = AssignmentEventEntry( - id=17, - name='Licensed_Product_Damage_Assessment', - cn='授权产品定损', - cht='授權產品損失鑑定', - en='Licensed Product Damage Assessment', - jp='ライセンス製品の損失額評価', - es='Evaluación de pérdidas de productos autorizados', -) -Annoying_Flies = AssignmentEventEntry( - id=18, - name='Annoying_Flies', - cn='烦人的苍蝇', - cht='煩人的蒼蠅', - en='Annoying Flies', - jp='鬱陶しいハエ', - es='Moscas molestas', -) -Urgent_Protection_Services = AssignmentEventEntry( - id=19, - name='Urgent_Protection_Services', - cn='紧急护卫', - cht='緊急護衛', - en='Urgent Protection Services', - jp='緊急護衛', - es='Se necesita protección urgente', -) -A_Dream_Is_Born = AssignmentEventEntry( - id=20, - name='A_Dream_Is_Born', - cn='星梦起航', - cht='星夢啟航', - en='A Dream Is Born', - jp='星の夢の門出', - es='Ha nacido una estrella', + name='Banana_Conspiracy', + cn='香蕉疑云', + cht='香蕉疑雲', + en='Banana Conspiracy', + jp='バナナの謎', + es='Conspiración bananera', ) Wanted_Boothill = AssignmentEventEntry( - id=21, + id=13, name='Wanted_Boothill', cn='通缉令:波提欧', cht='通緝令:波提歐', @@ -192,30 +120,102 @@ Wanted_Boothill = AssignmentEventEntry( jp='指名手配:ブートヒル', es='Se busca: Boothill', ) -Casual_Cowboy = AssignmentEventEntry( +Grand_Cleaning_Physically = AssignmentEventEntry( + id=14, + name='Grand_Cleaning_Physically', + cn='大清洗(物理意义)', + cht='大清洗(物理意義)', + en='Grand Cleaning (Physically)', + jp='大掃除(文字通りの意味で)', + es='Gran limpieza (en el sentido físico)', +) +Need_Info_on_Silvergun_Shura = AssignmentEventEntry( + id=15, + name='Need_Info_on_Silvergun_Shura', + cn='求科普银枪•修罗', + cht='說明一下銀槍•修羅', + en='Need Info on Silvergun Shura', + jp='シルバーガン・修羅サンについて知りたい', + es='Se busca información sobre Shura Pistola de Plata', +) +k_Words_Frame_by_Frame_Analysis = AssignmentEventEntry( + id=16, + name='k_Words_Frame_by_Frame_Analysis', + cn='逐帧分析万字解读', + cht='逐幀分析萬字解讀', + en='10k Words Frame-by-Frame Analysis', + jp='フレームごとの詳細な分析および解読', + es='Análisis fotograma a fotograma en 10000 palabras', +) +Let_Fire_Cleanse_All = AssignmentEventEntry( + id=17, + name='Let_Fire_Cleanse_All', + cn='让火焰净化一切', + cht='讓火焰淨化一切', + en='Let Fire Cleanse All', + jp='炎で全てを浄化', + es='Que las llamas lo purifiquen todo', +) +Night_at_Dreamflux_Reef = AssignmentEventEntry( + id=18, + name='Night_at_Dreamflux_Reef', + cn='流梦礁之夜', + cht='流夢礁之夜', + en='Night at Dreamflux Reef', + jp='ドリームリーフ・ナイト', + es='Noche en el Arrecife Flujosueño', +) +Seven_Glasses_of_Financial_Forgetfulness = AssignmentEventEntry( + id=19, + name='Seven_Glasses_of_Financial_Forgetfulness', + cn='七杯忘钱水', + cht='七杯忘錢水', + en='Seven Glasses of Financial Forgetfulness', + jp='7杯の代金未払いのドリンク', + es='Siete copas de olvido monetario', +) +Big_Bad_Boothill = AssignmentEventEntry( + id=20, + name='Big_Bad_Boothill', + cn='罪大恶极波提欧', + cht='罪大惡極波提歐', + en='Big Bad Boothill', + jp='極悪人のブートヒル', + es='Boothill, ese felón', +) +To_Save_the_School_We = AssignmentEventEntry( + id=21, + name='To_Save_the_School_We', + cn='为了拯救学校我们…', + cht='我們為了拯救學校……', + en='To Save the School, We...', + jp='大学の危機を救うため…', + es='Para salvar la escuela, nosotros...', +) +Investigate_Memoria_Changes = AssignmentEventEntry( id=22, - name='Casual_Cowboy', - cn='牛仔不忙', - cht='牛仔不忙', - en='Casual Cowboy', - jp='暇を持て余したカウボーイ', - es='Vaquero ocioso', + name='Investigate_Memoria_Changes', + cn='调查忆质变化', + cht='調查憶質變化', + en='Investigate Memoria Changes', + jp='憶質変化の調査', + es='Investigación de cambios en la memoria', ) -Dangerous_Journey = AssignmentEventEntry( +Missing_Beacon = AssignmentEventEntry( id=23, - name='Dangerous_Journey', - cn='危险之旅', - cht='危險之旅', - en='Dangerous Journey', - jp='危険な旅', - es='Viaje peligroso', + name='Missing_Beacon', + cn='消失的信标', + cht='消失的信標', + en='Missing Beacon', + jp='消えたビーコン', + es='Baliza desaparecida', ) -Crossing_the_Fire_Line = AssignmentEventEntry( +Harmonic_Resonance = AssignmentEventEntry( id=24, - name='Crossing_the_Fire_Line', - cn='穿越火线', - cht='穿越火線', - en='Crossing the Fire Line', - jp='クロスファイア', - es='Cruzando la línea de fuego', + name='Harmonic_Resonance', + cn='谐乐共振', + cht='諧樂共振', + en='Harmonic Resonance', + jp='共鳴するハーモニー', + es='Resonancia armónica', ) diff --git a/tasks/assignment/keywords/event_group.py b/tasks/assignment/keywords/event_group.py index 8f6735559..ef219cf1c 100644 --- a/tasks/assignment/keywords/event_group.py +++ b/tasks/assignment/keywords/event_group.py @@ -21,3 +21,12 @@ All_About_Boothill = AssignmentEventGroup( jp='ブートヒルに関するすべて…', es='Todo sobre Boothill...', ) +Shadow_of_the_Ranger = AssignmentEventGroup( + id=3, + name='Shadow_of_the_Ranger', + cn='游侠谜影', + cht='遊俠謎影', + en='Shadow of the Ranger', + jp='レンジャーの影', + es='Sombra del Vigilante', +) diff --git a/tasks/assignment/ui.py b/tasks/assignment/ui.py index 3d1c0f228..77163c807 100644 --- a/tasks/assignment/ui.py +++ b/tasks/assignment/ui.py @@ -39,14 +39,14 @@ class AssignmentOcr(Ocr): (KEYWORDS_ASSIGNMENT_ENTRY.Akashic_Records, '阿[未][夏复]记录'), (KEYWORDS_ASSIGNMENT_ENTRY.Legend_of_the_Puppet_Master, '^师传说'), (KEYWORDS_ASSIGNMENT_ENTRY.The_Wages_of_Humanity, '[赠]养人类'), - (KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Car_Thief, '.*的偷车贼.*'), - (KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Synesthesia_Beacon_Function_Iteration, - '联觉信标功能[送]代'), + # (KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Car_Thief, '.*的偷车贼.*'), + # (KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Synesthesia_Beacon_Function_Iteration, + # '联觉信标功能[送]代'), ], 'en': [ # (KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Food_Improvement_Plan.name, # 'Food\s*[I]{0}mprovement Plan'), - (KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Car_Thief, '.*Car Thief.*'), + # (KEYWORDS_ASSIGNMENT_EVENT_ENTRY.Car_Thief, '.*Car Thief.*'), ] } @@ -110,15 +110,10 @@ ASSIGNMENT_GROUP_SWITCH = AssignmentGroupSwitch( 'AssignmentGroupSwitch', is_selector=True ) -# ASSIGNMENT_GROUP_SWITCH.add_state( -# KEYWORDS_ASSIGNMENT_EVENT_GROUP.Space_Station_Task_Force, -# check_button=SPACE_STATION_TASK_FORCE_CHECK, -# click_button=SPACE_STATION_TASK_FORCE_CLICK -# ) ASSIGNMENT_GROUP_SWITCH.add_state( - KEYWORDS_ASSIGNMENT_EVENT_GROUP.All_About_Boothill, - check_button=ALL_ABOUT_BOOTHILL_CHECK, - click_button=ALL_ABOUT_BOOTHILL_CLICK + CURRENT_EVENT_GROUP, + check_button=SHADOW_OF_THE_RANGER_CHECK, + click_button=SHADOW_OF_THE_RANGER_CLICK ) ASSIGNMENT_GROUP_SWITCH.add_state( KEYWORDS_ASSIGNMENT_GROUP.Character_Materials,