This commit is contained in:
2026-04-20 02:00:30 +08:00
parent 02d5f80f4c
commit 34697d25c8
23 changed files with 207 additions and 16 deletions
+23
View File
@@ -52,6 +52,7 @@ class CharacterInfoMixin(CharacterBase):
equs = []
suits = []
oaths = []
oaths_skills = {}
# stones = []
for i in equInfos.equs:
if i.itemType == '武器' and i.itemDetailType not in self.武器选项:
@@ -61,11 +62,33 @@ class CharacterInfoMixin(CharacterBase):
suits.append(i.__dict__)
for i in equInfos.oaths:
oaths.append(i.__dict__)
for i in equInfos.oath_suits:
if i.suitId not in oaths_skills:
oaths_skills[i.suitId] = {'suitInfo': [], 'skills': []}
oaths_skills[i.suitId]['suitInfo'].append(
{
'name': i.name,
'rarity': i.rarity,
'SkillAttack': i.SkillAttack,
'Buffer': i.Buffer,
'Attack': i.Attack,
}
)
if len(oaths_skills[i.suitId]['skills']) == 0:
for skill in i.skills:
oaths_skills[i.suitId]['skills'].append(
{
'skillId': skill.skillId,
'name': skill.name,
'icon': skill.imageUrl,
}
)
# for i in equInfos.stones:
# stones.append(i.__dict__)
info['oaths'] = oaths
info['equips'] = equs
info['suits'] = suits
info['oaths_skills'] = oaths_skills
# info['stones'] = stones
key = '辅助' if self.buffer else '输出'
info['enchants'] = list(filter(lambda x: key in x['categorize'], equInfos.enchants))
+3 -3
View File
@@ -243,11 +243,11 @@ class Equipments:
skills = [x for x in db_skills_list if x.suitId == suit['suitId'] and x.key == suit['key']]
suit['level'] = i
skillAttaks = parse_to_number_list(suit['SkillAttack'], [0])
suit['SkillAttack'] = 0 if i - 1 >= len(skillAttaks) else skillAttaks[i - 1]
suit['SkillAttack'] = (0 if len(skillAttaks) == 0 else skillAttaks[0]) if i - 1 >= len(skillAttaks) else skillAttaks[i - 1]
attacks = parse_to_number_list(suit['Attack'], [0])
suit['Attack'] = 0 if i - 1 >= len(attacks) else attacks[i - 1]
suit['Attack'] = (0 if len(attacks) == 0 else attacks[0]) if i - 1 >= len(attacks) else attacks[i - 1]
buffers = parse_to_number_list(suit['Buffer'], [0])
suit['Buffer'] = 0 if i - 1 >= len(buffers) else buffers[i - 1]
suit['Buffer'] = (0 if len(buffers) == 0 else buffers[0]) if i - 1 >= len(buffers) else buffers[i - 1]
suit['skills'] = [OathSuitSkill(**{k: v for k, v in skill.__dict__.items() if not k.startswith('_')}) for skill in skills]
oath_suit = OathSuit(**suit)
self.oath_suits.append(oath_suit)