mirror of
https://github.com/PaiGramTeam/MibooGram.git
synced 2025-02-07 18:49:05 +00:00
🐛 修复因命座加成导致的技能等级错误
This commit is contained in:
parent
87c7253e3a
commit
ce57672274
@ -7,8 +7,11 @@ from modules.playercards.fight_prop import FightProp, FightPropScore
|
||||
|
||||
_project_path = os.path.dirname(__file__)
|
||||
_fight_prop_rule_file = os.path.join(_project_path, "metadata", "FightPropRule.json")
|
||||
_fix_skills_level_file = os.path.join(_project_path, "metadata", "avatarName2SkillAdd_mapping.json")
|
||||
with open(_fight_prop_rule_file, "r", encoding="utf-8") as f:
|
||||
fight_prop_rule_data: dict = json.load(f)
|
||||
with open(_fix_skills_level_file, "r", encoding="utf-8") as f:
|
||||
fix_skills_level_data: dict = json.load(f)
|
||||
|
||||
|
||||
class ArtifactStatsTheory:
|
||||
|
218
modules/playercards/metadata/avatarName2SkillAdd_mapping.json
Normal file
218
modules/playercards/metadata/avatarName2SkillAdd_mapping.json
Normal file
@ -0,0 +1,218 @@
|
||||
{
|
||||
"旅行者": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"胡桃": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"托马": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"宵宫": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"烟绯": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"可莉": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"迪卢克": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"辛焱": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"安柏": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"香菱": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"班尼特": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"珊瑚宫心海": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"达达利亚": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"行秋": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"莫娜": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"芭芭拉": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"申鹤": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"神里绫华": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"优菈": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"甘雨": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"凯亚": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"重云": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"七七": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"迪奥娜": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"罗莎莉亚": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"埃洛伊": [
|
||||
null,
|
||||
null
|
||||
],
|
||||
"八重神子": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"雷电将军": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"九条裟罗": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"刻晴": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"雷泽": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"菲谢尔": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"丽莎": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"北斗": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"早柚": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"枫原万叶": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"魈": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"温迪": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"琴": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"砂糖": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"荒泷一斗": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"五郎": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"阿贝多": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"钟离": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"诺艾尔": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"凝光": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"云堇": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"神里绫人": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"夜兰": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"久岐忍": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"鹿野院平藏": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"柯莱": [
|
||||
"E",
|
||||
"Q"
|
||||
],
|
||||
"提纳里": [
|
||||
"Q",
|
||||
"E"
|
||||
],
|
||||
"多莉": [
|
||||
"E",
|
||||
"Q"
|
||||
]
|
||||
}
|
@ -21,7 +21,7 @@ from core.template import TemplateService
|
||||
from core.user import UserService
|
||||
from core.user.error import UserNotFoundError
|
||||
from metadata.shortname import roleToName
|
||||
from modules.playercards.helpers import ArtifactStatsTheory
|
||||
from modules.playercards.helpers import ArtifactStatsTheory, fix_skills_level_data
|
||||
from utils.bot import get_all_args
|
||||
from utils.decorators.error import error_callable
|
||||
from utils.decorators.restricts import restricts
|
||||
@ -231,6 +231,8 @@ class RenderTemplate:
|
||||
if artifact_total_score / 5 >= r[1]:
|
||||
artifact_total_score_label = r[0]
|
||||
|
||||
self.fix_skills_level()
|
||||
|
||||
data = {
|
||||
"uid": self.uid,
|
||||
"character": self.character,
|
||||
@ -311,8 +313,7 @@ class RenderTemplate:
|
||||
|
||||
if max_stat.id != 0:
|
||||
for item in items:
|
||||
if "元素伤害加成" in item[0]:
|
||||
if max_stat.to_percentage_symbol() != item[1]:
|
||||
if "元素伤害加成" in item[0] and max_stat.to_percentage_symbol() != item[1]:
|
||||
items.remove(item)
|
||||
|
||||
return items
|
||||
@ -359,3 +360,16 @@ class RenderTemplate:
|
||||
for e in self.character.equipments
|
||||
if e.type == EquipmentsType.ARTIFACT
|
||||
]
|
||||
|
||||
def fix_skills_level(self) -> None:
|
||||
"""修复因命座加成导致的技能等级错误"""
|
||||
data = fix_skills_level_data.get(self.character.name)
|
||||
if not data:
|
||||
return
|
||||
unlocked_constellations = len([i for i in self.character.constellations if i.unlocked])
|
||||
for i in range(2):
|
||||
if unlocked_constellations >= 3 + i * 2:
|
||||
if data[i] == "E" and len(self.character.skills) >= 2:
|
||||
self.character.skills[1].level += 3
|
||||
elif data[i] == "Q" and len(self.character.skills) >= 3:
|
||||
self.character.skills[2].level += 3
|
||||
|
Loading…
Reference in New Issue
Block a user