From a370d65ecbbf4c2f700ad2aaab2353faba21fcdf Mon Sep 17 00:00:00 2001 From: KimgiaiiWuyi <444835641@qq.com> Date: Sat, 11 Jun 2022 17:26:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A`=E5=BC=BA=E5=88=B6?= =?UTF-8?q?=E5=88=B7=E6=96=B0`=E9=80=A0=E6=88=90=E7=9A=84=E5=AE=89?= =?UTF-8?q?=E6=9F=8F=E6=95=B0=E6=8D=AE=E9=94=99=E8=AF=AF=EF=BC=9B=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=EF=BC=9AequipSets=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- enkaToData/enkaToData.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/enkaToData/enkaToData.py b/enkaToData/enkaToData.py index 3f3c6fd0..5e39cdad 100644 --- a/enkaToData/enkaToData.py +++ b/enkaToData/enkaToData.py @@ -118,7 +118,7 @@ async def enkaToData(uid: str, enka_data: Optional[dict] = None) -> dict: skill_temp['skillIcon'] = skillId2Name['Icon'][skill_temp['skillId']] char_data['avatarSkill'].append(skill_temp) - if char_data['avatarName'] == '神里绫华': + if char_data['avatarName'] in ['神里绫华', '安柏']: char_data['avatarSkill'][0], char_data['avatarSkill'][-1] = char_data['avatarSkill'][-1], char_data['avatarSkill'][0] char_data['avatarSkill'][2], char_data['avatarSkill'][-1] = char_data['avatarSkill'][-1], char_data['avatarSkill'][2] char_data['avatarEnName'] = char_data['avatarSkill'][1]['skillIcon'].split('_')[-2] @@ -212,6 +212,7 @@ async def enkaToData(uid: str, enka_data: Optional[dict] = None) -> dict: # 处理圣遗物 artifacts_info = [] artifacts_data = char['equipList'][:-1] + artifact_set_list = [] for artifact in artifacts_data: artifact_temp = {} artifact_temp['itemId'] = artifact['itemId'] @@ -219,6 +220,7 @@ async def enkaToData(uid: str, enka_data: Optional[dict] = None) -> dict: artifact_temp['icon'] = artifact['flat']['icon'] artifact_temp['aritifactName'] = icon2Name[artifact['flat']['icon']] artifact_temp['aritifactSetsName'] = artifact2attr[artifact_temp['aritifactName']] + artifact_set_list.append(artifact_temp['aritifactSetsName']) artifact_temp['aritifactSetPiece'] = artifactId2Piece[artifact_temp['icon'].split('_')[-1]][0] artifact_temp['aritifactPieceName'] = artifactId2Piece[artifact_temp['icon'].split('_')[-1]][1] @@ -232,7 +234,21 @@ async def enkaToData(uid: str, enka_data: Optional[dict] = None) -> dict: for sub in artifact_temp['reliquarySubstats']: sub['statName'] = propId2Name[sub['appendPropId']] artifacts_info.append(artifact_temp) + + equipSetList = set(artifact_set_list) + char_data['equipSets'] = {'type':'','set':''} char_data['equipList'] = artifacts_info + for equip in equipSetList: + if artifact_set_list.count(equip) >= 4: + char_data['equipSets']['type'] = '4' + char_data['equipSets']['set'] = equip + break + elif artifact_set_list.count(equip) == 1: + pass + elif artifact_set_list.count(equip) >= 2: + char_data['equipSets']['type'] += '2' + char_data['equipSets']['set'] += equip + with open(path / '{}.json'.format(avatarName),'w', encoding='UTF-8') as file: json.dump(char_data, file, ensure_ascii=False) char_name_list_str = ','.join(char_name_list)