SIMNet/simnet/models/starrail/chronicle/characters.py
2023-06-09 22:55:51 +08:00

65 lines
1.1 KiB
Python

"""Starrail chronicle character."""
from typing import List, Optional
from simnet.models.base import APIModel
from .. import character
__all__ = [
"StarRailEquipment",
"Rank",
"Relic",
"StarRailDetailCharacter",
"StarRailDetailCharacters",
]
class StarRailEquipment(APIModel):
"""Character equipment."""
id: int
level: int
rank: int
name: str
desc: str
icon: str
class Relic(APIModel):
"""Character relic."""
id: int
level: int
pos: int
name: str
desc: str
icon: str
rarity: int
class Rank(APIModel):
"""Character rank."""
id: int
pos: int
name: str
icon: str
desc: str
is_unlocked: bool
class StarRailDetailCharacter(character.StarRailPartialCharacter):
"""StarRail character with equipment and relics."""
image: str
equip: Optional[StarRailEquipment]
relics: List[Relic]
ornaments: List[Relic]
ranks: List[Rank]
class StarRailDetailCharacters(APIModel):
"""StarRail characters."""
avatar_list: List[StarRailDetailCharacter]