Add: Get Support Reward Everyday (#155)

* Add: Get Support Reward Everyday

* Upd: i18n

* Upd: Instead of using ocr, use template matching

* fix bug

* fix:  remove debug img

* Upd: Character (#157)

* Upd: character

* Upd: Character

---------

Co-authored-by: LmeSzinc <lmeszincsales@gmail.com>
This commit is contained in:
X-Zero-L 2023-10-16 12:24:52 +08:00 committed by GitHub
parent dbda1aa969
commit 315bc261bb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
29 changed files with 535 additions and 68 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

View File

@ -155,6 +155,17 @@
"StallerJade": {}
}
},
"Freebies": {
"Scheduler": {
"Enable": true,
"NextRun": "2020-01-01 00:00:00",
"Command": "Freebies",
"ServerUpdate": "04:00"
},
"SupportReward": {
"Collect": true
}
},
"Rogue": {
"Scheduler": {
"Enable": false,

View File

@ -421,7 +421,7 @@ class KeywordExtract:
self.keywords_id = hash_list
self.write_keywords(keyword_class='RogueResonance', output_file='./tasks/rogue/keywords/resonance.py',
text_convert=blessing_name, extra_attrs=extra_attrs)
def iter_without_duplication(self, file: dict, keys):
visited = set()
for data in file.values():

View File

@ -214,6 +214,7 @@
"Stagnant_Shadow_Doom",
"Stagnant_Shadow_Puppetry",
"Stagnant_Shadow_Abomination",
"Stagnant_Shadow_Scorch",
"Stagnant_Shadow_Celestial",
"Cavern_of_Corrosion_Path_of_Gelid_Wind",
"Cavern_of_Corrosion_Path_of_Jabbing_Punch",
@ -309,6 +310,7 @@
"Stagnant_Shadow_Doom",
"Stagnant_Shadow_Puppetry",
"Stagnant_Shadow_Abomination",
"Stagnant_Shadow_Scorch",
"Stagnant_Shadow_Celestial"
]
},
@ -356,6 +358,7 @@
"Himeko",
"Hook",
"JingYuan",
"Jingliu",
"Kafka",
"Luka",
"Luocha",
@ -1107,6 +1110,39 @@
}
}
},
"Freebies": {
"Scheduler": {
"Enable": {
"type": "checkbox",
"value": true,
"option": [
true,
false
]
},
"NextRun": {
"type": "datetime",
"value": "2020-01-01 00:00:00",
"validate": "datetime"
},
"Command": {
"type": "input",
"value": "Freebies",
"display": "hide"
},
"ServerUpdate": {
"type": "input",
"value": "04:00",
"display": "hide"
}
},
"SupportReward": {
"Collect": {
"type": "checkbox",
"value": true
}
}
},
"Rogue": {
"Scheduler": {
"Enable": {

View File

@ -126,6 +126,8 @@ DungeonStorage:
stored: StoredSimulatedUniverse
order: 6
color: "#8fb5fe"
SupportReward:
Collect: true
Weekly:
Name:

View File

@ -22,3 +22,6 @@ BattlePass:
Assignment:
Scheduler:
Enable: true
Freebies:
Scheduler:
Enable: true

View File

@ -16,7 +16,8 @@
"DailyQuest",
"BattlePass",
"Assignment",
"DataUpdate"
"DataUpdate",
"Freebies"
]
}
}

View File

@ -44,7 +44,9 @@ Daily:
DataUpdate:
- Scheduler
- ItemStorage
Freebies:
- Scheduler
- SupportReward
# ==================== Rogue ====================
Rogue:

View File

@ -40,7 +40,7 @@ class GeneratedConfig:
Optimization_WhenTaskQueueEmpty = 'goto_main' # stay_there, goto_main, close_game
# Group `Dungeon`
Dungeon_Name = 'Calyx_Golden_Treasures' # Calyx_Golden_Memories, Calyx_Golden_Aether, Calyx_Golden_Treasures, Calyx_Crimson_Destruction, Calyx_Crimson_Preservation, Calyx_Crimson_The_Hunt, Calyx_Crimson_Abundance, Calyx_Crimson_Erudition, Calyx_Crimson_Harmony, Calyx_Crimson_Nihility, Stagnant_Shadow_Quanta, Stagnant_Shadow_Gust, Stagnant_Shadow_Fulmination, Stagnant_Shadow_Blaze, Stagnant_Shadow_Spike, Stagnant_Shadow_Rime, Stagnant_Shadow_Mirage, Stagnant_Shadow_Icicle, Stagnant_Shadow_Doom, Stagnant_Shadow_Puppetry, Stagnant_Shadow_Abomination, Stagnant_Shadow_Celestial, Cavern_of_Corrosion_Path_of_Gelid_Wind, Cavern_of_Corrosion_Path_of_Jabbing_Punch, Cavern_of_Corrosion_Path_of_Drifting, Cavern_of_Corrosion_Path_of_Providence, Cavern_of_Corrosion_Path_of_Holy_Hymn, Cavern_of_Corrosion_Path_of_Conflagration, Cavern_of_Corrosion_Path_of_Elixir_Seekers
Dungeon_Name = 'Calyx_Golden_Treasures' # Calyx_Golden_Memories, Calyx_Golden_Aether, Calyx_Golden_Treasures, Calyx_Crimson_Destruction, Calyx_Crimson_Preservation, Calyx_Crimson_The_Hunt, Calyx_Crimson_Abundance, Calyx_Crimson_Erudition, Calyx_Crimson_Harmony, Calyx_Crimson_Nihility, Stagnant_Shadow_Quanta, Stagnant_Shadow_Gust, Stagnant_Shadow_Fulmination, Stagnant_Shadow_Blaze, Stagnant_Shadow_Spike, Stagnant_Shadow_Rime, Stagnant_Shadow_Mirage, Stagnant_Shadow_Icicle, Stagnant_Shadow_Doom, Stagnant_Shadow_Puppetry, Stagnant_Shadow_Abomination, Stagnant_Shadow_Scorch, Stagnant_Shadow_Celestial, Cavern_of_Corrosion_Path_of_Gelid_Wind, Cavern_of_Corrosion_Path_of_Jabbing_Punch, Cavern_of_Corrosion_Path_of_Drifting, Cavern_of_Corrosion_Path_of_Providence, Cavern_of_Corrosion_Path_of_Holy_Hymn, Cavern_of_Corrosion_Path_of_Conflagration, Cavern_of_Corrosion_Path_of_Elixir_Seekers
Dungeon_NameAtDoubleCalyx = 'Calyx_Golden_Treasures' # do_not_participate, Calyx_Golden_Memories, Calyx_Golden_Aether, Calyx_Golden_Treasures, Calyx_Crimson_Destruction, Calyx_Crimson_Preservation, Calyx_Crimson_The_Hunt, Calyx_Crimson_Abundance, Calyx_Crimson_Erudition, Calyx_Crimson_Harmony, Calyx_Crimson_Nihility
Dungeon_NameAtDoubleRelic = 'Cavern_of_Corrosion_Path_of_Providence' # do_not_participate, Cavern_of_Corrosion_Path_of_Gelid_Wind, Cavern_of_Corrosion_Path_of_Jabbing_Punch, Cavern_of_Corrosion_Path_of_Drifting, Cavern_of_Corrosion_Path_of_Providence, Cavern_of_Corrosion_Path_of_Holy_Hymn, Cavern_of_Corrosion_Path_of_Conflagration, Cavern_of_Corrosion_Path_of_Elixir_Seekers
Dungeon_Team = 1 # 1, 2, 3, 4, 5, 6
@ -48,12 +48,12 @@ class GeneratedConfig:
# Group `DungeonDaily`
DungeonDaily_CalyxGolden = 'Calyx_Golden_Treasures' # do_not_achieve, Calyx_Golden_Memories, Calyx_Golden_Aether, Calyx_Golden_Treasures
DungeonDaily_CalyxCrimson = 'Calyx_Crimson_Erudition' # do_not_achieve, Calyx_Crimson_Destruction, Calyx_Crimson_Preservation, Calyx_Crimson_The_Hunt, Calyx_Crimson_Abundance, Calyx_Crimson_Erudition, Calyx_Crimson_Harmony, Calyx_Crimson_Nihility
DungeonDaily_StagnantShadow = 'Stagnant_Shadow_Quanta' # do_not_achieve, Stagnant_Shadow_Quanta, Stagnant_Shadow_Gust, Stagnant_Shadow_Fulmination, Stagnant_Shadow_Blaze, Stagnant_Shadow_Spike, Stagnant_Shadow_Rime, Stagnant_Shadow_Mirage, Stagnant_Shadow_Icicle, Stagnant_Shadow_Doom, Stagnant_Shadow_Puppetry, Stagnant_Shadow_Abomination, Stagnant_Shadow_Celestial
DungeonDaily_StagnantShadow = 'Stagnant_Shadow_Quanta' # do_not_achieve, Stagnant_Shadow_Quanta, Stagnant_Shadow_Gust, Stagnant_Shadow_Fulmination, Stagnant_Shadow_Blaze, Stagnant_Shadow_Spike, Stagnant_Shadow_Rime, Stagnant_Shadow_Mirage, Stagnant_Shadow_Icicle, Stagnant_Shadow_Doom, Stagnant_Shadow_Puppetry, Stagnant_Shadow_Abomination, Stagnant_Shadow_Scorch, Stagnant_Shadow_Celestial
DungeonDaily_CavernOfCorrosion = 'Cavern_of_Corrosion_Path_of_Providence' # do_not_achieve, Cavern_of_Corrosion_Path_of_Gelid_Wind, Cavern_of_Corrosion_Path_of_Jabbing_Punch, Cavern_of_Corrosion_Path_of_Drifting, Cavern_of_Corrosion_Path_of_Providence, Cavern_of_Corrosion_Path_of_Holy_Hymn, Cavern_of_Corrosion_Path_of_Conflagration, Cavern_of_Corrosion_Path_of_Elixir_Seekers
# Group `DungeonSupport`
DungeonSupport_Use = 'when_daily' # always_use, when_daily, do_not_use
DungeonSupport_Character = 'FirstCharacter' # FirstCharacter, Arlan, Asta, Bailu, Blade, Bronya, Clara, DanHeng, DanHengImbibitorLunae, FuXuan, Gepard, Herta, Himeko, Hook, JingYuan, Kafka, Luka, Luocha, Lynx, March7th, Natasha, Pela, Qingque, Sampo, Seele, Serval, SilverWolf, Sushang, Tingyun, TrailblazerDestruction, TrailblazerPreservation, Welt, Yanqing, Yukong
DungeonSupport_Character = 'FirstCharacter' # FirstCharacter, Arlan, Asta, Bailu, Blade, Bronya, Clara, DanHeng, DanHengImbibitorLunae, FuXuan, Gepard, Herta, Himeko, Hook, JingYuan, Jingliu, Kafka, Luka, Luocha, Lynx, March7th, Natasha, Pela, Qingque, Sampo, Seele, Serval, SilverWolf, Sushang, Tingyun, TrailblazerDestruction, TrailblazerPreservation, Welt, Yanqing, Yukong
# Group `DungeonStorage`
DungeonStorage_TrailblazePower = {}
@ -61,6 +61,9 @@ class GeneratedConfig:
DungeonStorage_EchoOfWar = {}
DungeonStorage_SimulatedUniverse = {}
# Group `SupportReward`
SupportReward_Collect = True
# Group `Weekly`
Weekly_Name = 'Echo_of_War_Divine_Seed' # Echo_of_War_Destruction_Beginning, Echo_of_War_End_of_the_Eternal_Freeze, Echo_of_War_Divine_Seed
Weekly_Team = 1 # 1, 2, 3, 4, 5, 6

View File

@ -11,7 +11,7 @@ class ManualConfig:
SCHEDULER_PRIORITY = """
Restart
> BattlePass > DailyQuest > Assignment > DataUpdate
> Weekly > Dungeon
> Weekly > Dungeon > Freebies
"""
"""

View File

@ -91,7 +91,7 @@ class ConfigGenerator:
options=[dungeon.name for dungeon in DungeonList.instances.values() if dungeon.is_Echo_of_War])
# Insert characters
from tasks.character.keywords import CharacterList
unsupported_characters = []
unsupported_characters = ["Guinaifen", "TopazandNumby"]
characters = [character.name for character in CharacterList.instances.values()
if character.name not in unsupported_characters]
option_add(keys='DungeonSupport.Character.option', options=characters)

View File

@ -46,6 +46,10 @@
"name": "Dashboard Upd",
"help": ""
},
"Freebies": {
"name": "Freebies",
"help": ""
},
"Rogue": {
"name": "Simulated Universe",
"help": "Simulated Universe is in development, task will not be run"
@ -228,10 +232,11 @@
"Stagnant_Shadow_Spike": "Ascension: Physical (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginary (Welt / Luocha / Yukong)",
"Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing)",
"Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing / Jingliu)",
"Stagnant_Shadow_Doom": "Ascension: Lightning (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fire (Guinaifen / Topaz and Numby)",
"Stagnant_Shadow_Celestial": "Ascension: Wind (Blade)",
"Cavern_of_Corrosion_Path_of_Gelid_Wind": "Relics: Ice Set & Wind Set (Path of Gelid Wind)",
"Cavern_of_Corrosion_Path_of_Jabbing_Punch": "Relics: Physical Set & Break Effect Set (Path of Jabbing Punch)",
@ -315,10 +320,11 @@
"Stagnant_Shadow_Spike": "Ascension: Physical (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginary (Welt / Luocha / Yukong)",
"Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing)",
"Stagnant_Shadow_Icicle": "Ascension: Ice (Yanqing / Jingliu)",
"Stagnant_Shadow_Doom": "Ascension: Lightning (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fire (Guinaifen / Topaz and Numby)",
"Stagnant_Shadow_Celestial": "Ascension: Wind (Blade)"
},
"CavernOfCorrosion": {
@ -364,6 +370,7 @@
"Himeko": "Himeko",
"Hook": "Hook",
"JingYuan": "Jing Yuan",
"Jingliu": "Jingliu",
"Kafka": "Kafka",
"Luka": "Luka",
"Luocha": "Luocha",
@ -407,6 +414,16 @@
"help": ""
}
},
"SupportReward": {
"_info": {
"name": "Support Reward",
"help": ""
},
"Collect": {
"name": "Receive support reward",
"help": ""
}
},
"Weekly": {
"_info": {
"name": "Echo of War Settings",

View File

@ -46,6 +46,10 @@
"name": "Actualizar panel",
"help": ""
},
"Freebies": {
"name": "Freebies",
"help": ""
},
"Rogue": {
"name": "Universo Simulado",
"help": "El Universo Simulado está en desarrollo, y no se ejecutará"
@ -228,10 +232,11 @@
"Stagnant_Shadow_Spike": "Ascension: Físico (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginario (Welt / Luocha / Yukong)",
"Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing)",
"Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing / Jingliu)",
"Stagnant_Shadow_Doom": "Ascension: Rayo (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fuego (Guinaifen / Topaz y Conti)",
"Stagnant_Shadow_Celestial": "Ascension: Viento (Blade)",
"Cavern_of_Corrosion_Path_of_Gelid_Wind": "Artefactos: Hielo y Viento (Senda del viento gélido)",
"Cavern_of_Corrosion_Path_of_Jabbing_Punch": "Artefactos: Físico y Efecto de Ruptura (Senda de los puños rápidos)",
@ -315,10 +320,11 @@
"Stagnant_Shadow_Spike": "Ascension: Físico (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginario (Welt / Luocha / Yukong)",
"Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing)",
"Stagnant_Shadow_Icicle": "Ascension: Hielo (Yanqing / Jingliu)",
"Stagnant_Shadow_Doom": "Ascension: Rayo (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fuego (Guinaifen / Topaz y Conti)",
"Stagnant_Shadow_Celestial": "Ascension: Viento (Blade)"
},
"CavernOfCorrosion": {
@ -364,6 +370,7 @@
"Himeko": "Himeko",
"Hook": "Hook",
"JingYuan": "Jing Yuan",
"Jingliu": "Jingliu",
"Kafka": "Kafka",
"Luka": "Luka",
"Luocha": "Luocha",
@ -407,6 +414,16 @@
"help": ""
}
},
"SupportReward": {
"_info": {
"name": "Support Reward",
"help": ""
},
"Collect": {
"name": "Receive support reward",
"help": ""
}
},
"Weekly": {
"_info": {
"name": "Ajustes de Ecos de la guerra",

View File

@ -46,6 +46,10 @@
"name": "Task.DataUpdate.name",
"help": "Task.DataUpdate.help"
},
"Freebies": {
"name": "他ギフト",
"help": ""
},
"Rogue": {
"name": "Task.Rogue.name",
"help": "Task.Rogue.help"
@ -228,10 +232,11 @@
"Stagnant_Shadow_Spike": "キャラクター昇格素材:物理(ナターシャ / クラーラ / ルカ / 素裳)",
"Stagnant_Shadow_Rime": "キャラクター昇格素材:氷(三月なのか / ヘルタ / ジェパード / ペラ)",
"Stagnant_Shadow_Mirage": "キャラクター昇格素材:虚数(ヴェルト / 羅刹 / 御空)",
"Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿",
"Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿 / 鏡流",
"Stagnant_Shadow_Doom": "キャラクター昇格素材:雷(カフカ / 景元)",
"Stagnant_Shadow_Puppetry": "キャラクター昇格素材:虚数(丹恒・飲月)",
"Stagnant_Shadow_Abomination": "キャラクター昇格素材:量子(リンクス / 符玄)",
"Stagnant_Shadow_Scorch": "キャラクター昇格素材:炎(桂乃芬 / トパーズ&カブ)",
"Stagnant_Shadow_Celestial": "キャラクター昇格素材:風(刃)",
"Cavern_of_Corrosion_Path_of_Gelid_Wind": "侵蝕トンネル・霜風の路",
"Cavern_of_Corrosion_Path_of_Jabbing_Punch": "侵蝕トンネル・迅拳の路",
@ -315,10 +320,11 @@
"Stagnant_Shadow_Spike": "キャラクター昇格素材:物理(ナターシャ / クラーラ / ルカ / 素裳)",
"Stagnant_Shadow_Rime": "キャラクター昇格素材:氷(三月なのか / ヘルタ / ジェパード / ペラ)",
"Stagnant_Shadow_Mirage": "キャラクター昇格素材:虚数(ヴェルト / 羅刹 / 御空)",
"Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿",
"Stagnant_Shadow_Icicle": "キャラクター昇格素材:氷(彦卿 / 鏡流",
"Stagnant_Shadow_Doom": "キャラクター昇格素材:雷(カフカ / 景元)",
"Stagnant_Shadow_Puppetry": "キャラクター昇格素材:虚数(丹恒・飲月)",
"Stagnant_Shadow_Abomination": "キャラクター昇格素材:量子(リンクス / 符玄)",
"Stagnant_Shadow_Scorch": "キャラクター昇格素材:炎(桂乃芬 / トパーズ&カブ)",
"Stagnant_Shadow_Celestial": "キャラクター昇格素材:風(刃)"
},
"CavernOfCorrosion": {
@ -364,6 +370,7 @@
"Himeko": "姫子",
"Hook": "フック",
"JingYuan": "景元",
"Jingliu": "鏡流",
"Kafka": "カフカ",
"Luka": "ルカ",
"Luocha": "羅刹",
@ -407,6 +414,16 @@
"help": "DungeonStorage.SimulatedUniverse.help"
}
},
"SupportReward": {
"_info": {
"name": "サポートボーナス",
"help": ""
},
"Collect": {
"name": "收取サポートボーナス",
"help": ""
}
},
"Weekly": {
"_info": {
"name": "Weekly._info.name",

View File

@ -46,6 +46,10 @@
"name": "仪表盘更新",
"help": ""
},
"Freebies": {
"name": "白嫖奖励",
"help": ""
},
"Rogue": {
"name": "模拟宇宙",
"help": "模拟宇宙还在开发中,任务不会被运行"
@ -228,10 +232,11 @@
"Stagnant_Shadow_Spike": "角色晋阶材料:物理(娜塔莎 / 克拉拉 / 卢卡 / 素裳)",
"Stagnant_Shadow_Rime": "角色晋阶材料:冰(三月七 / 黑塔 / 杰帕德 / 佩拉)",
"Stagnant_Shadow_Mirage": "角色晋阶材料:虚数(瓦尔特 / 罗刹 / 驭空)",
"Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿",
"Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿 / 镜流",
"Stagnant_Shadow_Doom": "角色晋阶材料:雷(卡芙卡 / 景元)",
"Stagnant_Shadow_Puppetry": "角色晋阶材料:虚数(丹恒•饮月)",
"Stagnant_Shadow_Abomination": "角色晋阶材料:量子(玲可 / 符玄)",
"Stagnant_Shadow_Scorch": "角色晋阶材料:火(桂乃芬 / 托帕&账账)",
"Stagnant_Shadow_Celestial": "角色晋阶材料:风(刃)",
"Cavern_of_Corrosion_Path_of_Gelid_Wind": "遗器:冰套+风套(霜风之径•侵蚀隧洞)",
"Cavern_of_Corrosion_Path_of_Jabbing_Punch": "遗器:物理套+击破套(迅拳之径•侵蚀隧洞)",
@ -315,10 +320,11 @@
"Stagnant_Shadow_Spike": "角色晋阶材料:物理(娜塔莎 / 克拉拉 / 卢卡 / 素裳)",
"Stagnant_Shadow_Rime": "角色晋阶材料:冰(三月七 / 黑塔 / 杰帕德 / 佩拉)",
"Stagnant_Shadow_Mirage": "角色晋阶材料:虚数(瓦尔特 / 罗刹 / 驭空)",
"Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿",
"Stagnant_Shadow_Icicle": "角色晋阶材料:冰(彦卿 / 镜流",
"Stagnant_Shadow_Doom": "角色晋阶材料:雷(卡芙卡 / 景元)",
"Stagnant_Shadow_Puppetry": "角色晋阶材料:虚数(丹恒•饮月)",
"Stagnant_Shadow_Abomination": "角色晋阶材料:量子(玲可 / 符玄)",
"Stagnant_Shadow_Scorch": "角色晋阶材料:火(桂乃芬 / 托帕&账账)",
"Stagnant_Shadow_Celestial": "角色晋阶材料:风(刃)"
},
"CavernOfCorrosion": {
@ -364,6 +370,7 @@
"Himeko": "姬子",
"Hook": "虎克",
"JingYuan": "景元",
"Jingliu": "镜流",
"Kafka": "卡芙卡",
"Luka": "卢卡",
"Luocha": "罗刹",
@ -407,6 +414,16 @@
"help": ""
}
},
"SupportReward": {
"_info": {
"name": "支援奖励",
"help": ""
},
"Collect": {
"name": "领取支援奖励",
"help": ""
}
},
"Weekly": {
"_info": {
"name": "历战余响设置",

View File

@ -46,6 +46,10 @@
"name": "儀表板更新",
"help": ""
},
"Freebies": {
"name": "免費獎勵",
"help": ""
},
"Rogue": {
"name": "模擬宇宙",
"help": "模擬宇宙還在開發中,任務不會被運行"
@ -228,10 +232,11 @@
"Stagnant_Shadow_Spike": "角色晉階材料:物理(娜塔莎 / 克拉拉 / 盧卡 / 素裳)",
"Stagnant_Shadow_Rime": "角色晉階材料:冰(三月七 / 黑塔 / 傑帕德 / 佩拉)",
"Stagnant_Shadow_Mirage": "角色晉階材料:虛數(瓦爾特 / 羅剎 / 馭空)",
"Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿",
"Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿 / 鏡流",
"Stagnant_Shadow_Doom": "角色晉階材料:雷(卡芙卡 / 景元)",
"Stagnant_Shadow_Puppetry": "角色晉階材料:虛數(丹恆•飲月)",
"Stagnant_Shadow_Abomination": "角色晉階材料:量子(玲可 / 符玄)",
"Stagnant_Shadow_Scorch": "角色晉階材料:火(桂乃芬 / 托帕&帳帳)",
"Stagnant_Shadow_Celestial": "角色晉階材料:風(刃)",
"Cavern_of_Corrosion_Path_of_Gelid_Wind": "遺器:冰套+風套(霜風之徑•侵蝕隧洞)",
"Cavern_of_Corrosion_Path_of_Jabbing_Punch": "遺器:物理套+擊破套(迅拳之徑•侵蝕隧洞)",
@ -315,10 +320,11 @@
"Stagnant_Shadow_Spike": "角色晉階材料:物理(娜塔莎 / 克拉拉 / 盧卡 / 素裳)",
"Stagnant_Shadow_Rime": "角色晉階材料:冰(三月七 / 黑塔 / 傑帕德 / 佩拉)",
"Stagnant_Shadow_Mirage": "角色晉階材料:虛數(瓦爾特 / 羅剎 / 馭空)",
"Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿",
"Stagnant_Shadow_Icicle": "角色晉階材料:冰(彥卿 / 鏡流",
"Stagnant_Shadow_Doom": "角色晉階材料:雷(卡芙卡 / 景元)",
"Stagnant_Shadow_Puppetry": "角色晉階材料:虛數(丹恆•飲月)",
"Stagnant_Shadow_Abomination": "角色晉階材料:量子(玲可 / 符玄)",
"Stagnant_Shadow_Scorch": "角色晉階材料:火(桂乃芬 / 托帕&帳帳)",
"Stagnant_Shadow_Celestial": "角色晉階材料:風(刃)"
},
"CavernOfCorrosion": {
@ -364,6 +370,7 @@
"Himeko": "姬子",
"Hook": "虎克",
"JingYuan": "景元",
"Jingliu": "鏡流",
"Kafka": "卡芙卡",
"Luka": "盧卡",
"Luocha": "羅剎",
@ -407,6 +414,16 @@
"help": ""
}
},
"SupportReward": {
"_info": {
"name": "支援獎勵",
"help": ""
},
"Collect": {
"name": "收取支援獎勵",
"help": ""
}
},
"Weekly": {
"_info": {
"name": "歷戰餘響設定",

3
src.py
View File

@ -46,6 +46,9 @@ class StarRailCopilot(AzurLaneAutoScript):
from tasks.item.data_update import DataUpdate
DataUpdate(config=self.config, device=self.device).run()
def freebies(self):
from tasks.freebies.freebies import Freebies
Freebies(config=self.config, device=self.device).run()
if __name__ == '__main__':
src = StarRailCopilot('src')

View File

@ -93,8 +93,17 @@ Gepard = CharacterList(
jp='ジェパード',
es='Gepard',
)
Herta = CharacterList(
Guinaifen = CharacterList(
id=11,
name='Guinaifen',
cn='桂乃芬',
cht='桂乃芬',
en='Guinaifen',
jp='桂乃芬',
es='Guinaifen',
)
Herta = CharacterList(
id=12,
name='Herta',
cn='黑塔',
cht='黑塔',
@ -103,7 +112,7 @@ Herta = CharacterList(
es='Herta',
)
Himeko = CharacterList(
id=12,
id=13,
name='Himeko',
cn='姬子',
cht='姬子',
@ -112,7 +121,7 @@ Himeko = CharacterList(
es='Himeko',
)
Hook = CharacterList(
id=13,
id=14,
name='Hook',
cn='虎克',
cht='虎克',
@ -121,7 +130,7 @@ Hook = CharacterList(
es='Hook',
)
JingYuan = CharacterList(
id=14,
id=15,
name='JingYuan',
cn='景元',
cht='景元',
@ -129,8 +138,17 @@ JingYuan = CharacterList(
jp='景元',
es='Jing Yuan',
)
Jingliu = CharacterList(
id=16,
name='Jingliu',
cn='镜流',
cht='鏡流',
en='Jingliu',
jp='鏡流',
es='Jingliu',
)
Kafka = CharacterList(
id=15,
id=17,
name='Kafka',
cn='卡芙卡',
cht='卡芙卡',
@ -139,7 +157,7 @@ Kafka = CharacterList(
es='Kafka',
)
Luka = CharacterList(
id=16,
id=18,
name='Luka',
cn='卢卡',
cht='盧卡',
@ -148,7 +166,7 @@ Luka = CharacterList(
es='Luka',
)
Luocha = CharacterList(
id=17,
id=19,
name='Luocha',
cn='罗刹',
cht='羅剎',
@ -157,7 +175,7 @@ Luocha = CharacterList(
es='Luocha',
)
Lynx = CharacterList(
id=18,
id=20,
name='Lynx',
cn='玲可',
cht='玲可',
@ -166,7 +184,7 @@ Lynx = CharacterList(
es='Lynx',
)
March7th = CharacterList(
id=19,
id=21,
name='March7th',
cn='三月七',
cht='三月七',
@ -175,7 +193,7 @@ March7th = CharacterList(
es='Siete de Marzo',
)
Natasha = CharacterList(
id=20,
id=22,
name='Natasha',
cn='娜塔莎',
cht='娜塔莎',
@ -184,7 +202,7 @@ Natasha = CharacterList(
es='Natasha',
)
Pela = CharacterList(
id=21,
id=23,
name='Pela',
cn='佩拉',
cht='佩拉',
@ -193,7 +211,7 @@ Pela = CharacterList(
es='Pela',
)
Qingque = CharacterList(
id=22,
id=24,
name='Qingque',
cn='青雀',
cht='青雀',
@ -202,7 +220,7 @@ Qingque = CharacterList(
es='Qingque',
)
Sampo = CharacterList(
id=23,
id=25,
name='Sampo',
cn='桑博',
cht='桑博',
@ -211,7 +229,7 @@ Sampo = CharacterList(
es='Sampo',
)
Seele = CharacterList(
id=24,
id=26,
name='Seele',
cn='希儿',
cht='希兒',
@ -220,7 +238,7 @@ Seele = CharacterList(
es='Seele',
)
Serval = CharacterList(
id=25,
id=27,
name='Serval',
cn='希露瓦',
cht='希露瓦',
@ -229,7 +247,7 @@ Serval = CharacterList(
es='Serval',
)
SilverWolf = CharacterList(
id=26,
id=28,
name='SilverWolf',
cn='银狼',
cht='銀狼',
@ -238,7 +256,7 @@ SilverWolf = CharacterList(
es='Silver Wolf',
)
Sushang = CharacterList(
id=27,
id=29,
name='Sushang',
cn='素裳',
cht='素裳',
@ -247,7 +265,7 @@ Sushang = CharacterList(
es='Sushang',
)
Tingyun = CharacterList(
id=28,
id=30,
name='Tingyun',
cn='停云',
cht='停雲',
@ -255,8 +273,17 @@ Tingyun = CharacterList(
jp='停雲',
es='Tingyun',
)
TopazandNumby = CharacterList(
id=31,
name='TopazandNumby',
cn='托帕&账账',
cht='托帕&帳帳',
en='Topaz and Numby',
jp='トパーズ&カブ',
es='Topaz y Conti',
)
TrailblazerDestruction = CharacterList(
id=29,
id=32,
name='TrailblazerDestruction',
cn='Trailblazer•毁灭',
cht='Trailblazer•毀滅',
@ -265,7 +292,7 @@ TrailblazerDestruction = CharacterList(
es='Trailblazer: Destrucción',
)
TrailblazerPreservation = CharacterList(
id=30,
id=33,
name='TrailblazerPreservation',
cn='Trailblazer•存护',
cht='Trailblazer•存護',
@ -274,7 +301,7 @@ TrailblazerPreservation = CharacterList(
es='Trailblazer: Conservación',
)
Welt = CharacterList(
id=31,
id=34,
name='Welt',
cn='瓦尔特',
cht='瓦爾特',
@ -283,7 +310,7 @@ Welt = CharacterList(
es='Welt',
)
Yanqing = CharacterList(
id=32,
id=35,
name='Yanqing',
cn='彦卿',
cht='彥卿',
@ -292,7 +319,7 @@ Yanqing = CharacterList(
es='Yanqing',
)
Yukong = CharacterList(
id=33,
id=36,
name='Yukong',
cn='驭空',
cht='馭空',

View File

@ -192,8 +192,17 @@ Stagnant_Shadow_Abomination = DungeonList(
jp='凝結虚影・厄獣の形',
es='Forma de la abominación',
)
Stagnant_Shadow_Celestial = DungeonList(
Stagnant_Shadow_Scorch = DungeonList(
id=22,
name='Stagnant_Shadow_Scorch',
cn='燔灼之形•凝滞虚影',
cht='燔灼之形•凝滯虛影',
en='Shape of Scorch',
jp='凝結虚影・燔灼の形',
es='Forma abrasada',
)
Stagnant_Shadow_Celestial = DungeonList(
id=23,
name='Stagnant_Shadow_Celestial',
cn='天人之形•凝滞虚影',
cht='天人之形•凝滯虛影',
@ -202,7 +211,7 @@ Stagnant_Shadow_Celestial = DungeonList(
es='Forma de lo celestial',
)
Cavern_of_Corrosion_Path_of_Gelid_Wind = DungeonList(
id=23,
id=24,
name='Cavern_of_Corrosion_Path_of_Gelid_Wind',
cn='霜风之径•侵蚀隧洞',
cht='霜風之徑•侵蝕隧洞',
@ -211,7 +220,7 @@ Cavern_of_Corrosion_Path_of_Gelid_Wind = DungeonList(
es='Senda del viento gélido',
)
Cavern_of_Corrosion_Path_of_Jabbing_Punch = DungeonList(
id=24,
id=25,
name='Cavern_of_Corrosion_Path_of_Jabbing_Punch',
cn='迅拳之径•侵蚀隧洞',
cht='迅拳之徑•侵蝕隧洞',
@ -220,7 +229,7 @@ Cavern_of_Corrosion_Path_of_Jabbing_Punch = DungeonList(
es='Senda de los puños rápidos',
)
Cavern_of_Corrosion_Path_of_Drifting = DungeonList(
id=25,
id=26,
name='Cavern_of_Corrosion_Path_of_Drifting',
cn='漂泊之径•侵蚀隧洞',
cht='漂泊之徑•侵蝕隧洞',
@ -229,7 +238,7 @@ Cavern_of_Corrosion_Path_of_Drifting = DungeonList(
es='Senda de la deriva',
)
Cavern_of_Corrosion_Path_of_Providence = DungeonList(
id=26,
id=27,
name='Cavern_of_Corrosion_Path_of_Providence',
cn='睿治之径•侵蚀隧洞',
cht='睿治之徑•侵蝕隧洞',
@ -238,7 +247,7 @@ Cavern_of_Corrosion_Path_of_Providence = DungeonList(
es='Senda de la providencia',
)
Cavern_of_Corrosion_Path_of_Holy_Hymn = DungeonList(
id=27,
id=28,
name='Cavern_of_Corrosion_Path_of_Holy_Hymn',
cn='圣颂之径•侵蚀隧洞',
cht='聖頌之徑•侵蝕隧洞',
@ -247,7 +256,7 @@ Cavern_of_Corrosion_Path_of_Holy_Hymn = DungeonList(
es='Senda del himno sagrado',
)
Cavern_of_Corrosion_Path_of_Conflagration = DungeonList(
id=28,
id=29,
name='Cavern_of_Corrosion_Path_of_Conflagration',
cn='野焰之径•侵蚀隧洞',
cht='野焰之徑•侵蝕隧洞',
@ -256,7 +265,7 @@ Cavern_of_Corrosion_Path_of_Conflagration = DungeonList(
es='Senda de la conflagración',
)
Cavern_of_Corrosion_Path_of_Elixir_Seekers = DungeonList(
id=29,
id=30,
name='Cavern_of_Corrosion_Path_of_Elixir_Seekers',
cn='药使之径•侵蚀隧洞',
cht='藥使之徑•侵蝕隧洞',
@ -265,7 +274,7 @@ Cavern_of_Corrosion_Path_of_Elixir_Seekers = DungeonList(
es='Senda de los elixires',
)
Echo_of_War_Destruction_Beginning = DungeonList(
id=30,
id=31,
name='Echo_of_War_Destruction_Beginning',
cn='毁灭的开端•历战余响',
cht='毀滅的開端•歷戰餘響',
@ -274,7 +283,7 @@ Echo_of_War_Destruction_Beginning = DungeonList(
es='El principio de la Destrucción',
)
Echo_of_War_End_of_the_Eternal_Freeze = DungeonList(
id=31,
id=32,
name='Echo_of_War_End_of_the_Eternal_Freeze',
cn='寒潮的落幕•历战余响',
cht='寒潮的落幕•歷戰餘響',
@ -283,7 +292,7 @@ Echo_of_War_End_of_the_Eternal_Freeze = DungeonList(
es='El fin del Hielo Eterno',
)
Echo_of_War_Divine_Seed = DungeonList(
id=32,
id=33,
name='Echo_of_War_Divine_Seed',
cn='不死的神实•历战余响',
cht='不死的神實•歷戰餘響',
@ -292,7 +301,7 @@ Echo_of_War_Divine_Seed = DungeonList(
es='Semilla divina',
)
Simulated_Universe_World_1 = DungeonList(
id=33,
id=34,
name='Simulated_Universe_World_1',
cn='第一世界•模拟宇宙',
cht='第一世界•模擬宇宙',
@ -301,7 +310,7 @@ Simulated_Universe_World_1 = DungeonList(
es='Mundo 1',
)
Simulated_Universe_World_3 = DungeonList(
id=34,
id=35,
name='Simulated_Universe_World_3',
cn='第三世界•模拟宇宙',
cht='第三世界•模擬宇宙',
@ -310,7 +319,7 @@ Simulated_Universe_World_3 = DungeonList(
es='Mundo 3',
)
Simulated_Universe_World_4 = DungeonList(
id=35,
id=36,
name='Simulated_Universe_World_4',
cn='第四世界•模拟宇宙',
cht='第四世界•模擬宇宙',
@ -319,7 +328,7 @@ Simulated_Universe_World_4 = DungeonList(
es='Mundo 4',
)
Simulated_Universe_World_5 = DungeonList(
id=36,
id=37,
name='Simulated_Universe_World_5',
cn='第五世界•模拟宇宙',
cht='第五世界•模擬宇宙',
@ -328,7 +337,7 @@ Simulated_Universe_World_5 = DungeonList(
es='Mundo 5',
)
Simulated_Universe_World_6 = DungeonList(
id=37,
id=38,
name='Simulated_Universe_World_6',
cn='第六世界•模拟宇宙',
cht='第六世界•模擬宇宙',
@ -337,7 +346,7 @@ Simulated_Universe_World_6 = DungeonList(
es='Mundo 6',
)
Simulated_Universe_World_7 = DungeonList(
id=38,
id=39,
name='Simulated_Universe_World_7',
cn='第七世界•模拟宇宙',
cht='第七世界•模擬宇宙',
@ -346,7 +355,7 @@ Simulated_Universe_World_7 = DungeonList(
es='Mundo 7',
)
The_Voyage_of_Navis_Astriger = DungeonList(
id=39,
id=40,
name='The_Voyage_of_Navis_Astriger',
cn='天艟求仙迷航录',
cht='天艟求仙迷航錄',
@ -355,7 +364,7 @@ The_Voyage_of_Navis_Astriger = DungeonList(
es='El viaje de las naves astriger',
)
The_Last_Vestiges_of_Towering_Citadel = DungeonList(
id=40,
id=41,
name='The_Last_Vestiges_of_Towering_Citadel',
cn='永屹之城遗秘',
cht='永屹之城遺秘',
@ -364,7 +373,7 @@ The_Last_Vestiges_of_Towering_Citadel = DungeonList(
es='Herencia de la Ciudadela Imponente',
)
Memory_of_Chaos = DungeonList(
id=41,
id=42,
name='Memory_of_Chaos',
cn='混沌回忆',
cht='混沌回憶',

View File

@ -69,11 +69,11 @@ Stagnant_Shadow_Mirage = DungeonDetailed(
Stagnant_Shadow_Icicle = DungeonDetailed(
id=8,
name='Stagnant_Shadow_Icicle',
cn='角色晋阶材料:冰(彦卿',
cht='角色晉階材料:冰(彥卿',
en='Ascension: Ice (Yanqing)',
jp='キャラクター昇格素材:氷(彦卿',
es='Ascension: Hielo (Yanqing)',
cn='角色晋阶材料:冰(彦卿 / 镜流',
cht='角色晉階材料:冰(彥卿 / 鏡流',
en='Ascension: Ice (Yanqing / Jingliu)',
jp='キャラクター昇格素材:氷(彦卿 / 鏡流',
es='Ascension: Hielo (Yanqing / Jingliu)',
)
Stagnant_Shadow_Doom = DungeonDetailed(
id=9,
@ -102,8 +102,17 @@ Stagnant_Shadow_Abomination = DungeonDetailed(
jp='キャラクター昇格素材:量子(リンクス / 符玄)',
es='Ascension: Cuántico (Lynx / Fu Xuan)',
)
Stagnant_Shadow_Celestial = DungeonDetailed(
Stagnant_Shadow_Scorch = DungeonDetailed(
id=12,
name='Stagnant_Shadow_Scorch',
cn='角色晋阶材料:火(桂乃芬 / 托帕&账账)',
cht='角色晉階材料:火(桂乃芬 / 托帕&帳帳)',
en='Ascension: Fire (Guinaifen / Topaz and Numby)',
jp='キャラクター昇格素材:炎(桂乃芬 / トパーズ&カブ)',
es='Ascension: Fuego (Guinaifen / Topaz y Conti)',
)
Stagnant_Shadow_Celestial = DungeonDetailed(
id=13,
name='Stagnant_Shadow_Celestial',
cn='角色晋阶材料:风(刃)',
cht='角色晉階材料:風(刃)',

View File

@ -0,0 +1,56 @@
from module.base.button import Button, ButtonWrapper
# This file was auto-generated, do not modify it manually. To generate:
# ``` python -m dev_tools.button_extract ```
CAN_GET_REWARD = ButtonWrapper(
name='CAN_GET_REWARD',
share=Button(
file='./assets/share/freebies/support_reward/CAN_GET_REWARD.png',
area=(1055, 266, 1106, 310),
search=(1035, 246, 1126, 330),
color=(229, 186, 123),
button=(1055, 266, 1106, 310),
),
)
CLICKING_REWARD = ButtonWrapper(
name='CLICKING_REWARD',
share=Button(
file='./assets/share/freebies/support_reward/CLICKING_REWARD.png',
area=(1066, 268, 1105, 307),
search=(1046, 248, 1125, 327),
color=(197, 161, 111),
button=(1066, 268, 1105, 307),
),
)
IN_PROFILE = ButtonWrapper(
name='IN_PROFILE',
share=Button(
file='./assets/share/freebies/support_reward/IN_PROFILE.png',
area=(643, 106, 673, 131),
search=(623, 86, 693, 151),
color=(74, 67, 58),
button=(643, 106, 673, 131),
),
)
MENU_TO_PROFILE = ButtonWrapper(
name='MENU_TO_PROFILE',
share=Button(
file='./assets/share/freebies/support_reward/MENU_TO_PROFILE.png',
area=(1123, 82, 1149, 97),
search=(1103, 62, 1169, 117),
color=(226, 226, 225),
button=(1123, 82, 1149, 97),
),
)
PROFILE = ButtonWrapper(
name='PROFILE',
cn=Button(
file='./assets/cn/freebies/support_reward/PROFILE.png',
area=(890, 99, 1111, 131),
search=(870, 79, 1131, 151),
color=(205, 206, 206),
button=(890, 99, 1111, 131),
),
en=None,
)

View File

@ -0,0 +1,14 @@
from module.logger import logger
from module.base.base import ModuleBase
from tasks.freebies.support_reward import SupportReward
class Freebies(ModuleBase):
def run(self):
"""
Run all freebie tasks
"""
if self.config.SupportReward_Collect:
logger.hr('Support Reward')
SupportReward(config=self.config, device=self.device).run()
self.config.task_delay(server_update=True)

View File

@ -0,0 +1,107 @@
from module.logger import logger
from tasks.base.page import page_menu
from tasks.base.ui import UI
from tasks.base.assets.assets_base_page import CLOSE,MENU_CHECK
from tasks.base.assets.assets_base_popup import GET_REWARD
from tasks.freebies.assets.assets_freebies_support_reward import MENU_TO_PROFILE, PROFILE, IN_PROFILE,CAN_GET_REWARD, CLICKING_REWARD
class SupportReward(UI):
def run(self):
"""
Run get support reward task
"""
self._get_support_reward()
def _get_support_reward(self):
self.ui_ensure(page_menu)
self._goto_profile()
self._get_reward()
self._goto_menu()
self.ui_ensure(page_menu)
def _goto_profile(self):
"""
Pages:
in: MENU
out: PROFILE
"""
skip_first_screenshot = False
logger.info('Going to profile')
while 1:
if skip_first_screenshot:
skip_first_screenshot = False
else:
self.device.screenshot()
if self.appear(IN_PROFILE):
logger.info('Successfully in profile')
return True
if self.appear_then_click(MENU_TO_PROFILE):
continue
if self.appear_then_click(PROFILE):
continue
def _get_reward(self):
"""
Pages:
in: PROFILE
out: PROFILE
"""
skip_first_screenshot = False
logger.info('Getting reward')
has_reward = False
while 1:
if skip_first_screenshot:
skip_first_screenshot = False
else:
self.device.screenshot()
if self.appear(GET_REWARD):
self.device.click(MENU_CHECK) # Avoid clicking on some other buttons
continue
if self.match_template_color(CLICKING_REWARD, similarity=0.70):
logger.info('Clicking reward')
continue
if self.match_template_color(CAN_GET_REWARD, similarity=0.70):
logger.info('Can get reward')
self.device.click(CAN_GET_REWARD)
has_reward = True
continue
if self.appear(IN_PROFILE): # and not self.appear(CAN_GET_REWARD):
logger.info('Successfully got reward') if has_reward else logger.info('No reward')
return True
def _goto_menu(self):
"""
Pages:
in: PROFILE
out: MENU
"""
skip_first_screenshot = False
logger.info('Going to menu')
while 1:
if skip_first_screenshot:
skip_first_screenshot = False
else:
self.device.screenshot()
if self.appear(MENU_CHECK):
return True
if self.appear(IN_PROFILE):
self.device.click(CLOSE)
continue
if __name__ == '__main__':
self = SupportReward('src')
self.device.screenshot()
self._get_support_reward()

View File

@ -405,7 +405,7 @@ Punklorde_Mentality = RogueCurio(
cn='朋克洛德精神',
cht='龐克洛德精神',
en='Punklorde Mentality',
jp='パンクロード精神',
jp='パンクロード精神',
es='Mentalidad de Punklorde',
)
Beacon_Coloring_Paste = RogueCurio(
@ -615,3 +615,102 @@ Sealing_Wax_of_Propagation = RogueCurio(
jp='繁殖の封蝋',
es='Lacre de la Propagación',
)
Society_Ticket_Infinite = RogueCurio(
id=69,
name='Society_Ticket_Infinite',
cn='俱乐部券(无尽)',
cht='俱樂部券(無盡)',
en='Society Ticket (Infinite)',
jp='クラブチケット∞',
es='Boleto del Círculo (infinito)',
)
Faith_Bond_Infinite = RogueCurio(
id=70,
name='Faith_Bond_Infinite',
cn='信仰债券(无尽)',
cht='信仰債券(無盡)',
en='Faith Bond (Infinite)',
jp='信仰債券∞',
es='Bono de fe (infinito)',
)
Gold_Coin_of_Discord_Infinite = RogueCurio(
id=71,
name='Gold_Coin_of_Discord_Infinite',
cn='分裂金币(无尽)',
cht='分裂金幣(無盡)',
en='Gold Coin of Discord (Infinite)',
jp='分裂金貨∞',
es='Moneda de oro del desacuerdo (infinita)',
)
Entropic_Die_Infinite = RogueCurio(
id=72,
name='Entropic_Die_Infinite',
cn='万象无常骰(无尽)',
cht='萬象無常骰(無盡)',
en='Entropic Die (Infinite)',
jp='万象無常のサイコロ∞',
es='Dado entrópico (infinito)',
)
Obliteration_Wick_Trimmer_Infinite = RogueCurio(
id=73,
name='Obliteration_Wick_Trimmer_Infinite',
cn='湮灭烛剪(无尽)',
cht='湮滅燭剪(無盡)',
en='Obliteration Wick Trimmer (Infinite)',
jp='湮滅の芯切り∞',
es='Despabiladeras de la aniquilación (infinitas)',
)
Cosmic_Big_Lotto_Infinite = RogueCurio(
id=74,
name='Cosmic_Big_Lotto_Infinite',
cn='银河大乐透(无尽)',
cht='銀河大樂透(無盡)',
en='Cosmic Big Lotto (Infinite)',
jp='銀河ビッグロッタリー∞',
es='Gran Lotería Galáctica (infinita)',
)
Omniscient_Capsule_Infinite = RogueCurio(
id=75,
name='Omniscient_Capsule_Infinite',
cn='万识囊(无尽)',
cht='萬識囊(無盡)',
en='Omniscient Capsule (Infinite)',
jp='全知袋∞',
es='Cápsula omnisciente (infinita)',
)
Punklorde_Mentality_Infinite = RogueCurio(
id=76,
name='Punklorde_Mentality_Infinite',
cn='朋克洛德精神(无尽)',
cht='龐克洛德精神(無盡)',
en='Punklorde Mentality (Infinite)',
jp='パンクロード精神∞',
es='Mentalidad de Punklorde (infinita)',
)
Robe_of_The_Beauty_Infinite = RogueCurio(
id=77,
name='Robe_of_The_Beauty_Infinite',
cn='纯美之袍(无尽)',
cht='純美之袍(無盡)',
en='Robe of The Beauty (Infinite)',
jp='純美のローブ∞',
es='Túnica de la Belleza (infinita)',
)
Angel_type_I_O_U_Dispenser_Infinite = RogueCurio(
id=78,
name='Angel_type_I_O_U_Dispenser_Infinite',
cn='天使型谢债发行机(无尽)',
cht='天使型謝債發行機(無盡)',
en='Angel-type I.O.U. Dispenser (Infinite)',
jp='天使型謝債発行機∞',
es='Dispensador de deuda en forma de ángel (infinito)',
)
Shattered_Star_Bait_Infinite = RogueCurio(
id=79,
name='Shattered_Star_Bait_Infinite',
cn='碎星芳饵(无尽)',
cht='碎星芳餌(無盡)',
en='Shattered Star Bait (Infinite)',
jp='砕けた星の釣り餌∞',
es='Cebo de las estrellas despedazadas (infinito)',
)