feat:修正职业基础系数

This commit is contained in:
2026-06-28 21:59:12 +08:00
parent 879d765d51
commit e3660034ea
4 changed files with 182 additions and 1212 deletions
+2 -2
View File
@@ -4,7 +4,7 @@ from typing import Any, Literal
from core.abstract.character import CharacterProperty
from core.basic.skill import Skill
from core.basic.equipment import EquEffect, OathSuit, OathSuitSkill, Suit
from ..formula import 获取基础属性, 获取唤醒属性
from ..formula import get_base_attributes, 获取唤醒属性
from ..roleinfo import CharacterEmblemInfo, CharacterEquipInfo, get_key_by_value, CharacterOathInfo
from .jade import Jade
@@ -180,7 +180,7 @@ class CharacterBase(CharacterProperty):
def SetBaseStatus(self) -> None:
"""设角色基础属性"""
temp = 获取基础属性(self.角色, self.职业)
temp = get_base_attributes(self.role, self.name)
唤醒 = 获取唤醒属性()
for index, i in enumerate([get_key_by_value(i) for i in ['力量', '体力', '智力', '精神']]):
setattr(self, i, getattr(self, i) + temp[index] + 唤醒)
+4 -4
View File
@@ -1,6 +1,6 @@
import inspect
from ..formula import 获取基础属性
from ..formula import get_base_attributes
from core.basic.property import CharacterInfo
from .base import CharacterBase
@@ -9,8 +9,8 @@ def _skill_error_context(char: CharacterBase, skill, mode: str) -> str:
skill_class = skill.__class__
skill_file = inspect.getsourcefile(skill_class) or inspect.getfile(skill_class)
return (
f'角色={getattr(char, "角色", "")}, '
f'职业={getattr(char, "职业", "")}, '
f'角色={getattr(char, "name", "")}, '
f'职业={getattr(char, "role", "")}, '
f'技能={getattr(skill, "name", "")}, '
f'技能类={skill_class.__name__}, '
f'mode={mode}, '
@@ -36,7 +36,7 @@ class CalcCarryMixin(CharacterBase):
attrs.extend(['INT', 'AtkI', 'PAtkI'])
# 力智系数
value0_1 = getattr(self, attrs[0])
value0_2 = 获取基础属性(self.角色, self.职业)[0] if attrs[0] == 'STR' else 获取基础属性(self.角色, self.职业)[1]
value0_2 = get_base_attributes(self.role, self.name)[0] if attrs[0] == 'STR' else get_base_attributes(self.role, self.name)[1]
# 系统奶及奶系增幅
value = value0_1 + ((value0_1 - value0_2) * 3.08 + 2886) * (1 if DSB else 0) + (170000 + 300000) * (1 if BUFF else 0)
ratio_0: float = value / 250 + 1