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

This commit was merged in pull request #11.
This commit is contained in:
2026-10-13 18:19:20 +08:00
parent 927866d366
commit 66ff3ff63b
175 changed files with 14299 additions and 440 deletions
+46 -1
View File
@@ -9,6 +9,7 @@ from core.basic.skill_effect_types import (
SkillAttribute,
SkillEffect,
)
from core.character.refs.extra.creator import CreatorSkillRef as Ref
prefix = "extra/creator/cn/skillDetail"
@@ -33,6 +34,7 @@ class Skill0(CreatorActiveSkill):
"""
name = '烈火燎原'
ref = Ref.FIREWALL
cellPos = (0,2)
learnLv = 1
masterLv = 60
@@ -67,6 +69,7 @@ class Skill1(CreatorActiveSkill):
"""
name = '炽炎星陨'
ref = Ref.FIREMETEO
cellPos = (1,2)
learnLv = 1
masterLv = 60
@@ -100,6 +103,7 @@ class Skill2(ActiveSkill):
"""
name = '后跳'
ref = Ref.BACKSTEP
cellPos = (3,0)
learnLv = 1
masterLv = 1
@@ -123,6 +127,7 @@ class Skill3(PassiveSkill):
"""
name = '基础精通'
ref = Ref.BASICATTACKUP
cellPos = (1,0)
learnLv = 1
masterLv = 115
@@ -151,6 +156,7 @@ class Skill4(ActiveSkill):
"""
name = '受身蹲伏'
ref = Ref.QUICKSTANDING
cellPos = (2,0)
learnLv = 1
masterLv = 1
@@ -182,6 +188,7 @@ class Skill5(ActiveSkill):
"""
name = '烈炎'
ref = Ref.CREATORFLAME
cellPos = (0,1)
learnLv = 1
masterLv = 1
@@ -207,6 +214,7 @@ class Skill6(PassiveSkill):
"""
name = '防具精通'
ref = Ref.ARMORMASTERYETC
cellPos = (10,2)
learnLv = 1
masterLv = 1
@@ -230,6 +238,7 @@ class Skill7(CreatorActiveSkill):
"""
name = '冰霜之球'
ref = Ref.ICEROCK
cellPos = (2,2)
learnLv = 10
masterLv = 60
@@ -266,6 +275,7 @@ class Skill8(CreatorActiveSkill):
"""
name = '冰天震地'
ref = Ref.ICEPLATE
cellPos = (3,2)
learnLv = 10
masterLv = 60
@@ -302,6 +312,7 @@ class Skill9(PassiveSkill):
"""
name = '强化 - 后跳'
ref = Ref.ESCAPEBACKSTEP
cellPos = (4,0)
learnLv = 10
masterLv = 1
@@ -330,6 +341,7 @@ class Skill10(ActiveSkill):
"""
name = '跃翔'
ref = Ref.JUMPPOWERUP
cellPos = (6,0)
learnLv = 10
masterLv = 1
@@ -357,6 +369,7 @@ class Skill11(ActiveSkill):
"""
name = '寒冰'
ref = Ref.CREATORICE
cellPos = (2,1)
learnLv = 10
masterLv = 1
@@ -384,6 +397,7 @@ class Skill12(PassiveSkill):
"""
name = '时空之手'
ref = Ref.MGRAB
cellPos = (5,2)
learnLv = 20
masterLv = 1
@@ -414,6 +428,7 @@ class Skill13(PassiveSkill):
"""
name = '树之屏障'
ref = Ref.WOODFENCE
cellPos = (4,2)
learnLv = 20
masterLv = 1
@@ -450,6 +465,7 @@ class Skill14(PassiveSkill):
"""
name = '暴击'
ref = Ref.PHYSICALCRITICALHITUP
cellPos = (5,0)
learnLv = 20
masterLv = 10
@@ -474,6 +490,7 @@ class Skill15(ActiveSkill):
"""
name = '控制'
ref = Ref.CREATORDISTURB
cellPos = (4,1)
learnLv = 20
masterLv = 1
@@ -499,6 +516,7 @@ class Skill16(PassiveSkill):
"""
name = '幻想之境'
ref = Ref.IMAGINATION
cellPos = (1,5)
learnLv = 20
masterLv = 10
@@ -534,6 +552,7 @@ class Skill17(PassiveSkill):
"""
name = '具象强化'
ref = Ref.CREATORFORCE
cellPos = (2,5)
learnLv = 25
masterLv = 10
@@ -564,6 +583,7 @@ class Skill18(CreatorActiveSkill):
"""
name = '烈焰飓风'
ref = Ref.FIREHURRICANE
cellPos = (6,2)
learnLv = 30
masterLv = 60
@@ -622,6 +642,7 @@ class Skill19(CreatorActiveSkill):
"""
name = '极冰护盾'
ref = Ref.ICESHIELD
cellPos = (7,2)
learnLv = 30
masterLv = 60
@@ -685,6 +706,7 @@ class Skill20(ActiveSkill):
"""
name = '守护'
ref = Ref.CREATORGUARDIAN
cellPos = (6,1)
learnLv = 30
masterLv = 1
@@ -710,6 +732,7 @@ class Skill21(ActiveSkill):
"""
name = '时空增幅'
ref = Ref.AMPLIFICATION
cellPos = (0,5)
learnLv = 30
masterLv = 10
@@ -737,6 +760,7 @@ class Skill22(CreatorActiveSkill):
"""
name = '超能旋风波'
ref = Ref.WINDPRESS
cellPos = (8,2)
learnLv = 40
masterLv = 60
@@ -794,6 +818,7 @@ class Skill23(CreatorActiveSkill):
"""
name = '风暴漩涡'
ref = Ref.WINDSTORM
cellPos = (9,2)
learnLv = 40
masterLv = 60
@@ -852,6 +877,7 @@ class Skill24(ActiveSkill):
"""
name = '风暴'
ref = Ref.CREATORWIND
cellPos = (8,1)
learnLv = 40
masterLv = 1
@@ -877,6 +903,7 @@ class Skill25(PassiveSkill):
"""
name = '洞悉'
ref = Ref.UNDERSTANDING
cellPos = (3,5)
learnLv = 48
masterLv = 40
@@ -909,6 +936,7 @@ class Skill26(PassiveSkill):
"""
name = '自我觉醒'
ref = Ref.CONSCIOUSNESS
cellPos = (10,4)
learnLv = 50
masterLv = 1
@@ -947,6 +975,7 @@ class Skill27(ActiveSkill):
"""
name = '终末狂想'
ref = Ref.EXTINCTION
cellPos = (0,3)
learnLv = 50
masterLv = 1
@@ -974,6 +1003,7 @@ class Skill28(CreatorActiveSkill):
"""
name = '末日虫洞'
ref = Ref.WORMHOLE
cellPos = (0,4)
learnLv = 50
masterLv = 40
@@ -1036,6 +1066,7 @@ class Skill29(ActiveSkill):
"""
name = '构造'
ref = Ref.CREATORREVIVAL
cellPos = (1,3)
learnLv = 60
masterLv = 1
@@ -1064,6 +1095,7 @@ class Skill30(CreatorActiveSkill):
"""
name = '冰雪降临'
ref = Ref.ICEAGE
cellPos = (1,4)
learnLv = 60
masterLv = 40
@@ -1136,6 +1168,7 @@ class Skill31(ActiveSkill):
"""
name = '同调'
ref = Ref.TUNING
cellPos = (3,3)
learnLv = 70
masterLv = 1
@@ -1163,6 +1196,7 @@ class Skill32(CreatorActiveSkill):
"""
name = '时空链接'
ref = Ref.LINK
cellPos = (3,4)
learnLv = 70
masterLv = 40
@@ -1228,6 +1262,7 @@ class Skill33(PassiveSkill):
"""
name = '创世之力'
ref = Ref.THECREATION
cellPos = (4,5)
learnLv = 75
masterLv = 40
@@ -1260,6 +1295,7 @@ class Skill34(ActiveSkill):
"""
name = '虚空'
ref = Ref.CREATORDISTORTION
cellPos = (4,3)
learnLv = 80
masterLv = 1
@@ -1285,6 +1321,7 @@ class Skill35(CreatorActiveSkill):
"""
name = '时空禁制'
ref = Ref.TIMEFORWARD
cellPos = (4,4)
learnLv = 80
masterLv = 40
@@ -1352,6 +1389,7 @@ class Skill36(ActiveSkill):
"""
name = '缔造'
ref = Ref.CREATORCREATE
cellPos = (6,3)
learnLv = 85
masterLv = 1
@@ -1377,6 +1415,7 @@ class Skill37(PassiveSkill):
"""
name = '创世'
ref = Ref.CREATESPACE
cellPos = (5,4)
learnLv = 85
masterLv = 40
@@ -1439,6 +1478,7 @@ class Skill38(CreatorActiveSkill):
"""
name = '生命之树'
ref = Ref.THETREEOFSEFIROT
cellPos = (6,4)
learnLv = 85
masterLv = 1
@@ -1467,7 +1507,7 @@ class Skill38(CreatorActiveSkill):
mode = ['秒炸', '常规']
level_source = '创世'
level_source = Ref.CREATESPACE
def setMode(self, mode):
if mode == '秒炸':
@@ -1494,6 +1534,7 @@ class Skill39(PassiveSkill):
"""
name = '天工开物'
ref = Ref.ARTEFACTOFCREATION
cellPos = (6,5)
learnLv = 95
masterLv = 40
@@ -1528,6 +1569,7 @@ class Skill40(ActiveSkill):
"""
name = '创生'
ref = Ref.CREATORBIRTH
cellPos = (7,3)
learnLv = 95
masterLv = 1
@@ -1555,6 +1597,7 @@ class Skill41(CreatorActiveSkill):
"""
name = '创世之光'
ref = Ref.ORIGINALLIGHT
cellPos = (7,5)
learnLv = 95
masterLv = 40
@@ -1615,6 +1658,7 @@ class Skill43(ActiveSkill):
"""
name = '命运'
ref = Ref.CREATORDESTINY
cellPos = (8,3)
learnLv = 100
masterLv = 1
@@ -1643,6 +1687,7 @@ class Skill44(CreatorActiveSkill):
"""
name = '时之终末 : 归烬'
ref = Ref.CATASTROPHE
cellPos = (8,5)
learnLv = 100
masterLv = 40
+58 -2
View File
@@ -17,6 +17,7 @@ from core.basic.skill_effect_types import (
SkillEffect,
WeaponCategoryContains,
)
from core.character.refs.extra.dark_knight import DarkKnightSkillRef as Ref
prefix = "extra/dark_knight/cn/skillDetail"
@@ -63,6 +64,7 @@ class Skill0(DarkKnightSkill):
"""
name = '暗影斩'
ref = Ref.DARKSLASH
cellPos = (3,1)
learnLv = 1
masterLv = 60
@@ -89,6 +91,7 @@ class Skill1(DarkKnightSkill):
"""
name = '滑斩'
ref = Ref.BRIEFCUT
cellPos = (2,2)
learnLv = 1
masterLv = 60
@@ -115,6 +118,7 @@ class Skill2(DarkKnightSkill):
"""
name = '挑击'
ref = Ref.UPPER
cellPos = (2,1)
learnLv = 1
masterLv = 10
@@ -144,6 +148,7 @@ class Skill3(DarkKnightSkill):
"""
name = '跃斩'
ref = Ref.BOUNCEBLOW
cellPos = (3,2)
learnLv = 1
masterLv = 60
@@ -181,6 +186,7 @@ class Skill4(ActiveSkill):
"""
name = '后跳'
ref = Ref.BACKSTEP
cellPos = (3,0)
learnLv = 1
masterLv = 1
@@ -205,6 +211,7 @@ class Skill5(PassiveSkill):
"""
name = '基础精通'
ref = Ref.BASICATTACKUP
cellPos = (1,0)
learnLv = 1
masterLv = 115
@@ -227,7 +234,7 @@ class Skill5(PassiveSkill):
# 迁移前实现(保留对照):
# 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=['挑击']),
SkillEffect(attribute=SkillAttribute.DAMAGE, value=1 + Percent(LevelTable([i - 100 if i > 0 else 0 for i in data0])), skills=[Ref.UPPER]),
]
# 受身蹲伏
@@ -240,6 +247,7 @@ class Skill6(ActiveSkill):
"""
name = '受身蹲伏'
ref = Ref.QUICKSTANDING
cellPos = (2,0)
learnLv = 1
masterLv = 1
@@ -272,6 +280,7 @@ class Skill7(PassiveSkill):
"""
name = '攻击类型转换'
ref = Ref.CONVERSION
cellPos = (9,1)
learnLv = 1
masterLv = 1
@@ -295,6 +304,7 @@ class Skill8(PassiveSkill):
"""
name = '防具精通'
ref = Ref.ARMORMASTERYETC
cellPos = (8,1)
learnLv = 1
masterLv = 1
@@ -318,6 +328,7 @@ class Skill9(DarkKnightSkill):
"""
name = '暗影 · 波动剑'
ref = Ref.WAVE
cellPos = (5,1)
learnLv = 5
masterLv = 60
@@ -347,6 +358,7 @@ class Skill10(DarkKnightSkill):
"""
name = '黑暗十字刃'
ref = Ref.DARKCROSS
cellPos = (4,1)
learnLv = 5
masterLv = 60
@@ -379,6 +391,7 @@ class Skill11(DarkKnightSkill):
"""
name = '暗月斩'
ref = Ref.SPINATTACK
cellPos = (2,3)
learnLv = 5
masterLv = 60
@@ -411,6 +424,7 @@ class Skill12(DarkKnightSkill):
"""
name = '冥光斩'
ref = Ref.GRANDWAVE
cellPos = (5,2)
learnLv = 10
masterLv = 60
@@ -444,6 +458,7 @@ class Skill13(DarkKnightSkill):
"""
name = '旋涡斩'
ref = Ref.VANESLASH
cellPos = (6,1)
learnLv = 10
masterLv = 60
@@ -490,6 +505,7 @@ class Skill14(DarkKnightSkill):
"""
name = '跃地斩'
ref = Ref.HOPSMASH
cellPos = (4,2)
learnLv = 10
masterLv = 60
@@ -522,6 +538,7 @@ class Skill15(DarkKnightSkill):
"""
name = '突刺'
ref = Ref.PIERCESTRIKE
cellPos = (2,4)
learnLv = 10
masterLv = 60
@@ -569,6 +586,7 @@ class Skill16(DarkKnightSkill):
"""
name = '暗影三击剑'
ref = Ref.TRIPLESTAB
cellPos = (3,3)
learnLv = 10
masterLv = 60
@@ -604,6 +622,7 @@ class Skill17(PassiveSkill):
"""
name = '强化 - 后跳'
ref = Ref.ESCAPEBACKSTEP
cellPos = (4,0)
learnLv = 10
masterLv = 1
@@ -633,6 +652,7 @@ class Skill18(ActiveSkill):
"""
name = '跃翔'
ref = Ref.JUMPPOWERUP
cellPos = (6,0)
learnLv = 10
masterLv = 1
@@ -661,6 +681,7 @@ class Skill19(PassiveSkill):
"""
name = '暗 · 光剑精通'
ref = Ref.LIGHTSWORDMASTERY
cellPos = (0,5)
learnLv = 15
masterLv = 1
@@ -705,6 +726,7 @@ class Skill20(PassiveSkill):
"""
name = '暗 · 短剑精通'
ref = Ref.SHORTSWORDMASTERY
cellPos = (0,1)
learnLv = 15
masterLv = 1
@@ -749,6 +771,7 @@ class Skill21(PassiveSkill):
"""
name = '暗 · 太刀精通'
ref = Ref.BLADEMASTERY
cellPos = (0,2)
learnLv = 15
masterLv = 1
@@ -793,6 +816,7 @@ class Skill22(PassiveSkill):
"""
name = '暗 · 巨剑精通'
ref = Ref.HEAVYSWORDMASTERY
cellPos = (0,3)
learnLv = 15
masterLv = 1
@@ -837,6 +861,7 @@ class Skill23(PassiveSkill):
"""
name = '暗 · 钝器精通'
ref = Ref.BLUNTMASTERY
cellPos = (0,4)
learnLv = 15
masterLv = 1
@@ -880,6 +905,7 @@ class Skill24(DarkKnightSkill):
"""
name = '暗劲爆发'
ref = Ref.DARKEXPLOSION
cellPos = (4,3)
learnLv = 15
masterLv = 60
@@ -916,6 +942,7 @@ class Skill25(PassiveSkill):
"""
name = '暗武奥义'
ref = Ref.WEAPONMASTERYUP
cellPos = (1,3)
learnLv = 15
masterLv = 20
@@ -930,7 +957,7 @@ class Skill25(PassiveSkill):
# 迁移前实现(保留对照):
# associate = [{'type': '+lv', 'data': [i + 1 if i > 0 else i for i in range(0, maxLv + 3)], 'ratio': 1, 'skills': ['暗 · 光剑精通', '暗 · 钝器精通', '暗 · 太刀精通', '暗 · 巨剑精通', '暗 · 短剑精通']}]
associate = [
SkillEffect(attribute=SkillAttribute.LEVEL, operation=Operation.ADD, value=LevelTable([i + 1 if i > 0 else i for i in range(0, maxLv + 3)]), skills=['暗 · 光剑精通', '暗 · 钝器精通', '暗 · 太刀精通', '暗 · 巨剑精通', '暗 · 短剑精通']),
SkillEffect(attribute=SkillAttribute.LEVEL, operation=Operation.ADD, value=LevelTable([i + 1 if i > 0 else i for i in range(0, maxLv + 3)]), skills=[Ref.LIGHTSWORDMASTERY, Ref.BLUNTMASTERY, Ref.BLADEMASTERY, Ref.HEAVYSWORDMASTERY, Ref.SHORTSWORDMASTERY]),
]
@@ -943,6 +970,7 @@ class Skill26(DarkKnightSkill):
"""
name = '暗影鞭'
ref = Ref.WHIPATTACK
cellPos = (3,4)
learnLv = 20
masterLv = 60
@@ -979,6 +1007,7 @@ class Skill27(DarkKnightSkill):
"""
name = '邪影 · 波动剑'
ref = Ref.DARKWAVE
cellPos = (5,3)
learnLv = 20
masterLv = 60
@@ -1016,6 +1045,7 @@ class Skill28(PassiveSkill):
"""
name = '暴击'
ref = Ref.PHYSICALCRITICALHITUP
cellPos = (5,0)
learnLv = 20
masterLv = 10
@@ -1039,6 +1069,7 @@ class Skill29(DarkKnightSkill):
"""
name = '瞬影斩'
ref = Ref.RAPIDMOVE
cellPos = (6,2)
learnLv = 25
masterLv = 60
@@ -1069,6 +1100,7 @@ class Skill30(DarkKnightSkill):
"""
name = '灭魂封魔斩'
ref = Ref.DARKRAVE
cellPos = (4,4)
learnLv = 25
masterLv = 60
@@ -1108,6 +1140,7 @@ class Skill31(DarkKnightSkill):
"""
name = '冥魂珠'
ref = Ref.DARKBALL
cellPos = (5,4)
learnLv = 30
masterLv = 60
@@ -1146,6 +1179,7 @@ class Skill32(DarkKnightSkill):
"""
name = '暗魂之手'
ref = Ref.DARKRUST
cellPos = (6,3)
learnLv = 30
masterLv = 60
@@ -1180,6 +1214,7 @@ class Skill33(DarkKnightSkill):
"""
name = '暗影升龙击'
ref = Ref.DARKCRASHER
cellPos = (2,5)
learnLv = 30
masterLv = 60
@@ -1235,6 +1270,7 @@ class Skill34(DarkKnightSkill):
"""
name = '黑暗释放'
ref = Ref.OVERFLOW
cellPos = (8,7)
learnLv = 30
masterLv = 10
@@ -1263,6 +1299,7 @@ class Skill35(DarkKnightSkill):
"""
name = '冥魂之陨'
ref = Ref.DARKFALL
cellPos = (3,5)
learnLv = 35
masterLv = 60
@@ -1320,6 +1357,7 @@ class Skill36(DarkKnightSkill):
"""
name = '凝魂波动阵'
ref = Ref.SHOCKWAVE
cellPos = (5,5)
learnLv = 35
masterLv = 60
@@ -1364,6 +1402,7 @@ class Skill37(DarkKnightSkill):
"""
name = '破魂之刃'
ref = Ref.DARKSWORD
cellPos = (4,5)
learnLv = 35
masterLv = 60
@@ -1416,6 +1455,7 @@ class Skill38(DarkKnightSkill):
"""
name = '破魂斩'
ref = Ref.DRAWSWORD
cellPos = (6,5)
learnLv = 40
masterLv = 60
@@ -1447,6 +1487,7 @@ class Skill39(DarkKnightSkill):
"""
name = '禁魂斩'
ref = Ref.MOMENTARYSLASH
cellPos = (3,6)
learnLv = 40
masterLv = 60
@@ -1480,6 +1521,7 @@ class Skill40(DarkKnightSkill):
"""
name = '冥炎破空斩'
ref = Ref.DARKFLAMESWORD
cellPos = (2,6)
learnLv = 40
masterLv = 60
@@ -1549,6 +1591,7 @@ class Skill41(DarkKnightSkill):
"""
name = '魔影剑舞'
ref = Ref.ILLUSIONSLASH
cellPos = (6,6)
learnLv = 45
masterLv = 60
@@ -1608,6 +1651,7 @@ class Skill42(DarkKnightSkill):
"""
name = '黑暗明王阵'
ref = Ref.WAVESPIN
cellPos = (5,6)
learnLv = 45
masterLv = 60
@@ -1664,6 +1708,7 @@ class Skill43(DarkKnightSkill):
"""
name = '魔狱裂魂斩'
ref = Ref.DARKBREAK
cellPos = (4,6)
learnLv = 45
masterLv = 60
@@ -1720,6 +1765,7 @@ class Skill44(PassiveSkill):
"""
name = '时间停滞'
ref = Ref.TIMESTOP
cellPos = (0,7)
learnLv = 48
masterLv = 40
@@ -1758,6 +1804,7 @@ class Skill45(DarkKnightSkill):
"""
name = '幽魂剑'
ref = Ref.PHANTOMSWORD
cellPos = (2,7)
learnLv = 50
masterLv = 40
@@ -1814,6 +1861,7 @@ class Skill46(PassiveSkill):
"""
name = '自我觉醒'
ref = Ref.CONSCIOUSNESSDARK
cellPos = (8,6)
learnLv = 50
masterLv = 1
@@ -1852,6 +1900,7 @@ class Skill47(DarkKnightSkill):
"""
name = '暗炎冥魂波'
ref = Ref.DARKWAVEFALL
cellPos = (3,8)
learnLv = 60
masterLv = 40
@@ -1900,6 +1949,7 @@ class Skill48(DarkKnightSkill):
"""
name = '斩龙破'
ref = Ref.CHARGEEXPLOSION
cellPos = (6,9)
learnLv = 70
masterLv = 40
@@ -1958,6 +2008,7 @@ class Skill49(PassiveSkill):
"""
name = '次元融合'
ref = Ref.DIMENSIONAGREEMENT
cellPos = (0,9)
learnLv = 75
masterLv = 40
@@ -1994,6 +2045,7 @@ class Skill50(DarkKnightSkill):
"""
name = '邪影升龙斩'
ref = Ref.DARKBURST
cellPos = (5,10)
learnLv = 80
masterLv = 40
@@ -2071,6 +2123,7 @@ class Skill51(DarkKnightSkill):
"""
name = '超时空碎裂'
ref = Ref.TIMEBREAK
cellPos = (4,10)
learnLv = 85
masterLv = 40
@@ -2110,6 +2163,7 @@ class Skill52(PassiveSkill):
"""
name = '时空主宰'
ref = Ref.TIMELORD
cellPos = (4,11)
learnLv = 95
masterLv = 40
@@ -2142,6 +2196,7 @@ class Skill53(DarkKnightSkill):
"""
name = '暗黑溯回斩'
ref = Ref.DIABOLICSLASH
cellPos = (6,11)
learnLv = 95
masterLv = 40
@@ -2209,6 +2264,7 @@ class Skill55(DarkKnightSkill):
"""
name = '时之止境 : 幻灭'
ref = Ref.THEENDOFTIME
cellPos = (4,12)
learnLv = 100
masterLv = 40