37 lines
561 B
Python
37 lines
561 B
Python
from typing import Optional
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class GroupReward(BaseModel):
|
|
name: str
|
|
|
|
|
|
class AchievementGroups(BaseModel):
|
|
name: str
|
|
sortorder: int
|
|
reward: GroupReward
|
|
|
|
|
|
# Achievement
|
|
class StageReward(BaseModel):
|
|
name: str
|
|
count: int
|
|
|
|
|
|
class Stage(BaseModel):
|
|
title: str
|
|
description: str
|
|
progress: int
|
|
reward: StageReward
|
|
|
|
|
|
class Achievement(BaseModel):
|
|
name: str
|
|
achievementgroup: str
|
|
sortorder: int
|
|
stages: int
|
|
stage1: Stage
|
|
stage2: Optional[Stage]
|
|
stage3: Optional[Stage]
|