mirror of
https://github.com/PaiGramTeam/StarRailDamageCal.git
synced 2024-11-27 09:58:53 +00:00
fix up!
This commit is contained in:
parent
47beeedf75
commit
2c7c61188a
@ -49,10 +49,12 @@ class DamageCal:
|
|||||||
char_id_list, char_data_dict = await api_to_dict(uid)
|
char_id_list, char_data_dict = await api_to_dict(uid)
|
||||||
|
|
||||||
if isinstance(char_id_list, str):
|
if isinstance(char_id_list, str):
|
||||||
raise MihomoRequestError
|
msg = "char_id_list is str"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
if char_data_dict is None:
|
if char_data_dict is None:
|
||||||
raise MihomoRequestError
|
msg = "char_data_dict is None"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
if char_id not in char_id_list:
|
if char_id not in char_id_list:
|
||||||
raise NotInCharacterShowcaseError
|
raise NotInCharacterShowcaseError
|
||||||
@ -72,10 +74,12 @@ class DamageCal:
|
|||||||
char_id_list, char_data_dict = await api_to_dict(mihomo_raw=mihomo_data)
|
char_id_list, char_data_dict = await api_to_dict(mihomo_raw=mihomo_data)
|
||||||
|
|
||||||
if isinstance(char_id_list, str):
|
if isinstance(char_id_list, str):
|
||||||
raise MihomoRequestError
|
msg = "char_id_list is str"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
if char_data_dict is None:
|
if char_data_dict is None:
|
||||||
raise MihomoRequestError
|
msg = "char_data_dict is None"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
if char_id not in char_id_list:
|
if char_id not in char_id_list:
|
||||||
raise NotInCharacterShowcaseError
|
raise NotInCharacterShowcaseError
|
||||||
@ -89,10 +93,12 @@ class DamageCal:
|
|||||||
char_id_list, char_data_dict = await api_to_dict(mihomo_raw=mihomo_data)
|
char_id_list, char_data_dict = await api_to_dict(mihomo_raw=mihomo_data)
|
||||||
|
|
||||||
if isinstance(char_id_list, str):
|
if isinstance(char_id_list, str):
|
||||||
raise MihomoRequestError
|
msg = "char_id_list is str"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
if char_data_dict is None:
|
if char_data_dict is None:
|
||||||
raise MihomoRequestError
|
msg = "char_data_dict is None"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
damage_dict = {}
|
damage_dict = {}
|
||||||
|
|
||||||
@ -107,10 +113,12 @@ class DamageCal:
|
|||||||
char_id_list, char_data_dict = await api_to_dict(uid=uid)
|
char_id_list, char_data_dict = await api_to_dict(uid=uid)
|
||||||
|
|
||||||
if isinstance(char_id_list, str):
|
if isinstance(char_id_list, str):
|
||||||
raise MihomoRequestError
|
msg = "char_id_list is str"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
if char_data_dict is None:
|
if char_data_dict is None:
|
||||||
raise MihomoRequestError
|
msg = "char_data_dict is None"
|
||||||
|
raise MihomoRequestError(msg)
|
||||||
|
|
||||||
damage_dict = {}
|
damage_dict = {}
|
||||||
|
|
||||||
|
@ -1,9 +1,12 @@
|
|||||||
|
from typing import Union
|
||||||
|
|
||||||
|
|
||||||
class UidNotfoundError(Exception):
|
class UidNotfoundError(Exception):
|
||||||
def __init__(self, uid: str):
|
def __init__(self, uid: str):
|
||||||
self.uid = uid
|
self.uid = uid
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return repr(self.uid)
|
return self.uid
|
||||||
|
|
||||||
|
|
||||||
class CharNameError(Exception):
|
class CharNameError(Exception):
|
||||||
@ -11,11 +14,28 @@ class CharNameError(Exception):
|
|||||||
self.char_name = char_name
|
self.char_name = char_name
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return repr(self.char_name)
|
return self.char_name
|
||||||
|
|
||||||
|
|
||||||
|
class MihomoModelError(Exception):
|
||||||
|
def __init__(self, exce: Union[Exception, str]):
|
||||||
|
self.exce = exce.args[0] if isinstance(exce, Exception) else exce
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return self.exce
|
||||||
|
|
||||||
|
|
||||||
|
class MihomoQueueTimeoutError(Exception):
|
||||||
|
def __str__(self):
|
||||||
|
return "Mihomo queue timeout, please try again later."
|
||||||
|
|
||||||
|
|
||||||
class MihomoRequestError(Exception):
|
class MihomoRequestError(Exception):
|
||||||
pass
|
def __init__(self, exce: Union[Exception, str]):
|
||||||
|
self.exce = exce.args[0] if isinstance(exce, Exception) else exce
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return self.exce
|
||||||
|
|
||||||
|
|
||||||
class NotInCharacterShowcaseError(Exception):
|
class NotInCharacterShowcaseError(Exception):
|
||||||
@ -27,4 +47,4 @@ class CharacterShowcaseNotOpenError(Exception):
|
|||||||
self.uid = uid
|
self.uid = uid
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return repr(self.uid)
|
return self.uid
|
||||||
|
@ -47,11 +47,11 @@ class Challenge(Struct):
|
|||||||
|
|
||||||
|
|
||||||
class PlayerSpaceInfo(Struct):
|
class PlayerSpaceInfo(Struct):
|
||||||
challengeInfo: Challenge
|
|
||||||
maxRogueChallengeScore: int
|
maxRogueChallengeScore: int
|
||||||
equipmentCount: int
|
equipmentCount: int
|
||||||
avatarCount: int
|
avatarCount: int
|
||||||
achievementCount: int
|
achievementCount: int
|
||||||
|
challengeInfo: Union[int, None] = None
|
||||||
|
|
||||||
|
|
||||||
class PlayerDetailInfo(Struct):
|
class PlayerDetailInfo(Struct):
|
||||||
|
@ -1,10 +1,13 @@
|
|||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import json
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
|
import msgspec
|
||||||
from httpx import AsyncClient
|
from httpx import AsyncClient
|
||||||
from msgspec import convert
|
from msgspec import convert
|
||||||
|
|
||||||
|
from starrail_damage_cal.exception import MihomoModelError, MihomoQueueTimeoutError
|
||||||
from starrail_damage_cal.mihomo.models import MihomoData
|
from starrail_damage_cal.mihomo.models import MihomoData
|
||||||
|
|
||||||
_HEADER = {"User-Agent": "StarRailDamageCal/"}
|
_HEADER = {"User-Agent": "StarRailDamageCal/"}
|
||||||
@ -25,4 +28,11 @@ async def get_char_card_info(
|
|||||||
path.mkdir(parents=True, exist_ok=True)
|
path.mkdir(parents=True, exist_ok=True)
|
||||||
with Path.open(path / f"{uid!s}.json", "w") as file:
|
with Path.open(path / f"{uid!s}.json", "w") as file:
|
||||||
file.write(req.text)
|
file.write(req.text)
|
||||||
|
try:
|
||||||
return convert(req.json(), type=MihomoData)
|
return convert(req.json(), type=MihomoData)
|
||||||
|
except msgspec.ValidationError as e:
|
||||||
|
if req.text == '{"detail":"Queue timeout"}':
|
||||||
|
raise MihomoQueueTimeoutError from e
|
||||||
|
raise MihomoModelError(e) from e
|
||||||
|
except json.decoder.JSONDecodeError as e:
|
||||||
|
raise MihomoModelError(e) from e
|
||||||
|
@ -43,10 +43,7 @@ async def api_to_dict(
|
|||||||
if not mihomo_raw:
|
if not mihomo_raw:
|
||||||
if not uid:
|
if not uid:
|
||||||
raise KeyError
|
raise KeyError
|
||||||
try:
|
|
||||||
sr_data = await get_char_card_info(uid)
|
sr_data = await get_char_card_info(uid)
|
||||||
except Exception as e: # noqa: BLE001
|
|
||||||
raise MihomoRequestError from e
|
|
||||||
else:
|
else:
|
||||||
sr_data = mihomo_raw
|
sr_data = mihomo_raw
|
||||||
|
|
||||||
|
549
test/test.json
549
test/test.json
@ -1,94 +1,142 @@
|
|||||||
{
|
{
|
||||||
"detailInfo": {
|
"detailInfo": {
|
||||||
"level": 69,
|
|
||||||
"worldLevel": 6,
|
"worldLevel": 6,
|
||||||
"nickname": "qwerdvd",
|
"level": 70,
|
||||||
"headIcon": 201102,
|
"friendCount": 53,
|
||||||
|
"nickname": "\u5c0f\u590f",
|
||||||
"avatarDetailList": [
|
"avatarDetailList": [
|
||||||
{
|
{
|
||||||
|
"level": 80,
|
||||||
|
"skillTreeList": [
|
||||||
|
{ "pointId": 1212001, "level": 6 },
|
||||||
|
{ "pointId": 1212002, "level": 10 },
|
||||||
|
{ "pointId": 1212003, "level": 10 },
|
||||||
|
{ "pointId": 1212004, "level": 10 },
|
||||||
|
{ "pointId": 1212007, "level": 1 },
|
||||||
|
{ "pointId": 1212101, "level": 1 },
|
||||||
|
{ "pointId": 1212102, "level": 1 },
|
||||||
|
{ "pointId": 1212103, "level": 1 },
|
||||||
|
{ "pointId": 1212201, "level": 1 },
|
||||||
|
{ "pointId": 1212202, "level": 1 },
|
||||||
|
{ "pointId": 1212203, "level": 1 },
|
||||||
|
{ "pointId": 1212204, "level": 1 },
|
||||||
|
{ "pointId": 1212205, "level": 1 },
|
||||||
|
{ "pointId": 1212206, "level": 1 },
|
||||||
|
{ "pointId": 1212207, "level": 1 },
|
||||||
|
{ "pointId": 1212208, "level": 1 },
|
||||||
|
{ "pointId": 1212209, "level": 1 },
|
||||||
|
{ "pointId": 1212210, "level": 1 }
|
||||||
|
],
|
||||||
"relicList": [
|
"relicList": [
|
||||||
{
|
{
|
||||||
"mainAffixId": 1,
|
"tid": 61041,
|
||||||
"tid": 61021,
|
|
||||||
"type": 1,
|
"type": 1,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 3, "cnt": 1 },
|
{ "affixId": 5, "cnt": 3, "step": 4 },
|
||||||
{ "affixId": 5, "cnt": 3, "step": 5 },
|
{ "affixId": 8, "cnt": 3, "step": 3 },
|
||||||
{ "affixId": 6, "cnt": 1, "step": 1 },
|
{ "affixId": 9, "cnt": 1, "step": 2 },
|
||||||
{ "affixId": 8, "cnt": 3, "step": 4 }
|
{ "affixId": 11, "cnt": 1, "step": 1 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 1,
|
"tid": 61042,
|
||||||
"tid": 61022,
|
|
||||||
"type": 2,
|
"type": 2,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 3, "cnt": 2, "step": 4 },
|
{ "affixId": 6, "cnt": 1, "step": 1 },
|
||||||
{ "affixId": 5, "cnt": 2, "step": 4 },
|
{ "affixId": 8, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 8, "cnt": 3, "step": 3 },
|
{ "affixId": 9, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 10, "cnt": 1, "step": 1 }
|
{ "affixId": 11, "cnt": 3, "step": 3 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 5,
|
"tid": 61043,
|
||||||
"tid": 61023,
|
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 1, "cnt": 1, "step": 1 },
|
{ "affixId": 1, "cnt": 1 },
|
||||||
{ "affixId": 5, "cnt": 3, "step": 4 },
|
{ "affixId": 3, "cnt": 1 },
|
||||||
{ "affixId": 6, "cnt": 2, "step": 1 },
|
{ "affixId": 5, "cnt": 5, "step": 6 },
|
||||||
{ "affixId": 8, "cnt": 2, "step": 2 }
|
{ "affixId": 11, "cnt": 1, "step": 2 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 5,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 2,
|
"tid": 61044,
|
||||||
"tid": 61024,
|
|
||||||
"type": 4,
|
"type": 4,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 1, "cnt": 1, "step": 2 },
|
{ "affixId": 3, "cnt": 2, "step": 2 },
|
||||||
{ "affixId": 4, "cnt": 3, "step": 3 },
|
{ "affixId": 4, "cnt": 2, "step": 3 },
|
||||||
{ "affixId": 8, "cnt": 3, "step": 4 },
|
{ "affixId": 5, "cnt": 2, "step": 2 },
|
||||||
{ "affixId": 12, "cnt": 1, "step": 2 }
|
{ "affixId": 8, "cnt": 2 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 4,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 10,
|
|
||||||
"tid": 63095,
|
"tid": 63095,
|
||||||
"type": 5,
|
"type": 5,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 3, "cnt": 2, "step": 2 },
|
{ "affixId": 4, "cnt": 2, "step": 4 },
|
||||||
{ "affixId": 9, "cnt": 2, "step": 3 },
|
{ "affixId": 5, "cnt": 3, "step": 5 },
|
||||||
{ "affixId": 10, "cnt": 2, "step": 1 },
|
{ "affixId": 6, "cnt": 1, "step": 2 },
|
||||||
{ "affixId": 12, "cnt": 2, "step": 2 }
|
{ "affixId": 9, "cnt": 3, "step": 2 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 6,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 4,
|
|
||||||
"tid": 63096,
|
"tid": 63096,
|
||||||
"type": 6,
|
"type": 6,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 2, "cnt": 2, "step": 1 },
|
{ "affixId": 1, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 8, "cnt": 2, "step": 1 },
|
{ "affixId": 8, "cnt": 2, "step": 3 },
|
||||||
{ "affixId": 9, "cnt": 1, "step": 1 },
|
{ "affixId": 9, "cnt": 2, "step": 3 },
|
||||||
{ "affixId": 12, "cnt": 3, "step": 3 }
|
{ "affixId": 11, "cnt": 2, "step": 3 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 4,
|
||||||
"level": 15
|
"level": 15
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"equipment": { "tid": 23015, "promotion": 6, "rank": 1, "level": 80 },
|
"avatarId": 1212,
|
||||||
"level": 80,
|
|
||||||
"avatarId": 1213,
|
|
||||||
"promotion": 6,
|
"promotion": 6,
|
||||||
|
"equipment": { "tid": 24000, "level": 80, "promotion": 6, "rank": 5 }
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recordInfo": {
|
||||||
|
"avatarCount": 29,
|
||||||
|
"achievementCount": 378,
|
||||||
|
"maxRogueChallengeScore": 8,
|
||||||
|
"equipmentCount": 151
|
||||||
|
},
|
||||||
|
"uid": 102840119,
|
||||||
|
"isDisplayAvatar": true,
|
||||||
|
"assistAvatarDetail": {
|
||||||
|
"level": 80,
|
||||||
"skillTreeList": [
|
"skillTreeList": [
|
||||||
|
{ "pointId": 1005001, "level": 5 },
|
||||||
|
{ "pointId": 1005002, "level": 9 },
|
||||||
|
{ "pointId": 1005003, "level": 8 },
|
||||||
|
{ "pointId": 1005004, "level": 9 },
|
||||||
|
{ "pointId": 1005007, "level": 1 },
|
||||||
|
{ "pointId": 1005101, "level": 1 },
|
||||||
|
{ "pointId": 1005102, "level": 1 },
|
||||||
|
{ "pointId": 1005103, "level": 1 },
|
||||||
|
{ "pointId": 1005201, "level": 1 },
|
||||||
|
{ "pointId": 1005202, "level": 1 },
|
||||||
|
{ "pointId": 1005203, "level": 1 },
|
||||||
|
{ "pointId": 1005204, "level": 1 },
|
||||||
|
{ "pointId": 1005205, "level": 1 },
|
||||||
|
{ "pointId": 1005206, "level": 1 },
|
||||||
|
{ "pointId": 1005207, "level": 1 },
|
||||||
|
{ "pointId": 1005210, "level": 1 },
|
||||||
{ "pointId": 1213001, "level": 6 },
|
{ "pointId": 1213001, "level": 6 },
|
||||||
{ "pointId": 1213002, "level": 10 },
|
{ "pointId": 1213002, "level": 9 },
|
||||||
{ "pointId": 1213003, "level": 10 },
|
{ "pointId": 1213003, "level": 10 },
|
||||||
{ "pointId": 1213004, "level": 10 },
|
{ "pointId": 1213004, "level": 9 },
|
||||||
{ "pointId": 1213007, "level": 1 },
|
{ "pointId": 1213007, "level": 1 },
|
||||||
{ "pointId": 1213101, "level": 1 },
|
{ "pointId": 1213101, "level": 1 },
|
||||||
{ "pointId": 1213102, "level": 1 },
|
{ "pointId": 1213102, "level": 1 },
|
||||||
@ -102,324 +150,249 @@
|
|||||||
{ "pointId": 1213207, "level": 1 },
|
{ "pointId": 1213207, "level": 1 },
|
||||||
{ "pointId": 1213208, "level": 1 },
|
{ "pointId": 1213208, "level": 1 },
|
||||||
{ "pointId": 1213209, "level": 1 },
|
{ "pointId": 1213209, "level": 1 },
|
||||||
{ "pointId": 1213210, "level": 1 }
|
{ "pointId": 1213210, "level": 1 },
|
||||||
]
|
{ "pointId": 1205001, "level": 6 },
|
||||||
},
|
{ "pointId": 1205002, "level": 10 },
|
||||||
{
|
{ "pointId": 1205003, "level": 9 },
|
||||||
|
{ "pointId": 1205004, "level": 7 },
|
||||||
|
{ "pointId": 1205007, "level": 1 },
|
||||||
|
{ "pointId": 1205101, "level": 1 },
|
||||||
|
{ "pointId": 1205102, "level": 1 },
|
||||||
|
{ "pointId": 1205103, "level": 1 },
|
||||||
|
{ "pointId": 1205201, "level": 1 },
|
||||||
|
{ "pointId": 1205202, "level": 1 },
|
||||||
|
{ "pointId": 1205203, "level": 1 },
|
||||||
|
{ "pointId": 1205205, "level": 1 },
|
||||||
|
{ "pointId": 1205206, "level": 1 },
|
||||||
|
{ "pointId": 1205207, "level": 1 },
|
||||||
|
{ "pointId": 1205208, "level": 1 },
|
||||||
|
{ "pointId": 1205209, "level": 1 },
|
||||||
|
{ "pointId": 1205210, "level": 1 }
|
||||||
|
],
|
||||||
"relicList": [
|
"relicList": [
|
||||||
{
|
{
|
||||||
"mainAffixId": 1,
|
"tid": 61091,
|
||||||
"tid": 61081,
|
|
||||||
"type": 1,
|
"type": 1,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 8, "cnt": 1 },
|
{ "affixId": 2, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 9, "cnt": 2, "step": 3 },
|
{ "affixId": 5, "cnt": 2, "step": 2 },
|
||||||
{ "affixId": 11, "cnt": 2, "step": 3 },
|
{ "affixId": 8, "cnt": 2, "step": 2 },
|
||||||
{ "affixId": 12, "cnt": 3, "step": 3 }
|
{ "affixId": 11, "cnt": 2, "step": 1 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 1,
|
"tid": 61092,
|
||||||
"tid": 61082,
|
|
||||||
"type": 2,
|
"type": 2,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 1, "cnt": 3, "step": 4 },
|
|
||||||
{ "affixId": 3, "cnt": 3, "step": 5 },
|
|
||||||
{ "affixId": 5, "cnt": 1, "step": 2 },
|
{ "affixId": 5, "cnt": 1, "step": 2 },
|
||||||
{ "affixId": 12, "cnt": 1, "step": 2 }
|
{ "affixId": 8, "cnt": 3, "step": 4 },
|
||||||
|
{ "affixId": 10, "cnt": 3, "step": 4 },
|
||||||
|
{ "affixId": 11, "cnt": 2, "step": 3 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 4,
|
"tid": 61093,
|
||||||
"tid": 61083,
|
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 3, "cnt": 2, "step": 1 },
|
{ "affixId": 3, "cnt": 1, "step": 2 },
|
||||||
{ "affixId": 4, "cnt": 3, "step": 2 },
|
{ "affixId": 7, "cnt": 3, "step": 4 },
|
||||||
{ "affixId": 5, "cnt": 1, "step": 2 },
|
{ "affixId": 8, "cnt": 2, "step": 4 },
|
||||||
{ "affixId": 10, "cnt": 2, "step": 2 }
|
{ "affixId": 10, "cnt": 3, "step": 2 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 2,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 2,
|
"tid": 61094,
|
||||||
"tid": 61084,
|
|
||||||
"type": 4,
|
"type": 4,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 3, "cnt": 4, "step": 6 },
|
{ "affixId": 2, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 4, "cnt": 1, "step": 2 },
|
{ "affixId": 3, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 7, "cnt": 1, "step": 1 },
|
{ "affixId": 5, "cnt": 3, "step": 3 },
|
||||||
{ "affixId": 10, "cnt": 2, "step": 1 }
|
|
||||||
],
|
|
||||||
"level": 15
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"mainAffixId": 3,
|
|
||||||
"tid": 63035,
|
|
||||||
"type": 5,
|
|
||||||
"exp": 830,
|
|
||||||
"subAffixList": [
|
|
||||||
{ "affixId": 5, "cnt": 2, "step": 3 },
|
|
||||||
{ "affixId": 8, "cnt": 1 },
|
|
||||||
{ "affixId": 9, "cnt": 2, "step": 1 },
|
|
||||||
{ "affixId": 10, "cnt": 1, "step": 2 }
|
{ "affixId": 10, "cnt": 1, "step": 2 }
|
||||||
],
|
],
|
||||||
"level": 11
|
"mainAffixId": 4,
|
||||||
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 2,
|
"tid": 63015,
|
||||||
"tid": 63036,
|
"type": 5,
|
||||||
|
"subAffixList": [
|
||||||
|
{ "affixId": 1, "cnt": 1, "step": 2 },
|
||||||
|
{ "affixId": 2, "cnt": 3, "step": 4 },
|
||||||
|
{ "affixId": 3, "cnt": 1 },
|
||||||
|
{ "affixId": 5, "cnt": 3, "step": 3 }
|
||||||
|
],
|
||||||
|
"mainAffixId": 7,
|
||||||
|
"level": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tid": 63016,
|
||||||
"type": 6,
|
"type": 6,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 2, "cnt": 3, "step": 5 },
|
{ "affixId": 2, "cnt": 3, "step": 4 },
|
||||||
{ "affixId": 5, "cnt": 1, "step": 2 },
|
{ "affixId": 4, "cnt": 2, "step": 3 },
|
||||||
{ "affixId": 8, "cnt": 2, "step": 2 },
|
{ "affixId": 6, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 12, "cnt": 2, "step": 4 }
|
{ "affixId": 9, "cnt": 1, "step": 2 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 4,
|
||||||
"level": 15
|
"level": 15
|
||||||
}
|
|
||||||
],
|
|
||||||
"equipment": { "tid": 22000, "promotion": 6, "rank": 5, "level": 80 },
|
|
||||||
"level": 80,
|
|
||||||
"avatarId": 1006,
|
|
||||||
"rank": 1,
|
|
||||||
"promotion": 6,
|
|
||||||
"pos": 1,
|
|
||||||
"skillTreeList": [
|
|
||||||
{ "pointId": 1006001, "level": 6 },
|
|
||||||
{ "pointId": 1006002, "level": 10 },
|
|
||||||
{ "pointId": 1006003, "level": 10 },
|
|
||||||
{ "pointId": 1006004, "level": 10 },
|
|
||||||
{ "pointId": 1006007, "level": 1 },
|
|
||||||
{ "pointId": 1006101, "level": 1 },
|
|
||||||
{ "pointId": 1006102, "level": 1 },
|
|
||||||
{ "pointId": 1006103, "level": 1 },
|
|
||||||
{ "pointId": 1006201, "level": 1 },
|
|
||||||
{ "pointId": 1006202, "level": 1 },
|
|
||||||
{ "pointId": 1006203, "level": 1 },
|
|
||||||
{ "pointId": 1006204, "level": 1 },
|
|
||||||
{ "pointId": 1006205, "level": 1 },
|
|
||||||
{ "pointId": 1006206, "level": 1 },
|
|
||||||
{ "pointId": 1006207, "level": 1 },
|
|
||||||
{ "pointId": 1006208, "level": 1 },
|
|
||||||
{ "pointId": 1006209, "level": 1 },
|
|
||||||
{ "pointId": 1006210, "level": 1 }
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"relicList": [
|
"tid": 61021,
|
||||||
{
|
|
||||||
"mainAffixId": 1,
|
|
||||||
"tid": 61081,
|
|
||||||
"type": 1,
|
"type": 1,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 4, "cnt": 2, "step": 3 },
|
{ "affixId": 5, "cnt": 4, "step": 4 },
|
||||||
{ "affixId": 8, "cnt": 2, "step": 2 },
|
{ "affixId": 7, "cnt": 1 },
|
||||||
{ "affixId": 9, "cnt": 3, "step": 4 },
|
{ "affixId": 8, "cnt": 2, "step": 3 },
|
||||||
{ "affixId": 12, "cnt": 1 }
|
{ "affixId": 9, "cnt": 2 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 1,
|
"tid": 61022,
|
||||||
"tid": 61082,
|
|
||||||
"type": 2,
|
"type": 2,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 6, "cnt": 1, "step": 2 },
|
{ "affixId": 1, "cnt": 1, "step": 1 },
|
||||||
{ "affixId": 8, "cnt": 2, "step": 2 },
|
{ "affixId": 3, "cnt": 2 },
|
||||||
{ "affixId": 9, "cnt": 2, "step": 2 },
|
{ "affixId": 9, "cnt": 4, "step": 3 },
|
||||||
{ "affixId": 10, "cnt": 3, "step": 1 }
|
{ "affixId": 12, "cnt": 2, "step": 2 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 5,
|
"tid": 61023,
|
||||||
"tid": 61083,
|
|
||||||
"type": 3,
|
"type": 3,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 3, "cnt": 2, "step": 4 },
|
{ "affixId": 1, "cnt": 2, "step": 2 },
|
||||||
{ "affixId": 5, "cnt": 3, "step": 1 },
|
{ "affixId": 2, "cnt": 1 },
|
||||||
{ "affixId": 6, "cnt": 1 },
|
{ "affixId": 3, "cnt": 4, "step": 2 },
|
||||||
{ "affixId": 8, "cnt": 2, "step": 3 }
|
{ "affixId": 5, "cnt": 1 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 5,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 2,
|
"tid": 61024,
|
||||||
"tid": 61084,
|
|
||||||
"type": 4,
|
"type": 4,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 1, "cnt": 2, "step": 3 },
|
{ "affixId": 1, "cnt": 1, "step": 2 },
|
||||||
{ "affixId": 7, "cnt": 3, "step": 3 },
|
{ "affixId": 8, "cnt": 4, "step": 4 },
|
||||||
{ "affixId": 11, "cnt": 2, "step": 3 },
|
{ "affixId": 10, "cnt": 1 },
|
||||||
{ "affixId": 12, "cnt": 1, "step": 2 }
|
{ "affixId": 11, "cnt": 2, "step": 1 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 2,
|
||||||
|
"level": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tid": 63095,
|
||||||
|
"type": 5,
|
||||||
|
"subAffixList": [
|
||||||
|
{ "affixId": 8, "cnt": 3, "step": 3 },
|
||||||
|
{ "affixId": 10, "cnt": 2, "step": 4 },
|
||||||
|
{ "affixId": 11, "cnt": 2, "step": 4 },
|
||||||
|
{ "affixId": 12, "cnt": 1, "step": 2 }
|
||||||
|
],
|
||||||
|
"mainAffixId": 10,
|
||||||
|
"level": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tid": 63096,
|
||||||
|
"type": 6,
|
||||||
|
"subAffixList": [
|
||||||
|
{ "affixId": 6, "cnt": 1, "step": 1 },
|
||||||
|
{ "affixId": 8, "cnt": 1, "step": 1 },
|
||||||
|
{ "affixId": 9, "cnt": 3, "step": 5 },
|
||||||
|
{ "affixId": 11, "cnt": 3, "step": 5 }
|
||||||
|
],
|
||||||
|
"mainAffixId": 4,
|
||||||
|
"level": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tid": 61131,
|
||||||
|
"type": 1,
|
||||||
|
"subAffixList": [
|
||||||
|
{ "affixId": 6, "cnt": 2, "step": 2 },
|
||||||
|
{ "affixId": 8, "cnt": 4, "step": 3 },
|
||||||
|
{ "affixId": 9, "cnt": 1, "step": 2 },
|
||||||
|
{ "affixId": 10, "cnt": 1 }
|
||||||
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
|
"level": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tid": 61132,
|
||||||
|
"type": 2,
|
||||||
|
"subAffixList": [
|
||||||
|
{ "affixId": 6, "cnt": 5, "step": 4 },
|
||||||
|
{ "affixId": 8, "cnt": 1, "step": 1 },
|
||||||
|
{ "affixId": 9, "cnt": 2, "step": 3 },
|
||||||
|
{ "affixId": 12, "cnt": 1 }
|
||||||
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
|
"level": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tid": 61133,
|
||||||
|
"type": 3,
|
||||||
|
"subAffixList": [
|
||||||
|
{ "affixId": 1, "cnt": 1, "step": 1 },
|
||||||
|
{ "affixId": 3, "cnt": 4, "step": 3 },
|
||||||
|
{ "affixId": 5, "cnt": 2, "step": 2 },
|
||||||
|
{ "affixId": 6, "cnt": 2, "step": 1 }
|
||||||
|
],
|
||||||
|
"mainAffixId": 5,
|
||||||
|
"level": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"tid": 61134,
|
||||||
|
"type": 4,
|
||||||
|
"subAffixList": [
|
||||||
|
{ "affixId": 1, "cnt": 2, "step": 2 },
|
||||||
|
{ "affixId": 5, "cnt": 3, "step": 3 },
|
||||||
|
{ "affixId": 9, "cnt": 2, "step": 2 },
|
||||||
|
{ "affixId": 12, "cnt": 2, "step": 1 }
|
||||||
|
],
|
||||||
|
"mainAffixId": 1,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 9,
|
|
||||||
"tid": 63065,
|
"tid": 63065,
|
||||||
"type": 5,
|
"type": 5,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 2, "cnt": 2, "step": 2 },
|
{ "affixId": 1, "cnt": 2, "step": 1 },
|
||||||
{ "affixId": 3, "cnt": 1 },
|
{ "affixId": 3, "cnt": 2, "step": 2 },
|
||||||
{ "affixId": 8, "cnt": 3, "step": 6 },
|
{ "affixId": 4, "cnt": 2, "step": 4 },
|
||||||
{ "affixId": 12, "cnt": 2, "step": 1 }
|
{ "affixId": 8, "cnt": 2, "step": 4 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 8,
|
||||||
"level": 15
|
"level": 15
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"mainAffixId": 4,
|
|
||||||
"tid": 63066,
|
"tid": 63066,
|
||||||
"type": 6,
|
"type": 6,
|
||||||
"subAffixList": [
|
"subAffixList": [
|
||||||
{ "affixId": 2, "cnt": 1, "step": 2 },
|
{ "affixId": 1, "cnt": 3, "step": 2 },
|
||||||
{ "affixId": 3, "cnt": 2, "step": 4 },
|
{ "affixId": 2, "cnt": 1 },
|
||||||
{ "affixId": 8, "cnt": 5, "step": 6 },
|
{ "affixId": 5, "cnt": 1 },
|
||||||
{ "affixId": 11, "cnt": 1, "step": 2 }
|
{ "affixId": 8, "cnt": 4, "step": 6 }
|
||||||
],
|
],
|
||||||
|
"mainAffixId": 3,
|
||||||
"level": 15
|
"level": 15
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"equipment": { "tid": 24001, "promotion": 6, "rank": 5, "level": 80 },
|
"avatarId": 1205,
|
||||||
"level": 80,
|
|
||||||
"avatarId": 1102,
|
|
||||||
"promotion": 6,
|
"promotion": 6,
|
||||||
"pos": 2,
|
"equipment": { "tid": 23009, "level": 80, "promotion": 6, "rank": 1 },
|
||||||
"skillTreeList": [
|
"pos": 2
|
||||||
{ "pointId": 1102001, "level": 6 },
|
|
||||||
{ "pointId": 1102002, "level": 10 },
|
|
||||||
{ "pointId": 1102003, "level": 10 },
|
|
||||||
{ "pointId": 1102004, "level": 10 },
|
|
||||||
{ "pointId": 1102007, "level": 1 },
|
|
||||||
{ "pointId": 1102101, "level": 1 },
|
|
||||||
{ "pointId": 1102102, "level": 1 },
|
|
||||||
{ "pointId": 1102103, "level": 1 },
|
|
||||||
{ "pointId": 1102201, "level": 1 },
|
|
||||||
{ "pointId": 1102202, "level": 1 },
|
|
||||||
{ "pointId": 1102203, "level": 1 },
|
|
||||||
{ "pointId": 1102204, "level": 1 },
|
|
||||||
{ "pointId": 1102205, "level": 1 },
|
|
||||||
{ "pointId": 1102206, "level": 1 },
|
|
||||||
{ "pointId": 1102207, "level": 1 },
|
|
||||||
{ "pointId": 1102208, "level": 1 },
|
|
||||||
{ "pointId": 1102209, "level": 1 },
|
|
||||||
{ "pointId": 1102210, "level": 1 }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"assistAvatarDetail": {
|
|
||||||
"relicList": [
|
|
||||||
{
|
|
||||||
"mainAffixId": 1,
|
|
||||||
"tid": 61021,
|
|
||||||
"type": 1,
|
|
||||||
"subAffixList": [
|
|
||||||
{ "affixId": 3, "cnt": 1 },
|
|
||||||
{ "affixId": 5, "cnt": 3, "step": 5 },
|
|
||||||
{ "affixId": 6, "cnt": 1, "step": 1 },
|
|
||||||
{ "affixId": 8, "cnt": 3, "step": 4 }
|
|
||||||
],
|
|
||||||
"level": 15
|
|
||||||
},
|
},
|
||||||
{
|
"platform": "IOS",
|
||||||
"mainAffixId": 1,
|
"headIcon": 200107
|
||||||
"tid": 61022,
|
|
||||||
"type": 2,
|
|
||||||
"subAffixList": [
|
|
||||||
{ "affixId": 3, "cnt": 2, "step": 4 },
|
|
||||||
{ "affixId": 5, "cnt": 2, "step": 4 },
|
|
||||||
{ "affixId": 8, "cnt": 3, "step": 3 },
|
|
||||||
{ "affixId": 10, "cnt": 1, "step": 1 }
|
|
||||||
],
|
|
||||||
"level": 15
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"mainAffixId": 5,
|
|
||||||
"tid": 61023,
|
|
||||||
"type": 3,
|
|
||||||
"subAffixList": [
|
|
||||||
{ "affixId": 1, "cnt": 1, "step": 1 },
|
|
||||||
{ "affixId": 5, "cnt": 3, "step": 4 },
|
|
||||||
{ "affixId": 6, "cnt": 2, "step": 1 },
|
|
||||||
{ "affixId": 8, "cnt": 2, "step": 2 }
|
|
||||||
],
|
|
||||||
"level": 15
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"mainAffixId": 2,
|
|
||||||
"tid": 61024,
|
|
||||||
"type": 4,
|
|
||||||
"subAffixList": [
|
|
||||||
{ "affixId": 1, "cnt": 1, "step": 2 },
|
|
||||||
{ "affixId": 4, "cnt": 3, "step": 3 },
|
|
||||||
{ "affixId": 8, "cnt": 3, "step": 4 },
|
|
||||||
{ "affixId": 12, "cnt": 1, "step": 2 }
|
|
||||||
],
|
|
||||||
"level": 15
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"mainAffixId": 10,
|
|
||||||
"tid": 63095,
|
|
||||||
"type": 5,
|
|
||||||
"subAffixList": [
|
|
||||||
{ "affixId": 3, "cnt": 2, "step": 2 },
|
|
||||||
{ "affixId": 9, "cnt": 2, "step": 3 },
|
|
||||||
{ "affixId": 10, "cnt": 2, "step": 1 },
|
|
||||||
{ "affixId": 12, "cnt": 2, "step": 2 }
|
|
||||||
],
|
|
||||||
"level": 15
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"mainAffixId": 4,
|
|
||||||
"tid": 63096,
|
|
||||||
"type": 6,
|
|
||||||
"subAffixList": [
|
|
||||||
{ "affixId": 2, "cnt": 2, "step": 1 },
|
|
||||||
{ "affixId": 8, "cnt": 2, "step": 1 },
|
|
||||||
{ "affixId": 9, "cnt": 1, "step": 1 },
|
|
||||||
{ "affixId": 12, "cnt": 3, "step": 3 }
|
|
||||||
],
|
|
||||||
"level": 15
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"equipment": { "tid": 23015, "promotion": 6, "rank": 1, "level": 80 },
|
|
||||||
"level": 80,
|
|
||||||
"avatarId": 1213,
|
|
||||||
"promotion": 6,
|
|
||||||
"skillTreeList": [
|
|
||||||
{ "pointId": 1213001, "level": 6 },
|
|
||||||
{ "pointId": 1213002, "level": 10 },
|
|
||||||
{ "pointId": 1213003, "level": 10 },
|
|
||||||
{ "pointId": 1213004, "level": 10 },
|
|
||||||
{ "pointId": 1213007, "level": 1 },
|
|
||||||
{ "pointId": 1213101, "level": 1 },
|
|
||||||
{ "pointId": 1213102, "level": 1 },
|
|
||||||
{ "pointId": 1213103, "level": 1 },
|
|
||||||
{ "pointId": 1213201, "level": 1 },
|
|
||||||
{ "pointId": 1213202, "level": 1 },
|
|
||||||
{ "pointId": 1213203, "level": 1 },
|
|
||||||
{ "pointId": 1213204, "level": 1 },
|
|
||||||
{ "pointId": 1213205, "level": 1 },
|
|
||||||
{ "pointId": 1213206, "level": 1 },
|
|
||||||
{ "pointId": 1213207, "level": 1 },
|
|
||||||
{ "pointId": 1213208, "level": 1 },
|
|
||||||
{ "pointId": 1213209, "level": 1 },
|
|
||||||
{ "pointId": 1213210, "level": 1 }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friendCount": 18,
|
|
||||||
"recordInfo": {
|
|
||||||
"achievementCount": 276,
|
|
||||||
"avatarCount": 24,
|
|
||||||
"maxRogueChallengeScore": 7,
|
|
||||||
"challengeInfo": { "noneScheduleMaxLevel": 16 },
|
|
||||||
"equipmentCount": 154
|
|
||||||
},
|
|
||||||
"uid": 100086290,
|
|
||||||
"platform": "PC",
|
|
||||||
"isDisplayAvatar": true
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user