mirror of
https://github.com/baiqwerdvd/ArknightsUID.git
synced 2025-05-04 11:07:35 +08:00
52 lines
1.1 KiB
Python
52 lines
1.1 KiB
Python
from typing import Dict, List, Union
|
|
|
|
from ..common import BaseStruct
|
|
|
|
from msgspec import field
|
|
|
|
|
|
class StoryDataTrigger(BaseStruct):
|
|
type_: str = field(name='type')
|
|
key: Union[str, None]
|
|
useRegex: bool
|
|
|
|
|
|
class StoryDataConditionStageCondition(BaseStruct):
|
|
stageId: str
|
|
minState: int
|
|
maxState: int
|
|
|
|
|
|
class StoryDataCondition(BaseStruct):
|
|
minProgress: int
|
|
maxProgress: int
|
|
minPlayerLevel: int
|
|
requiredFlags: List[str]
|
|
excludedFlags: List[str]
|
|
requiredStages: List[StoryDataConditionStageCondition]
|
|
|
|
|
|
class ItemBundle(BaseStruct):
|
|
id_: str = field(name='id')
|
|
count: int
|
|
type_: str = field(name='type')
|
|
|
|
|
|
class StoryData(BaseStruct):
|
|
id_: str = field(name='id')
|
|
needCommit: bool
|
|
repeatable: bool
|
|
disabled: bool
|
|
videoResource: bool
|
|
trigger: StoryDataTrigger
|
|
condition: Union[StoryDataCondition, None]
|
|
setProgress: int
|
|
setFlags: Union[List[str], None]
|
|
completedRewards: Union[List[ItemBundle], None]
|
|
|
|
|
|
class StoryTable(BaseStruct):
|
|
__version__ = '23-10-31-11-47-45-d410ff'
|
|
|
|
stories: Dict[str, StoryData]
|