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": {} "StallerJade": {}
} }
}, },
"Freebies": {
"Scheduler": {
"Enable": true,
"NextRun": "2020-01-01 00:00:00",
"Command": "Freebies",
"ServerUpdate": "04:00"
},
"SupportReward": {
"Collect": true
}
},
"Rogue": { "Rogue": {
"Scheduler": { "Scheduler": {
"Enable": false, "Enable": false,

View File

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

View File

@ -214,6 +214,7 @@
"Stagnant_Shadow_Doom", "Stagnant_Shadow_Doom",
"Stagnant_Shadow_Puppetry", "Stagnant_Shadow_Puppetry",
"Stagnant_Shadow_Abomination", "Stagnant_Shadow_Abomination",
"Stagnant_Shadow_Scorch",
"Stagnant_Shadow_Celestial", "Stagnant_Shadow_Celestial",
"Cavern_of_Corrosion_Path_of_Gelid_Wind", "Cavern_of_Corrosion_Path_of_Gelid_Wind",
"Cavern_of_Corrosion_Path_of_Jabbing_Punch", "Cavern_of_Corrosion_Path_of_Jabbing_Punch",
@ -309,6 +310,7 @@
"Stagnant_Shadow_Doom", "Stagnant_Shadow_Doom",
"Stagnant_Shadow_Puppetry", "Stagnant_Shadow_Puppetry",
"Stagnant_Shadow_Abomination", "Stagnant_Shadow_Abomination",
"Stagnant_Shadow_Scorch",
"Stagnant_Shadow_Celestial" "Stagnant_Shadow_Celestial"
] ]
}, },
@ -356,6 +358,7 @@
"Himeko", "Himeko",
"Hook", "Hook",
"JingYuan", "JingYuan",
"Jingliu",
"Kafka", "Kafka",
"Luka", "Luka",
"Luocha", "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": { "Rogue": {
"Scheduler": { "Scheduler": {
"Enable": { "Enable": {

View File

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

View File

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

View File

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

View File

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

View File

@ -40,7 +40,7 @@ class GeneratedConfig:
Optimization_WhenTaskQueueEmpty = 'goto_main' # stay_there, goto_main, close_game Optimization_WhenTaskQueueEmpty = 'goto_main' # stay_there, goto_main, close_game
# Group `Dungeon` # 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_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_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 Dungeon_Team = 1 # 1, 2, 3, 4, 5, 6
@ -48,12 +48,12 @@ class GeneratedConfig:
# Group `DungeonDaily` # Group `DungeonDaily`
DungeonDaily_CalyxGolden = 'Calyx_Golden_Treasures' # do_not_achieve, Calyx_Golden_Memories, Calyx_Golden_Aether, Calyx_Golden_Treasures 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_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 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` # Group `DungeonSupport`
DungeonSupport_Use = 'when_daily' # always_use, when_daily, do_not_use 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` # Group `DungeonStorage`
DungeonStorage_TrailblazePower = {} DungeonStorage_TrailblazePower = {}
@ -61,6 +61,9 @@ class GeneratedConfig:
DungeonStorage_EchoOfWar = {} DungeonStorage_EchoOfWar = {}
DungeonStorage_SimulatedUniverse = {} DungeonStorage_SimulatedUniverse = {}
# Group `SupportReward`
SupportReward_Collect = True
# Group `Weekly` # 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_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 Weekly_Team = 1 # 1, 2, 3, 4, 5, 6

View File

@ -11,7 +11,7 @@ class ManualConfig:
SCHEDULER_PRIORITY = """ SCHEDULER_PRIORITY = """
Restart Restart
> BattlePass > DailyQuest > Assignment > DataUpdate > 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]) options=[dungeon.name for dungeon in DungeonList.instances.values() if dungeon.is_Echo_of_War])
# Insert characters # Insert characters
from tasks.character.keywords import CharacterList from tasks.character.keywords import CharacterList
unsupported_characters = [] unsupported_characters = ["Guinaifen", "TopazandNumby"]
characters = [character.name for character in CharacterList.instances.values() characters = [character.name for character in CharacterList.instances.values()
if character.name not in unsupported_characters] if character.name not in unsupported_characters]
option_add(keys='DungeonSupport.Character.option', options=characters) option_add(keys='DungeonSupport.Character.option', options=characters)

View File

@ -46,6 +46,10 @@
"name": "Dashboard Upd", "name": "Dashboard Upd",
"help": "" "help": ""
}, },
"Freebies": {
"name": "Freebies",
"help": ""
},
"Rogue": { "Rogue": {
"name": "Simulated Universe", "name": "Simulated Universe",
"help": "Simulated Universe is in development, task will not be run" "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_Spike": "Ascension: Physical (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)", "Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginary (Welt / Luocha / Yukong)", "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_Doom": "Ascension: Lightning (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)", "Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)", "Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fire (Guinaifen / Topaz and Numby)",
"Stagnant_Shadow_Celestial": "Ascension: Wind (Blade)", "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_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)", "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_Spike": "Ascension: Physical (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)", "Stagnant_Shadow_Rime": "Ascension: Ice (March 7th / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginary (Welt / Luocha / Yukong)", "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_Doom": "Ascension: Lightning (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)", "Stagnant_Shadow_Puppetry": "Ascension: Imaginary (Dan Heng • Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)", "Stagnant_Shadow_Abomination": "Ascension: Quantum (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fire (Guinaifen / Topaz and Numby)",
"Stagnant_Shadow_Celestial": "Ascension: Wind (Blade)" "Stagnant_Shadow_Celestial": "Ascension: Wind (Blade)"
}, },
"CavernOfCorrosion": { "CavernOfCorrosion": {
@ -364,6 +370,7 @@
"Himeko": "Himeko", "Himeko": "Himeko",
"Hook": "Hook", "Hook": "Hook",
"JingYuan": "Jing Yuan", "JingYuan": "Jing Yuan",
"Jingliu": "Jingliu",
"Kafka": "Kafka", "Kafka": "Kafka",
"Luka": "Luka", "Luka": "Luka",
"Luocha": "Luocha", "Luocha": "Luocha",
@ -407,6 +414,16 @@
"help": "" "help": ""
} }
}, },
"SupportReward": {
"_info": {
"name": "Support Reward",
"help": ""
},
"Collect": {
"name": "Receive support reward",
"help": ""
}
},
"Weekly": { "Weekly": {
"_info": { "_info": {
"name": "Echo of War Settings", "name": "Echo of War Settings",

View File

@ -46,6 +46,10 @@
"name": "Actualizar panel", "name": "Actualizar panel",
"help": "" "help": ""
}, },
"Freebies": {
"name": "Freebies",
"help": ""
},
"Rogue": { "Rogue": {
"name": "Universo Simulado", "name": "Universo Simulado",
"help": "El Universo Simulado está en desarrollo, y no se ejecutará" "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_Spike": "Ascension: Físico (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)", "Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginario (Welt / Luocha / Yukong)", "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_Doom": "Ascension: Rayo (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)", "Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)", "Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fuego (Guinaifen / Topaz y Conti)",
"Stagnant_Shadow_Celestial": "Ascension: Viento (Blade)", "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_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)", "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_Spike": "Ascension: Físico (Natasha / Clara / Luka / Sushang)",
"Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)", "Stagnant_Shadow_Rime": "Ascension: Hielo (Siete de Marzo / Herta / Gepard / Pela)",
"Stagnant_Shadow_Mirage": "Ascension: Imaginario (Welt / Luocha / Yukong)", "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_Doom": "Ascension: Rayo (Kafka / Jing Yuan)",
"Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)", "Stagnant_Shadow_Puppetry": "Ascension: Imaginario (Dan Heng - Imbibitor Lunae)",
"Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)", "Stagnant_Shadow_Abomination": "Ascension: Cuántico (Lynx / Fu Xuan)",
"Stagnant_Shadow_Scorch": "Ascension: Fuego (Guinaifen / Topaz y Conti)",
"Stagnant_Shadow_Celestial": "Ascension: Viento (Blade)" "Stagnant_Shadow_Celestial": "Ascension: Viento (Blade)"
}, },
"CavernOfCorrosion": { "CavernOfCorrosion": {
@ -364,6 +370,7 @@
"Himeko": "Himeko", "Himeko": "Himeko",
"Hook": "Hook", "Hook": "Hook",
"JingYuan": "Jing Yuan", "JingYuan": "Jing Yuan",
"Jingliu": "Jingliu",
"Kafka": "Kafka", "Kafka": "Kafka",
"Luka": "Luka", "Luka": "Luka",
"Luocha": "Luocha", "Luocha": "Luocha",
@ -407,6 +414,16 @@
"help": "" "help": ""
} }
}, },
"SupportReward": {
"_info": {
"name": "Support Reward",
"help": ""
},
"Collect": {
"name": "Receive support reward",
"help": ""
}
},
"Weekly": { "Weekly": {
"_info": { "_info": {
"name": "Ajustes de Ecos de la guerra", "name": "Ajustes de Ecos de la guerra",

View File

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

View File

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

View File

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

3
src.py
View File

@ -46,6 +46,9 @@ class StarRailCopilot(AzurLaneAutoScript):
from tasks.item.data_update import DataUpdate from tasks.item.data_update import DataUpdate
DataUpdate(config=self.config, device=self.device).run() 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__': if __name__ == '__main__':
src = StarRailCopilot('src') src = StarRailCopilot('src')

View File

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

View File

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

View File

@ -69,11 +69,11 @@ Stagnant_Shadow_Mirage = DungeonDetailed(
Stagnant_Shadow_Icicle = DungeonDetailed( Stagnant_Shadow_Icicle = DungeonDetailed(
id=8, id=8,
name='Stagnant_Shadow_Icicle', name='Stagnant_Shadow_Icicle',
cn='角色晋阶材料:冰(彦卿', cn='角色晋阶材料:冰(彦卿 / 镜流',
cht='角色晉階材料:冰(彥卿', cht='角色晉階材料:冰(彥卿 / 鏡流',
en='Ascension: Ice (Yanqing)', en='Ascension: Ice (Yanqing / Jingliu)',
jp='キャラクター昇格素材:氷(彦卿', jp='キャラクター昇格素材:氷(彦卿 / 鏡流',
es='Ascension: Hielo (Yanqing)', es='Ascension: Hielo (Yanqing / Jingliu)',
) )
Stagnant_Shadow_Doom = DungeonDetailed( Stagnant_Shadow_Doom = DungeonDetailed(
id=9, id=9,
@ -102,8 +102,17 @@ Stagnant_Shadow_Abomination = DungeonDetailed(
jp='キャラクター昇格素材:量子(リンクス / 符玄)', jp='キャラクター昇格素材:量子(リンクス / 符玄)',
es='Ascension: Cuántico (Lynx / Fu Xuan)', es='Ascension: Cuántico (Lynx / Fu Xuan)',
) )
Stagnant_Shadow_Celestial = DungeonDetailed( Stagnant_Shadow_Scorch = DungeonDetailed(
id=12, 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', name='Stagnant_Shadow_Celestial',
cn='角色晋阶材料:风(刃)', cn='角色晋阶材料:风(刃)',
cht='角色晉階材料:風(刃)', 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='朋克洛德精神', cn='朋克洛德精神',
cht='龐克洛德精神', cht='龐克洛德精神',
en='Punklorde Mentality', en='Punklorde Mentality',
jp='パンクロード精神', jp='パンクロード精神',
es='Mentalidad de Punklorde', es='Mentalidad de Punklorde',
) )
Beacon_Coloring_Paste = RogueCurio( Beacon_Coloring_Paste = RogueCurio(
@ -615,3 +615,102 @@ Sealing_Wax_of_Propagation = RogueCurio(
jp='繁殖の封蝋', jp='繁殖の封蝋',
es='Lacre de la Propagación', 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)',
)