diff --git a/python_genshin_artifact/calculator.py b/python_genshin_artifact/calculator.py index 9231228..a39e647 100644 --- a/python_genshin_artifact/calculator.py +++ b/python_genshin_artifact/calculator.py @@ -1,9 +1,9 @@ from genshin_artifact_function import get_damage_analysis as _get_damage_analysis -from python_genshin_artifact.models.characterInfo import CharacterInfo +from python_genshin_artifact.models.calculator import CalculatorConfig from python_genshin_artifact.models.damage.analysis import DamageAnalysis -def get_damage_analysis(value: CharacterInfo) -> DamageAnalysis: - ret = _get_damage_analysis(value=value.json()) +def get_damage_analysis(value: CalculatorConfig) -> DamageAnalysis: + ret = _get_damage_analysis(value.json()) return DamageAnalysis.parse_raw(ret) diff --git a/python_genshin_artifact/models/calculator.py b/python_genshin_artifact/models/calculator.py index 22caca6..b9f6f10 100644 --- a/python_genshin_artifact/models/calculator.py +++ b/python_genshin_artifact/models/calculator.py @@ -14,7 +14,7 @@ class CalculatorConfig(BaseModel): character: CharacterInfo weapon: WeaponInfo buffs: List[BuffInfo] = [] - artifact: List[ArtifactInfo] = [] + artifacts: List[ArtifactInfo] = [] artifact_config: Optional[str] = None skill: SkillInfo enemy: Optional[EnemyInfo] = None diff --git a/python_genshin_artifact/models/characterInfo.py b/python_genshin_artifact/models/characterInfo.py index af593d5..630558b 100644 --- a/python_genshin_artifact/models/characterInfo.py +++ b/python_genshin_artifact/models/characterInfo.py @@ -1,3 +1,5 @@ +from typing import Union + from pydantic import BaseModel @@ -9,4 +11,4 @@ class CharacterInfo(BaseModel): skill1: int skill2: int skill3: int - params: str = "NoConfig" + params: Union[str, dict] = "NoConfig" diff --git a/python_genshin_artifact/models/skill.py b/python_genshin_artifact/models/skill.py index e5d9995..b3f048f 100644 --- a/python_genshin_artifact/models/skill.py +++ b/python_genshin_artifact/models/skill.py @@ -1,6 +1,7 @@ +from typing import Union from pydantic import BaseModel class SkillInfo(BaseModel): - index: str - config: str = "NoConfig" + index: int + config: Union[str, dict] = "NoConfig" diff --git a/python_genshin_artifact/models/weapon.py b/python_genshin_artifact/models/weapon.py index 1f87678..214638e 100644 --- a/python_genshin_artifact/models/weapon.py +++ b/python_genshin_artifact/models/weapon.py @@ -1,3 +1,5 @@ +from typing import Union + from pydantic import BaseModel @@ -6,4 +8,4 @@ class WeaponInfo(BaseModel): level: int ascend: bool refine: int - params: str + params: Union[str, dict] = "NoConfig"