feat:优化职业技能关联实现

This commit is contained in:
2026-10-13 17:10:08 +08:00
parent 7dc5f4cde5
commit 927866d366
78 changed files with 5242 additions and 1011 deletions
+36 -6
View File
@@ -1,6 +1,12 @@
# b9cb48777665de22c006fabaf9a560b3
from core.basic.skill import PassiveSkill, ActiveSkill, get_data
from core.basic.character import Character
from core.basic.skill_effect_types import (
LevelTable,
Percent,
SkillAttribute,
SkillEffect,
)
prefix = "archer/vigilante/cn/skillDetail"
@@ -192,7 +198,11 @@ class Skill5(PassiveSkill):
# 跳跃攻击力变化率 : {value2}%
data2 = get_data(f'{prefix}/{uuid}', 2)
associate = [{'type': '*skillDamage', 'data': [i - 100 if i > 0 else 0 for i in data0], 'skills': ['妖爪']}]
# 迁移前实现(保留对照):
# associate = [{'type': '*skillDamage', 'data': [i - 100 if i > 0 else 0 for i in data0], 'skills': ['妖爪']}]
associate = [
SkillEffect(attribute=SkillAttribute.DAMAGE, value=1 + Percent(LevelTable([i - 100 if i > 0 else 0 for i in data0])), skills=['妖爪']),
]
# 受身蹲伏
# archer/vigilante/ce26c6b69d02a440a81b552bec94f03b
@@ -653,7 +663,11 @@ class Skill19(PassiveSkill):
# 妖兽形物理/魔法防御力增加 : {value2}
data2 = get_data(f'{prefix}/{uuid}', 2)
associate = [{'data': data0, 'type': '*skillDamage'}]
# 迁移前实现(保留对照):
# associate = [{'data': data0, 'type': '*skillDamage'}]
associate = [
SkillEffect(attribute=SkillAttribute.DAMAGE, value=1 + Percent(LevelTable(data0))),
]
# 暴击
# archer/vigilante/fc1262c19f3d0477ee8eda47b8db8696
@@ -1015,7 +1029,11 @@ class Skill28(PassiveSkill):
# 命中率增加 : {value2}%
data2 = get_data(f'{prefix}/{uuid}', 2)
associate = [{'data': data0, 'type': '*skillDamage'}]
# 迁移前实现(保留对照):
# associate = [{'data': data0, 'type': '*skillDamage'}]
associate = [
SkillEffect(attribute=SkillAttribute.DAMAGE, value=1 + Percent(LevelTable(data0))),
]
# 狂妖风暴
# archer/vigilante/8e358ecf99ac9df31a6132aeafe378a9
@@ -1191,7 +1209,11 @@ class Skill31(PassiveSkill):
# [鲜活宴场]生命值恢复量增加率 : {value2}%
data2 = get_data(f'{prefix}/{uuid}', 2)
associate = [{'data': data0, 'type': '*skillDamage'}]
# 迁移前实现(保留对照):
# associate = [{'data': data0, 'type': '*skillDamage'}]
associate = [
SkillEffect(attribute=SkillAttribute.DAMAGE, value=1 + Percent(LevelTable(data0))),
]
# 鲜活宴场
# archer/vigilante/0e409ac3e1c1f3976b3ef2bfe4c13069
@@ -1380,7 +1402,11 @@ class Skill35(PassiveSkill):
# 基本攻击力和转职技能攻击力增加率 : {value0}%
data0 = get_data(f'{prefix}/{uuid}', 0)
associate = [{'data': data0, 'type': '*skillDamage'}]
# 迁移前实现(保留对照):
# associate = [{'data': data0, 'type': '*skillDamage'}]
associate = [
SkillEffect(attribute=SkillAttribute.DAMAGE, value=1 + Percent(LevelTable(data0))),
]
# 卸骨
# archer/vigilante/527cdc3ecca985e18ef819d456532b26
@@ -1581,7 +1607,11 @@ class Skill39(PassiveSkill):
# 基本攻击力和转职技能攻击力增加率 : {value0}%
data0 = get_data(f'{prefix}/{uuid}', 0)
associate = [{'data': data0, 'type': '*skillDamage'}]
# 迁移前实现(保留对照):
# associate = [{'data': data0, 'type': '*skillDamage'}]
associate = [
SkillEffect(attribute=SkillAttribute.DAMAGE, value=1 + Percent(LevelTable(data0))),
]
# 神妖之爪
# archer/vigilante/dd32a9825ec1af42a91f2223be6658e5