new:添加黑暗武士
This commit is contained in:
@@ -307,6 +307,8 @@ class CharacterBase(CharacterProperty):
|
|||||||
self.Buffer += 增益量 + kget('Buffer', 0)
|
self.Buffer += 增益量 + kget('Buffer', 0)
|
||||||
self.BufferP += 增益量P + kget('BufferP', 0)
|
self.BufferP += 增益量P + kget('BufferP', 0)
|
||||||
self.EquEffectRatio += kget('EquEffectRatio', 0.0)
|
self.EquEffectRatio += kget('EquEffectRatio', 0.0)
|
||||||
|
self.PINT *= kget('PINT', 1.0)
|
||||||
|
self.PSTR *= kget('PSTR', 1.0)
|
||||||
|
|
||||||
def AddElementDB(self, element: str, value: float, type: int = 0) -> None:
|
def AddElementDB(self, element: str, value: float, type: int = 0) -> None:
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ class CalcCarryMixin(CharacterBase):
|
|||||||
attrs.extend(['Attack', 'AttackP', 'SkillAttack', 'EquEffectRatio', 'ElementDB'])
|
attrs.extend(['Attack', 'AttackP', 'SkillAttack', 'EquEffectRatio', 'ElementDB'])
|
||||||
for attr in attrs:
|
for attr in attrs:
|
||||||
temp = getattr(CharacterInfo, attr)
|
temp = getattr(CharacterInfo, attr)
|
||||||
if attr.startswith('Atk'):
|
if attr.startswith('Atk') or attr in ['INT', 'STR']:
|
||||||
info.append({'name': temp.name, 'value': temp.value(getattr(self, attr) * getattr(self, f'P{attr}'))})
|
info.append({'name': temp.name, 'value': temp.value(getattr(self, attr) * getattr(self, f'P{attr}'))})
|
||||||
else:
|
else:
|
||||||
value = getattr(self, attr)
|
value = getattr(self, attr)
|
||||||
|
|||||||
@@ -390,6 +390,8 @@ class ActiveSkill(Skill):
|
|||||||
return 1 - cdr
|
return 1 - cdr
|
||||||
|
|
||||||
def getSkillCD(self, mode=None):
|
def getSkillCD(self, mode=None):
|
||||||
|
if not isinstance(self.cd, (int, float)) or not self.cd:
|
||||||
|
return '-'
|
||||||
return max(0, round(max(self.cd * 0.3, self.cd * self.cdReduce / self.cdRecover * self.getWeaponCDRatio() * self.getQuickCDRatio()) * self.cdRatio - self.cdCut / self.cdRecover , 2))
|
return max(0, round(max(self.cd * 0.3, self.cd * self.cdReduce / self.cdRecover * self.getWeaponCDRatio() * self.getQuickCDRatio()) * self.cdRatio - self.cdCut / self.cdRecover , 2))
|
||||||
|
|
||||||
def vp_1(self):
|
def vp_1(self):
|
||||||
|
|||||||
@@ -2143,7 +2143,6 @@ class Skill55(DarkKnightSkill):
|
|||||||
# 次元斩击攻击力 : {value0}%
|
# 次元斩击攻击力 : {value0}%
|
||||||
data0 = get_data(f'{prefix}/{uuid}', 0)
|
data0 = get_data(f'{prefix}/{uuid}', 0)
|
||||||
hit0 = 1
|
hit0 = 1
|
||||||
skillDamage = 2
|
|
||||||
|
|
||||||
class classChange(Character):
|
class classChange(Character):
|
||||||
def __init__(self, equVersion):
|
def __init__(self, equVersion):
|
||||||
@@ -2223,10 +2222,16 @@ class classChange(Character):
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
for comboCol in range(6):
|
for comboCol in range(6):
|
||||||
skills = list(filter(lambda x: x['combo'] == comboCol, skillInfos))
|
comboSkills = list(filter(lambda x: x['combo'] == comboCol, skillInfos))
|
||||||
|
skills = [x for i, x in enumerate(comboSkills) if x['name'] not in [y['name'] for y in comboSkills[:i]]]
|
||||||
|
if len(skills) > 1:
|
||||||
|
# 如果skills中name的名称相同,取第一个
|
||||||
cdList = [x['cd'] for x in skills]
|
cdList = [x['cd'] for x in skills]
|
||||||
cdRecoverList = [x['cdRecover'] for x in skills]
|
cdRecoverList = [x['cdRecover'] for x in skills]
|
||||||
total = sum(cdList)
|
total = sum(cdList)
|
||||||
totalRecover = sum(cdRecoverList)
|
totalRecover = sum(cdRecoverList)
|
||||||
|
for skill in comboSkills:
|
||||||
|
# 总面板显示CD/(技能数量+总恢复加速)*1.2
|
||||||
|
skill['cd'] = total / totalRecover * 1.2
|
||||||
return skillInfos
|
return skillInfos
|
||||||
|
|
||||||
@@ -15311,6 +15311,24 @@ def equ_3016(char: CharacterProperty,effectDamage: list[float] = []):
|
|||||||
char.SetStatus(SpeedM=0.03, SpeedA=0.03, SpeedR=0.03, AttackP=0.22)
|
char.SetStatus(SpeedM=0.03, SpeedA=0.03, SpeedR=0.03, AttackP=0.22)
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@register
|
||||||
|
def equ_3019(char: CharacterProperty,effectDamage: list[float] = []):
|
||||||
|
"""
|
||||||
|
DCALC_REMOVE: equ_3019 -月华遮蔽者
|
||||||
|
三觉被动Lv +1
|
||||||
|
所有属性强化 +25
|
||||||
|
攻击强化增幅 +30%
|
||||||
|
暴击率 +12%
|
||||||
|
所有速度 +3%
|
||||||
|
rarity: 稀有
|
||||||
|
"""
|
||||||
|
char.AddSkillLv(15, 35, 1)
|
||||||
|
char.AddElementDB('火', 15)
|
||||||
|
char.AddElementDB('冰', 15)
|
||||||
|
char.AddElementDB('光', 15)
|
||||||
|
char.AddElementDB('暗', 15)
|
||||||
|
char.SetStatus(SpeedM=0.03, SpeedA=0.03, SpeedR=0.03, AttackP=0.2,BufferP=0.01)
|
||||||
|
pass
|
||||||
|
|
||||||
# endregion
|
# endregion
|
||||||
# region 白嫖
|
# region 白嫖
|
||||||
|
|||||||
Binary file not shown.
@@ -295,11 +295,9 @@ export default defineComponent({
|
|||||||
<div onClick={() => (activeSkill.value = -1)}>
|
<div onClick={() => (activeSkill.value = -1)}>
|
||||||
{skillGrid.value.rows.map((row) => (
|
{skillGrid.value.rows.map((row) => (
|
||||||
<div class="skill-tree-line flex items-center gap-8px px-5px" key={row}>
|
<div class="skill-tree-line flex items-center gap-8px px-5px" key={row}>
|
||||||
{showRowPrefix.value && (
|
|
||||||
<div class="w-34px h-34px flex shrink-0 items-center justify-center text-white">
|
<div class="w-34px h-34px flex shrink-0 items-center justify-center text-white">
|
||||||
{getRowPrefix(row)}
|
{showRowPrefix.value ? getRowPrefix(row) : ''}
|
||||||
</div>
|
</div>
|
||||||
)}
|
|
||||||
{skillGrid.value.columns.map((column) => {
|
{skillGrid.value.columns.map((column) => {
|
||||||
const skill = skillGrid.value.grid.get(`${row}:${column}`)
|
const skill = skillGrid.value.grid.get(`${row}:${column}`)
|
||||||
return skill ? (
|
return skill ? (
|
||||||
|
|||||||
@@ -53,7 +53,7 @@
|
|||||||
<div v-if="showDarkKnightSkillSetting" class="dark-knight-side-column">
|
<div v-if="showDarkKnightSkillSetting" class="dark-knight-side-column">
|
||||||
<div class="skill-detail-region">
|
<div class="skill-detail-region">
|
||||||
<button
|
<button
|
||||||
v-if="false && curCurrentSkill.skillId && curCurrentSkill.level > 0 && !showSkillDetail"
|
v-if="curCurrentSkill.skillId && curCurrentSkill.level > 0 && !showSkillDetail"
|
||||||
type="button"
|
type="button"
|
||||||
class="side-panel-trigger"
|
class="side-panel-trigger"
|
||||||
@click="showSkillDetail = true"
|
@click="showSkillDetail = true"
|
||||||
|
|||||||
Reference in New Issue
Block a user