Files
2024-11-04 15:00:40 +08:00

1000 lines
44 KiB
Python

from ast import arg
from core.basic.skill import 技能
from core.basic.character import Character
from core.basic.skill import 主动技能, 被动技能
class 技能0(被动技能):
名称 = '基础精通'
倍率 = 1.0
所在等级 = 1
等级上限 = 200
等级精通 = 110
关联技能 = ['帝国剑术']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(self.倍率 * (0.463 + 0.089 * self.等级), 5)
class 技能1(主动技能):
名称 = '帝国剑术'
备注 = '(TP为基础精通)'
所在等级 = 1
等级上限 = 1
基础等级 = 1
MP = [6, 140]
# 巨剑 180.53+205.90+127.83
data0 = [int(i) for i in [0, 514.25]]
hit0 = 1
# 太刀 122.81+170.41+195.72
data1 = [int(i) for i in [0, 486.67]]
hit1 = 1
# 短剑 (69.16+74.22+80.97+86.03)*2
data2 = [int(i) for i in [0, 310.37]]
hit2 = 2
# 钝器 102.14+153.95+179.12+76.98
data3 = [int(i) for i in [0, 512.19]]
hit3 = 1
CD = 1.0 # 实际没有
TP成长 = 0.10
TP上限 = 5
def 等效百分比(self, **argv):
武器类型 = argv.get('武器类型', '')
if 武器类型 == '巨剑':
self.hit0 = 1
self.hit1 = 0
self.hit2 = 0
self.hit3 = 0
if 武器类型 == '太刀':
self.hit0 = 0
self.hit1 = 1
self.hit2 = 0
self.hit3 = 0
if 武器类型 == '短剑':
self.hit0 = 0
self.hit1 = 0
self.hit2 = 2
self.hit3 = 0
if 武器类型 == '钝器':
self.hit0 = 0
self.hit1 = 0
self.hit2 = 0
self.hit3 = 1
return super().等效百分比(**argv)
class 技能2(主动技能):
名称 = '魔剑降临'
备注 = '火冰光为次数,暗为秒伤'
所在等级 = 15
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [94, 1029]
# 火
data0 = [0, 119, 129, 142, 153, 166, 176, 190, 201, 214, 224, 237, 248, 263, 272, 286, 296, 310, 319, 334, 345, 358, 368, 381, 392, 406, 417, 429, 440, 453, 464, 477, 488, 501, 512, 523, 536, 548, 560, 571, 583, 595, 608, 619, 631, 643, 655, 665, 679, 691, 703, 713, 726, 737, 752, 761, 775, 785, 799, 808, 823, 834, 847, 858, 870, 881, 895, 906, 918, 929, 942]
hit0 = 1
# 冰
data1 = [0, 119, 129, 142, 153, 166, 176, 190, 201, 214, 224, 237, 248, 263, 272, 286, 296, 310, 319, 334, 345, 358, 368, 381, 392, 406, 417, 429, 440, 453, 464, 477, 488, 501, 512, 523, 536, 548, 560, 571, 583, 595, 608, 619, 631, 643, 655, 665, 679, 691, 703, 713, 726, 737, 752, 761, 775, 785, 799, 808, 823, 834, 847, 858, 870, 881, 895, 906, 918, 929, 942]
hit1 = 0
# 光
data2 = [0, 131, 151, 164, 174, 193, 202, 211, 231, 240, 258, 272, 287, 296, 311, 325, 334, 358, 367, 381, 395, 405, 419, 433, 452, 461, 480, 489, 499, 517, 527, 546, 560, 574, 583, 597, 612, 621, 644, 654, 668, 682, 691, 706, 720, 738, 748, 767, 776, 785, 804, 814, 833, 847, 861, 870, 884, 898, 908, 931, 941, 955, 969, 978, 992, 1006, 1025, 1035, 1053, 1063, 1072]
hit2 = 0
# 暗 dot伤害,按秒伤看叠满两层是每秒4段
data3 = [0, 78, 85, 94, 101, 110, 119, 125, 135, 141, 150, 156, 164, 173, 182, 188, 197, 203, 213, 221, 226, 236, 245, 252, 260, 267, 276, 284, 292, 299, 308, 315, 324, 330, 339, 347, 356, 363, 371, 379, 387, 394, 403, 410, 418, 427, 435, 441, 451, 457, 466, 474, 481, 489, 499, 504, 513, 520, 529, 537, 544, 552, 561, 568, 576, 583, 592, 601, 608, 615, 625]
hit3 = 0
TP成长 = 0.1
TP上限 = 7
CD = 1 # 对于火冰光无实际CD,对于暗就是秒伤
形态 = ["火", "冰", "光", "暗"]
def 形态变更(self, 形态, char: Character):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "火":
self.hit0 = 1
self.hit1 = 0
self.hit2 = 0
self.hit3 = 0
if 形态 == "冰":
self.hit0 = 0
self.hit1 = 1
self.hit2 = 0
self.hit3 = 0
if 形态 == "光":
self.hit0 = 0
self.hit1 = 0
self.hit2 = 3
self.hit3 = 0
if 形态 == "暗":
self.hit0 = 0
self.hit1 = 0
self.hit2 = 0
self.hit3 = 4
def 等效CD(self, **argv):
return 1.0
class 技能3(被动技能):
名称 = '毁灭之巨剑精通'
所在等级 = 15
等级上限 = 40
基础等级 = 30
关联技能 = ['所有']
关联技能1 = ['所有']
关联技能2 = ['破军旋舞斩']
关联技能3 = ['帝国剑术']
data1 = [0, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61]
data2 = [0, 16, 17, 17, 18, 19, 19, 20, 20, 21, 22, 22, 23, 23, 24, 25, 25, 26, 26, 27, 28, 28, 29, 29, 30, 31, 31, 32, 32, 33, 34, 34, 35, 35, 36, 37, 37, 38, 38, 39, 40]
data3 = [0, 10, 10, 11, 11, 12, 12, 12, 13, 13, 14, 14, 14, 15, 15, 16, 16, 16, 17, 17, 18, 18, 18, 19, 19, 20, 20, 20, 21, 21, 22, 22, 22, 23, 23, 24, 24, 24, 25, 25, 26]
data4 = [0, 38, 38, 39, 39, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 45, 45, 46, 46, 47, 47, 48, 48, 49, 49, 50, 50, 51, 51, 52, 52, 53, 53, 54, 54, 55, 55, 56, 56, 57, 57]
def 物理攻击力倍率(self, 武器类型):
if 武器类型 != '巨剑':
return 1.0
else:
return 1 + self.data1[self.等级] / 100
def 加成倍率1(self, 武器类型):
if 武器类型 != '巨剑':
return 1.0
else:
return 1 + self.data2[self.等级] / 100
# 破军圆舞斩
def 加成倍率2(self, 武器类型):
if 武器类型 != '巨剑':
return 1.0
else:
return 1 + self.data3[self.等级] / 100
# 帝国剑术
def 加成倍率3(self, 武器类型):
if 武器类型 != '巨剑':
return 1.0
else:
return 1.36
# 恶即斩终结
def 额外倍率1(self):
return 1 + self.data4[self.等级] / 100
class 技能4(被动技能):
名称 = '血影之太刀精通'
所在等级 = 15
等级上限 = 40
基础等级 = 30
关联技能 = ['所有']
关联技能1 = ['所有']
非关联技能1 = ['帝国剑术', '魔剑降临']
关联技能2 = ['魔剑降临']
关联技能3 = ['帝国剑术']
冷却关联技能 = ['所有']
data1 = [0, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61]
data2 = [0, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31, 32, 32, 33, 33, 34, 34, 35, 35, 36, 36, 37, 37, 38, 38, 39, 39, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44]
data3 = [0, 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29]
def 物理攻击力倍率(self, 武器类型):
if 武器类型 != '太刀':
return 1.0
else:
return 1 + self.data1[self.等级] / 100
# 柔化加成
def 加成倍率1(self, 武器类型):
if 武器类型 != '太刀':
return 1.0
else:
return 1 + self.data2[self.等级] / 100
# 魔剑降临
def 加成倍率2(self, 武器类型):
if 武器类型 != '太刀':
return 1.0
else:
return 1 + self.data3[self.等级] / 100
# 帝国剑术
def 加成倍率3(self, 武器类型):
if 武器类型 != '太刀':
return 1.0
else:
return 1.26
def CD缩减倍率(self, 武器类型):
if self.等级 == 0 or 武器类型 != '太刀':
return 1.0
else:
return 0.9
class 技能5(被动技能):
名称 = '魔性之短剑精通'
所在等级 = 15
等级上限 = 40
基础等级 = 30
关联技能 = ['所有']
关联技能1 = ['所有']
冷却关联技能 = ['魔剑奥义']
data1 = [0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52]
data2 = [0, 17.5, 18, 18.5, 19, 19.5, 20, 20.5, 21, 21.5, 22, 22.5, 23, 23.5, 24, 24.5, 25, 25.5, 26, 26.5, 27, 27.5, 28, 28.5, 29, 29.5, 30, 30.5, 31, 31.5, 32, 32.5, 33, 33.5, 34, 34.5, 35, 35.5, 36, 36.5, 37]
data3 = [0, 34, 35, 37, 38, 40, 41, 42, 44, 45, 47, 48, 50, 51, 53, 54, 56, 57, 58, 60, 61, 63, 64, 66, 67, 69, 70, 71, 73, 74, 76, 77, 79, 80, 82, 83, 85, 86, 87, 88, 89]
data4 = [0, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30]
def 物理攻击力倍率(self, 武器类型):
if 武器类型 != '短剑':
return 1.0
else:
return 1 + self.data1[self.等级] / 100
def 加成倍率1(self, 武器类型):
if 武器类型 != '短剑':
return 1.0
else:
return 1 + self.data2[self.等级] / 100
def CD缩减倍率(self, 武器类型):
if 武器类型 != '短剑':
return 1.0
else:
return 1 - self.data3[self.等级] / 100
# 瞬影三绝斩异常伤害
def 额外倍率1(self):
return 1 + self.data4[self.等级] / 100
class 技能6(被动技能):
名称 = '波动之钝器精通'
所在等级 = 15
等级上限 = 40
基础等级 = 30
关联技能 = ['所有']
关联技能1 = ['所有']
关联技能2 = ['雷鸣千军破']
data1 = [0, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61]
data2 = [0, 18.5, 19, 19.5, 20, 20.5, 21, 21.5, 22, 22.5, 23, 23.5, 24, 24.5, 25, 25.5, 26, 26.5, 27, 27.5, 28, 28.5, 29, 29.5, 30, 30.5, 31, 31.5, 32, 32.5, 33, 33.5, 34, 34.5, 35, 35.5, 36, 36.5, 37, 37.5, 38]
data4 = [0, 11, 12, 14, 15, 16, 18, 19, 20, 22, 23, 24, 26, 27, 29, 30, 31, 33, 34, 35, 37, 38, 39, 41, 42, 44, 45, 46, 48, 49, 50, 52, 53, 54, 56, 57, 58, 60, 61, 63, 64]
data5 = [0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47]
def 物理攻击力倍率(self, 武器类型):
if 武器类型 != '钝器':
return 1.0
else:
return 1 + self.data1[self.等级] / 100
def 加成倍率1(self, 武器类型):
if 武器类型 != '钝器':
return 1.0
else:
return 1 + self.data2[self.等级] / 100
# 雷鸣千军破
def 加成倍率2(self, 武器类型):
if 武器类型 != '钝器':
return 1.0
else:
return 2.8
# 幻剑术冲击波
def 额外倍率1(self):
return 1 + self.data4[self.等级] / 100
# 穿云破空剑冲击波
def 额外倍率2(self):
return 1 + self.data5[self.等级] / 100
class 技能7(主动技能):
名称 = '疾影斩'
所在等级 = 20
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [20, 210]
data0 = [0, 3911, 4305, 4702, 5099, 5494, 5894, 6290, 6686, 7083, 7478, 7876, 8272, 8668, 9066, 9463, 9859, 10256, 10652, 11048, 11446, 11845, 12240, 12636, 13032, 13428, 13824, 14223, 14619, 15016, 15413, 15809, 16206, 16603, 16999, 17395, 17794, 18188, 18586, 18983, 19378, 19777, 20174, 20569, 20965, 21363, 21758, 22156, 22552, 22949, 23346, 23742, 24139, 24537, 24933, 25328, 25725, 26122, 26519, 26915, 27311, 27707, 28106, 28503, 28900, 29296, 29691, 30088, 30485, 30881, 31279]
hit0 = 1
CD = 7.0
TP成长 = 0.10
TP上限 = 7
class 技能8(主动技能):
名称 = '幻剑术'
所在等级 = 25
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [30, 350]
data0 = [0, 1000, 1103, 1205, 1308, 1407, 1510, 1610, 1714, 1816, 1916, 2018, 2120, 2221, 2324, 2425, 2527, 2628, 2731, 2829, 2934, 3036, 3137, 3237, 3338, 3440, 3545, 3644, 3746, 3847, 3949, 4051, 4154, 4254, 4356, 4458, 4560, 4660, 4763, 4864, 4967, 5069, 5169, 5271, 5372, 5475, 5577, 5677, 5780, 5881, 5985, 6086, 6187, 6289, 6390, 6490, 6591, 6693, 6798, 6898, 6999, 7099, 7202, 7306, 7407, 7508, 7609, 7711, 7813, 7915, 8016]
hit0 = 6
# 钝器冲击波
data1 = [0, 249, 275, 300, 326, 352, 377, 402, 426, 453, 478, 503, 529, 553, 581, 607, 631, 657, 683, 707, 733, 759, 783, 809, 835, 860, 886, 911, 936, 962, 987, 1012, 1037, 1063, 1090, 1114, 1141, 1166, 1191, 1217, 1241, 1267, 1293, 1317, 1343, 1370, 1394, 1420, 1446, 1470, 1496, 1520, 1546, 1572, 1596, 1623, 1649, 1673, 1699, 1724, 1752, 1776, 1801, 1826, 1852, 1878, 1904, 1928, 1954, 1980, 2005]
hit1 = 0
CD = 8.0
TP成长 = 0.10
TP上限 = 7
def 等效百分比(self, **argv):
武器类型 = argv.get('武器类型', '')
char: Character = argv.get('char', {})
if 武器类型 == '钝器':
self.hit0 = 6
self.hit1 = 6
self.power1 = char.get_skill_by_name("波动之钝器精通").额外倍率1()
else:
self.hit0 = 6
self.hit1 = 0
return super().等效百分比(**argv)
class 技能9(主动技能):
名称 = '升龙剑'
所在等级 = 25
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [30, 350]
data0 = [0, 480, 530, 579, 627, 676, 725, 774, 823, 872, 921, 968, 1018, 1067, 1116, 1164, 1213, 1262, 1311, 1359, 1408, 1457, 1505, 1556, 1604, 1653, 1701, 1751, 1799, 1848, 1896, 1946, 1994, 2044, 2092, 2141, 2190, 2238, 2287, 2336, 2385, 2433, 2482, 2531, 2580, 2628, 2677, 2726, 2775, 2824, 2873, 2921, 2969, 3018, 3069, 3118, 3166, 3215, 3265, 3313, 3362, 3410, 3459, 3507, 3557, 3605, 3654, 3702, 3751, 3801, 3849]
hit0 = 4
data1 = [0, 4424, 4870, 5320, 5772, 6219, 6670, 7117, 7564, 8015, 8466, 8911, 9365, 9811, 10260, 10706, 11156, 11607, 12057, 12504, 12952, 13400, 13852, 14302, 14748, 15200, 15647, 16093, 16545, 16995, 17447, 17894, 18341, 18789, 19239, 19686, 20137, 20587, 21036, 21482, 21929, 22382, 22832, 23280, 23729, 24177, 24628, 25074, 25522, 25976, 26424, 26869, 27319, 27769, 28218, 28667, 29116, 29565, 30012, 30461, 30910, 31357, 31810, 32259, 32706, 33157, 33604, 34051, 34506, 34952, 35399]
hit1 = 1
CD = 8.0
TP成长 = 0.10
TP上限 = 7
class 技能10(主动技能):
名称 = '穿云破空剑'
所在等级 = 30
等级上限 = 70
学习间隔 = 3
等级精通 = 60
MP = [60, 390]
data0 = [0, 1216, 1412, 1605, 1801, 1994, 2188, 2381, 2574, 2770, 2965, 3157, 3352, 3548, 3741, 3936, 4130, 4323, 4519, 4712, 4905, 5100, 5293, 5487, 5683, 5877, 6071, 6264, 6459, 6655, 6848, 7042, 7235, 7429, 7623, 7816, 8012, 8207, 8399, 8594, 8790, 8984, 9177, 9373, 9566, 9758, 9952, 10148, 10341, 10536, 10730, 10925, 11119, 11313, 11506, 11701, 11895, 12090, 12283, 12477, 12671, 12865, 13058, 13254, 13448, 13643, 13836, 14030, 14225, 14420, 14615]
hit0 = 1
data1 = [0, 815, 945, 1075, 1205, 1333, 1465, 1593, 1726, 1854, 1986, 2115, 2246, 2374, 2506, 2635, 2765, 2894, 3026, 3155, 3283, 3414, 3544, 3675, 3804, 3936, 4065, 4196, 4325, 4457, 4584, 4715, 4844, 4976, 5105, 5235, 5366, 5494, 5624, 5754, 5885, 6015, 6145, 6276, 6405, 6534, 6664, 6795, 6925, 7055, 7184, 7316, 7445, 7576, 7705, 7836, 7965, 8097, 8226, 8356, 8485, 8617, 8745, 8876, 9005, 9134, 9266, 9394, 9525, 9655, 9786]
hit1 = 8
data2 = [0, 957, 1108, 1261, 1413, 1567, 1718, 1870, 2024, 2178, 2328, 2480, 2635, 2787, 2939, 3091, 3245, 3398, 3549, 3703, 3854, 4008, 4160, 4314, 4463, 4615, 4770, 4922, 5074, 5226, 5381, 5533, 5684, 5836, 5989, 6143, 6295, 6449, 6600, 6754, 6905, 7058, 7210, 7364, 7517, 7668, 7821, 7970, 8126, 8277, 8430, 8582, 8736, 8888, 9040, 9192, 9345, 9498, 9652, 9803, 9956, 10109, 10262, 10413, 10566, 10717, 10872, 11024, 11177, 11329, 11483]
hit2 = 1
CD = 12.0
TP成长 = 0.10
TP上限 = 7
def TP加成(self):
return 1.0
def 等效百分比(self, **argv):
武器类型 = argv.get('武器类型', '')
char: Character = argv.get('char', {})
if self.TP等级 > 0:
self.hit1 = 8+self.TP等级
if 武器类型 == '钝器':
self.power2 = char.get_skill_by_name("波动之钝器精通").额外倍率2()
else:
self.hit1 = 8
if 武器类型 == '钝器':
self.power2 = char.get_skill_by_name("波动之钝器精通").额外倍率2()
return super().等效百分比(**argv)
class 技能11(主动技能):
名称 = '魔剑奥义'
备注 = '单次'
是否主动 = 0
所在等级 = 30
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [60, 390]
# 火
data0 = [0, 911, 1003, 1097, 1189, 1281, 1374, 1466, 1559, 1649, 1744, 1837, 1928, 2021, 2112, 2205, 2299, 2391, 2484, 2575, 2668, 2761, 2853, 2946, 3038, 3131, 3223, 3316, 3408, 3500, 3594, 3686, 3778, 3871, 3963, 4056, 4148, 4241, 4334, 4426, 4519, 4610, 4703, 4796, 4889, 4982, 5072, 5165, 5258, 5350, 5442, 5535, 5628, 5721, 5813, 5905, 5997, 6090, 6183, 6275, 6368, 6460, 6553, 6645, 6737, 6831, 6923, 7016, 7107, 7200, 7293]
hit0 = 1
# 冰
data1 = [0, 1003, 1103, 1206, 1306, 1410, 1512, 1613, 1714, 1815, 1918, 2020, 2122, 2224, 2325, 2426, 2528, 2629, 2732, 2834, 2935, 3038, 3138, 3240, 3342, 3444, 3545, 3647, 3750, 3849, 3953, 4054, 4156, 4258, 4359, 4462, 4561, 4665, 4767, 4868, 4970, 5071, 5173, 5277, 5377, 5479, 5580, 5682, 5784, 5886, 5989, 6088, 6191, 6293, 6394, 6497, 6598, 6700, 6800, 6903, 7005, 7106, 7209, 7310, 7411, 7513, 7614, 7716, 7819, 7921, 8023]
hit1 = 1
# 光
data2 = [0, 1003, 1103, 1206, 1306, 1410, 1512, 1613, 1714, 1815, 1918, 2020, 2122, 2224, 2325, 2426, 2528, 2629, 2732, 2834, 2935, 3038, 3138, 3240, 3342, 3444, 3545, 3647, 3750, 3849, 3953, 4054, 4156, 4258, 4359, 4462, 4561, 4665, 4767, 4868, 4970, 5071, 5173, 5277, 5377, 5479, 5580, 5682, 5784, 5886, 5989, 6088, 6191, 6293, 6394, 6497, 6598, 6700, 6800, 6903, 7005, 7106, 7209, 7310, 7411, 7513, 7614, 7716, 7819, 7921, 8023]
hit2 = 1
# 暗
data3 = [0, 911, 1003, 1097, 1189, 1281, 1374, 1466, 1559, 1649, 1744, 1837, 1928, 2021, 2112, 2205, 2299, 2391, 2484, 2575, 2668, 2761, 2853, 2946, 3038, 3131, 3223, 3316, 3408, 3500, 3594, 3686, 3778, 3871, 3963, 4056, 4148, 4241, 4334, 4426, 4519, 4610, 4703, 4796, 4889, 4982, 5072, 5165, 5258, 5350, 5442, 5535, 5628, 5721, 5813, 5905, 5997, 6090, 6183, 6275, 6368, 6460, 6553, 6645, 6737, 6831, 6923, 7016, 7107, 7200, 7293]
hit3 = 1
# TP是减少触发间隔,每级-10%,7级-70%
TP成长 = 0
TP上限 = 7
CD = 5
短精CDR = 1
形态 = ["火/暗", "冰/光", "冰光", "冰火", "火暗", "火冰"]
def 等效CD(self, **argv):
return self.CD * ( 1 - self.TP等级 * 0.1) * self.短精CDR
def 形态变更(self, 形态, char: Character):
if char == {}:
武器类型 = "巨剑"
else:
武器类型 = char.武器类型
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 武器类型 != '短剑' and len(形态) == 2:
形态 = 形态[:1]
if 武器类型 == '短剑' and len(形态) == 3:
形态 = 形态.replace("/", "")
if 形态 == "冰光":
# 火
self.power0 = 0
# 冰
self.power1 = 1.65
# 光
self.power2 = 0.25 * 1.65
# 暗
self.power3 = 0
elif 形态 == "冰火":
# 火
self.power0 = 0.25 * 1.65
# 冰
self.power1 = 1.65
# 光
self.power2 = 0
# 暗
self.power3 = 0
elif 形态 == "火暗":
# 火
self.power0 = 1.65
# 冰
self.power1 = 0
# 光
self.power2 = 0
# 暗
self.power3 = 0.25 * 1.65
elif 形态 == "火冰":
# 火
self.power0 = 1.65
# 冰
self.power1 = 0.25 * 1.65
# 光
self.power2 = 0
# 暗
self.power3 = 0
elif 形态 == "火/暗" or 形态 == "火":
# 火
self.power0 = 1
# 冰
self.power1 = 0
# 光
self.power2 = 0
# 暗
self.power3 = 0
elif 形态 == "冰/光" or 形态 == "冰":
# 火
self.power0 = 0
# 冰
self.power1 = 1
# 光
self.power2 = 0
# 暗
self.power3 = 0
pass
class 技能12(被动技能):
名称 = '魔剑觉醒'
所在等级 = 30
等级上限 = 15
基础等级 = 5
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.035 + 0.015 * self.等级, 5)
class 技能13(主动技能):
名称 = '瞬影三绝斩'
所在等级 = 35
等级上限 = 70
学习间隔 = 2
等级精通 = 60
# 冰暗 剑气本体伤害
data0 = [0, 3868, 4260, 4655, 5047, 5440, 5831, 6224, 6616, 7010, 7401, 7795, 8186, 8579, 8972, 9365, 9757, 10150, 10543, 10935, 11328, 11720, 12113, 12506, 12899, 13291, 13683, 14075, 14469, 14861, 15254, 15646, 16040, 16430, 16824, 17218, 17609, 18003, 18395, 18787, 19179, 19572, 19964, 20359, 20750, 21143, 21534, 21927, 22319, 22713, 23105, 23500, 23892, 24282, 24676, 25068, 25461, 25853, 26247, 26639, 27031, 27423, 27816, 28208, 28602, 28994, 29386, 29781, 30172, 30565, 30957]
hit0 = 3
# 火光 剑气本体伤害
data1 = [0, 3684, 4057, 4433, 4807, 5182, 5554, 5928, 6301, 6676, 7049, 7425, 7796, 8171, 8545, 8919, 9293, 9668, 10040, 10414, 10789, 11162, 11537, 11910, 12285, 12658, 13032, 13406, 13779, 14153, 14528, 14901, 15276, 15648, 16023, 16399, 16771, 17146, 17518, 17892, 18266, 18641, 19014, 19390, 19762, 20136, 20509, 20884, 21256, 21631, 22005, 22381, 22754, 23126, 23501, 23874, 24249, 24623, 24997, 25370, 25744, 26117, 26492, 26866, 27240, 27613, 27987, 28363, 28735, 29109, 29483]
hit1 = 0
# 火光额外
data2 = [0, 773, 852, 931, 1009, 1088, 1166, 1245, 1323, 1402, 1480, 1559, 1637, 1716, 1794, 1873, 1951, 2030, 2108, 2187, 2265, 2344, 2422, 2501, 2580, 2658, 2736, 2815, 2894, 2972, 3051, 3129, 3208, 3286, 3365, 3443, 3522, 3600, 3679, 3757, 3836, 3914, 3993, 4072, 4150, 4228, 4307, 4385, 4464, 4542, 4621, 4700, 4778, 4856, 4935, 5013, 5092, 5170, 5249, 5328, 5406, 5484, 5563, 5641, 5720, 5799, 5877, 5956, 6034, 6113, 6191]
hit2 = 0
CD = 15.0
TP成长 = 0.10
TP上限 = 5
MP = [110, 924]
无色消耗 = 1
形态 = ["冰&暗", "火&光"]
def 形态变更(self, 形态, char: Character):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "火&光":
self.hit0 = 0
self.hit1 = 3
self.hit2 = 1
if char.武器类型 == '太刀':
self.hit1 = 4
if 形态 == "冰&暗":
self.hit0 = 3
self.hit1 = 0
self.hit2 = 0
if char.武器类型 == '太刀':
self.hit0 = 4
# def 等效百分比(self, **argv):
# 武器类型 = argv.get('武器类型', '')
# char: Character = argv.get('char', {})
# 剑心_魔剑觉醒 = char.get_skill_by_name("剑心:魔剑觉醒")
# 魔剑觉醒 = char.get_skill_by_name("魔剑觉醒")
# 通用被动倍率 = 剑心_魔剑觉醒.加成倍率('')*魔剑觉醒.加成倍率('') * \
# (1+self.TP成长*self.TP等级) / char.基础面板物理攻击力()
# for item in char.符文:
# if not item is None and item != '':
# skill_name: str = item[0:-1]
# type = item[-1]
# if skill_name == self.名称:
# # 紫
# if type == "1":
# 通用被动倍率 *= 1.04
# # 红
# if type == "2":
# 通用被动倍率 *= 1.06
# # 绿
# if type == "3":
# 通用被动倍率 *= 0.96
# if 武器类型 == "":
# 武器类型 = '巨剑'
# # TP加成本体
# self.power0 = 1 + self.TP成长*self.TP等级
# self.power1 = 1 + self.TP成长*self.TP等级
# if 武器类型 == "巨剑":
# self.power1 = 通用被动倍率 * char.get_skill_by_name("毁灭之巨剑精通").加成倍率1('')
# if 武器类型 == "太刀":
# # 追加一次攻击
# self.hit0 = 4
# self.power1 = 通用被动倍率 * char.get_skill_by_name("血影之太刀精通").加成倍率1('')
# if 武器类型 == "短剑":
# 短剑精通 = char.get_skill_by_name("魔性之短剑精通")
# self.power1 = 通用被动倍率 * \
# 短剑精通.加成倍率1('') * (2.0 if 短剑精通.等级 >= 25 else 1.0)
# self.灼伤power0 = self.感电power0 = 短剑精通.额外倍率1()
# if 武器类型 == "钝器":
# self.power1 = 通用被动倍率 * char.get_skill_by_name("波动之钝器精通").加成倍率1('')
# return super().等效百分比(**argv)
class 技能14(主动技能):
名称 = '破军旋舞斩'
备注 = '蓄气'
所在等级 = 35
等级上限 = 70
学习间隔 = 3
等级精通 = 60
data0 = [0, 2965, 3437, 3911, 4382, 4856, 5329, 5800, 6274, 6747, 7219, 7692, 8165, 8638, 9112, 9583, 10056, 10529, 11002, 11474, 11948, 12419, 12892, 13365, 13837, 14311, 14783, 15256, 15729, 16201, 16676, 17148, 17620, 18093, 18564, 19039, 19511, 19983, 20456, 20928, 21402, 21874, 22348, 22820, 23293, 23766, 24240, 24712, 25184, 25656, 26129, 26601, 27075, 27547, 28020, 28493, 28965, 29439, 29912, 30384, 30857, 31329, 31804, 32275, 32747, 33220, 33692, 34166, 34638, 35112, 35584]
hit0 = 3
CD = 15.0
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
MP = [110, 924]
无色消耗 = 1
形态 = ["蓄力", "普通"]
def 形态变更(self, 形态, char):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "蓄力":
self.power0 = 1.2
if 形态 == "普通":
self.power0 = 1
def 装备护石(self, char):
self.倍率 *= 1.33
class 技能15(主动技能):
名称 = '雷鸣千军破'
所在等级 = 40
等级上限 = 70
学习间隔 = 2
等级精通 = 60
data0 = [0, 3776, 4158, 4541, 4924, 5308, 5691, 6074, 6458, 6841, 7223, 7606, 7990, 8372, 8755, 9139, 9522, 9904, 10287, 10671, 11053, 11436, 11821, 12204, 12586, 12969, 13353, 13736, 14118, 14502, 14885, 15267, 15650, 16034, 16417, 16799, 17183, 17567, 17950, 18332, 18716, 19099, 19481, 19865, 20248, 20631, 21013, 21397, 21780, 22163, 22546, 22929, 23312, 23695, 24079, 24462, 24845, 25227, 25611, 25994, 26377, 26760, 27143, 27526, 27908, 28292, 28675, 29058, 29442, 29825, 30208]
hit0 = 2
data1 = [0, 7551, 8318, 9084, 9850, 10616, 11383, 12148, 12915, 13680, 14448, 15213, 15979, 16745, 17511, 18278, 19043, 19810, 20576, 21343, 22108, 22874, 23641, 24406, 25173, 25938, 26706, 27471, 28238, 29004, 29770, 30536, 31301, 32069, 32834, 33601, 34367, 35133, 35899, 36665, 37431, 38198, 38964, 39730, 40496, 41262, 42028, 42794, 43560, 44327, 45094, 45859, 46626, 47391, 48157, 48923, 49689, 50456, 51222, 51989, 52754, 53521, 54286, 55052, 55818, 56585, 57352, 58117, 58884, 59649, 60416]
hit1 = 1
CD = 20.0
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
MP = [50, 840]
无色消耗 = 1
def 等效百分比(self, **argv):
武器类型 = argv.get('武器类型', '')
if 武器类型 == '钝器':
self.hit0 = 0
self.hit1 = 1
else:
self.hit0 = 2
self.hit1 = 1
return super().等效百分比(**argv)
def 装备护石(self, char):
self.倍率 *= 1.29
self.CDR *= 0.9
class 技能16(主动技能):
名称 = '恶即斩'
备注 = '连按'
所在等级 = 45
等级上限 = 70
学习间隔 = 2
等级精通 = 60
data0 = [0, 1201, 1324, 1447, 1566, 1690, 1813, 1933, 2055, 2177, 2299, 2422, 2542, 2666, 2787, 2909, 3030, 3154, 3275, 3397, 3519, 3641, 3763, 3884, 4007, 4129, 4250, 4373, 4494, 4617, 4739, 4861, 4983, 5105, 5226, 5349, 5471, 5592, 5715, 5836, 5958, 6080, 6203, 6325, 6447, 6568, 6691, 6813, 6934, 7057, 7178, 7300, 7422, 7544, 7667, 7789, 7909, 8032, 8154, 8275, 8398, 8519, 8641, 8763, 8885, 9007, 9129, 9250, 9374, 9495, 9617]
hit0 = 15 # 不连按为13
data1 = [0, 9885, 10888, 11891, 12892, 13896, 14900, 15901, 16904, 17908, 18910, 19913, 20915, 21919, 22922, 23924, 24927, 25930, 26933, 27936, 28937, 29942, 30944, 31947, 32950, 33954, 34956, 35957, 36960, 37964, 38967, 39970, 40974, 41976, 42979, 43980, 44983, 45986, 46989, 47993, 48996, 49999, 51002, 52003, 53009, 54009, 55012, 56015, 57018, 58022, 59024, 60026, 61030, 62032, 63035, 64037, 65041, 66044, 67047, 68049, 69052, 70055, 71058, 72061, 73064, 74066, 75069, 76072, 77075, 78078, 79080]
hit1 = 1
CD = 40.0
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
CP武器 = False
MP = [120, 2024]
无色消耗 = 2
def 等效百分比(self, **argv):
武器类型 = argv.get('武器类型', '')
char: Character = argv.get('char', {})
if 武器类型 == '巨剑':
self.power1 = char.get_skill_by_name("毁灭之巨剑精通").额外倍率1()
return super().等效百分比(**argv)
def 装备护石(self, char):
self.power0 = 1.19
self.hit1 = 1.38
self.CDR *= 0.95
class 技能17(被动技能):
名称 = '斩魂术'
所在等级 = 48
等级上限 = 50
学习间隔 = 3
等级精通 = 40
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(0.995 + 0.03 + 0.02 * self.等级, 5)
class 技能18(主动技能):
名称 = '极·驭剑术(时空斩)'
所在等级 = 50
等级上限 = 50
学习间隔 = 5
等级精通 = 40
data0 = [0, 14279, 17592, 20902, 24213, 27527, 30836, 34148, 37459, 40770, 44082, 47394, 50705, 54017, 57327, 60638, 63951, 67260, 70571, 73884, 77195, 80508, 83818, 87130, 90440, 93752, 97063, 100375, 103687, 106995, 110309, 113619, 116932, 120244, 123553, 126867, 130176, 133487, 136801, 140110, 143420, 146734, 150044, 153356, 156668, 159977, 163291, 166602, 169913, 173225, 176534]
hit0 = 3
data1 = [0, 28559, 35182, 41807, 48427, 55050, 61674, 68296, 74918, 81540, 88164, 94788, 101409, 108031, 114655, 121279, 127900, 134522, 141146, 147770, 154390, 161014, 167638, 174258, 180882, 187504, 194128, 200749, 207371, 213996, 220620, 227239, 233863, 240486, 247108, 253733, 260354, 266978, 273599, 280223, 286844, 293468, 300091, 306715, 313336, 319958, 326580, 333205, 339828, 346448, 353072]
hit1 = 1
CD = 145.0
MP = [980, 8232]
无色消耗 = 5
class 技能19(主动技能):
名称 = '裂刃天冲'
所在等级 = 60
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 4367, 4811, 5253, 5696, 6141, 6583, 7026, 7470, 7913, 8357, 8801, 9241, 9684, 10128, 10571, 11015, 11457, 11901, 12345, 12788, 13230, 13675, 14117, 14560, 15002, 15446, 15890, 16333, 16775, 17219, 17662, 18105, 18548, 18993, 19435, 19878, 20320, 20765, 21207, 21649, 22092, 22536, 22980, 23423, 23867, 24309, 24753, 25196, 25637, 26081]
hit0 = 1
data1 = [0, 682, 751, 822, 890, 959, 1029, 1096, 1167, 1236, 1307, 1373, 1444, 1513, 1581, 1652, 1720, 1789, 1859, 1928, 1997, 2067, 2137, 2205, 2275, 2344, 2412, 2482, 2550, 2621, 2689, 2759, 2829, 2897, 2967, 3036, 3106, 3174, 3245, 3314, 3380, 3452, 3521, 3589, 3659, 3730, 3799, 3866, 3936, 4006, 4075]
hit1 = 9 # 怪物高度低会变成8
data2 = [0, 12011, 13230, 14450, 15668, 16887, 18105, 19323, 20543, 21761, 22980, 24198, 25418, 26637, 27853, 29074, 30292, 31511, 32727, 33947, 35167, 36384, 37602, 38823, 40042, 41259, 42476, 43698, 44914, 46133, 47352, 48571, 49789, 51007, 52228, 53446, 54665, 55882, 57102, 58320, 59539, 60759, 61977, 63194, 64413, 65632, 66852, 68069, 69288, 70507, 71725]
hit2 = 1
CD = 30.0
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
MP = [400, 1500]
无色消耗 = 1
形态 = ["满", "常规"]
def 形态变更(self, 形态, char: Character):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "满":
self.hit0 = 1
self.hit1 = 9
self.hit2 = 1
if 形态 == "常规":
self.hit0 = 1
self.hit1 = 8
self.hit2 = 1
def 装备护石(self, char):
self.power0 = 0
self.power1 = 0
self.power2 = 2.28
self.CDR *= 0.95
class 技能20(主动技能):
名称 = '极·驭剑术(幻剑阵)'
所在等级 = 70
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 5183, 5708, 6235, 6759, 7287, 7812, 8338, 8864, 9390, 9916, 10442, 10969, 11494, 12019, 12546, 13071, 13598, 14123, 14651, 15175, 15701, 16227, 16753, 17278, 17804, 18330, 18854, 19380, 19908, 20433, 20960, 21485, 22011, 22537, 23061, 23589, 24114, 24642, 25167, 25694, 26219, 26744, 27271, 27797, 28323, 28849, 29375, 29901, 30426, 30951]
hit0 = 4
data1 = [0, 20735, 22838, 24943, 27045, 29149, 31252, 33357, 35459, 37564, 39667, 41771, 43872, 45977, 48080, 50184, 52288, 54393, 56495, 58598, 60702, 62806, 64909, 67013, 69117, 71220, 73324, 75426, 77533, 79634, 81738, 83841, 85946, 88048, 90153, 92256, 94361, 96462, 98566, 100670, 102773, 104877, 106982, 109086, 111187, 113292, 115395, 117499, 119602, 121706, 123809]
hit1 = 1
CD = 50.0
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
MP = [800, 1680]
无色消耗 = 2
def 装备护石(self, char):
self.hit0 = 0
self.hit1 = 4
self.power1 = 0.63
class 技能21(主动技能):
名称 = '飓风魔剑'
所在等级 = 75
等级上限 = 50
学习间隔 = 2
等级精通 = 40
# 伤害组成除了本身,还有堆叠的魔剑奥义层数,
data0 = [0, 609, 672, 733, 795, 854, 917, 978, 1040, 1103, 1165, 1227, 1289, 1350, 1412, 1473, 1537, 1598, 1659, 1721, 1784, 1844, 1906, 1968, 2030, 2091, 2153, 2216, 2276, 2338, 2401, 2463, 2525, 2588, 2649, 2711, 2773, 2833, 2894, 2956, 3019, 3081, 3143, 3205, 3266, 3328, 3390, 3453, 3515, 3575, 3637]
hit0 = 40
data1 = [0, 10705, 11791, 12877, 13962, 15048, 16135, 17222, 18307, 19393, 20479, 21566, 22651, 23737, 24822, 25909, 26997, 28080, 29168, 30253, 31340, 32427, 33511, 34597, 35683, 36770, 37854, 38942, 40028, 41114, 42201, 43285, 44371, 45458, 46544, 47629, 48715, 49802, 50889, 51975, 53060, 54147, 55232, 56319, 57404, 58490, 59576, 60664, 61750, 62834, 63922]
hit1 = 1
魔剑层数 = 5
单层倍率 = 0.03
奥义倍率 = 1.15 # 魔剑奥义额外增伤,每层0.03
暗 = 0
CD = 25.0
是否有护石 = 1
MP = [580, 4500]
无色消耗 = 3
形态 = ["5","暗5", "4","暗4", "3","暗3", "2" ,"暗2", "1","暗1", "0","暗0"]
def 形态变更(self, 形态, char: Character):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if "暗" in 形态:
self.暗 = 10
else:
self.暗 = 0
self.魔剑层数 = int(形态.replace('暗',''))
if '飓风魔剑' in char.护石栏:
self.魔剑层数 = min(self.魔剑层数, 3)
self.奥义倍率 = 1 + self.单层倍率 * self.魔剑层数
def 装备护石(self, char):
self.power0 = 1.15
self.power1 = 1.65
self.单层倍率 = 0.05
def 等效百分比(self, **argv):
# 额外计算魔剑奥义伤害
char = argv.get('char', {})
伤害类型 = argv.get('伤害类型', '直伤')
魔剑 = char.get_skill_by_name('魔剑奥义').等效百分比(伤害类型=伤害类型)
return super().等效百分比(**argv)*self.奥义倍率 + 魔剑 * self.魔剑层数 + 魔剑*(0.09+self.等级/100)*self.暗
class 技能22(被动技能):
名称 = '帝皇盟约'
所在等级 = 75
等级上限 = 50
学习间隔 = 3
等级精通 = 40
def 物理攻击力倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.28 + 0.02 * self.等级, 5)
class 技能23(主动技能):
名称 = '极·驭剑术(破剑阵)'
所在等级 = 80
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 1027, 1130, 1235, 1339, 1443, 1547, 1651, 1756, 1860, 1963, 2068, 2171, 2276, 2381, 2483, 2588, 2693, 2797, 2901, 3006, 3109, 3213, 3318, 3421, 3526, 3631, 3733, 3838, 3943, 4046, 4151, 4254, 4358, 4463, 4568, 4671, 4775, 4880, 4983, 5088, 5193, 5295, 5400, 5504, 5608, 5713, 5817, 5921, 6025, 6129]
hit0 = 2
data1 = [0, 6929, 7631, 8334, 9037, 9740, 10442, 11147, 11849, 12552, 13256, 13958, 14661, 15364, 16067, 16769, 17472, 18176, 18879, 19582, 20285, 20988, 21690, 22394, 23096, 23799, 24502, 25205, 25908, 26612, 27315, 28017, 28721, 29423, 30126, 30829, 31532, 32234, 32939, 33642, 34344, 35048, 35750, 36453, 37155, 37859, 38561, 39264, 39968, 40670, 41373]
hit1 = 8
data2 = [0, 7025, 7737, 8451, 9162, 9876, 10589, 11301, 12014, 12727, 13439, 14152, 14864, 15577, 16290, 17002, 17715, 18428, 19140, 19853, 20565, 21278, 21991, 22703, 23416, 24129, 24842, 25554, 26266, 26980, 27692, 28405, 29118, 29829, 30543, 31256, 31967, 32681, 33394, 34106, 34819, 35533, 36244, 36957, 37670, 38383, 39095, 39808, 40521, 41234, 41946]
hit2 = 0
CD = 45.0
是否有护石 = 1
MP = [800, 6000]
无色消耗 = 5
形态 = ["满", "柔化"]
def 形态变更(self, 形态, char: Character):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "柔化" and '极·驭剑术(破剑阵)' not in char.护石栏:
形态 = "满"
if 形态 == "柔化":
self.hit0 = 0
self.hit1 = 0
self.hit2 = 8
if 形态 == "满":
self.hit0 = 2
self.hit1 = 8
self.hit2 = 0
if '极·驭剑术(破剑阵)' in char.护石栏:
self.hit0 = 0
self.hit1 = 0
self.hit2 = 1
self.power2 = 3.35
self.hit3 = 0
def 装备护石(self, char):
self.power3 = 1.34
class 技能24(主动技能):
名称 = '誓约之剑:雷沃汀'
所在等级 = 85
等级上限 = 50
学习间隔 = 5
等级精通 = 40
data0 = [0, 142262, 175249, 208236, 241224, 274213, 307201, 340189, 373179, 406166, 439155, 472143, 505132, 538119, 571107, 604096, 637083, 670074, 703061, 736049, 769037, 802026, 835014, 868000, 900989, 933977, 966965, 999955, 1032943, 1065931, 1098920, 1131907, 1164895, 1197883, 1230872, 1263860, 1296848, 1329838, 1362825, 1395814, 1428802, 1461791, 1494778, 1527766, 1560754, 1593742, 1626730, 1659719, 1692707, 1725695, 1758684]
hit0 = 1
CD = 180.0
MP = [2500, 5000]
无色消耗 = 10
class 技能25(主动技能):
名称 = '极诣·驭剑术:聚魔剑'
所在等级 = 95
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 31032, 34180, 37328, 40478, 43626, 46774, 49921, 53069, 56219, 59369, 62515, 65663, 68812, 71961, 75109, 78257, 81405, 84554, 87703, 90851, 93998, 97146, 100295, 103444, 106592, 109740, 112889, 116037, 119185, 122334, 125482, 128630, 131778, 134925, 138075, 141222, 144371, 147519, 150667, 153816, 156964, 160112, 163261, 166409, 169557, 172706, 175854, 179003, 182151, 185299]
hit0 = 1
data1 = [0, 9095, 10018, 10940, 11863, 12785, 13708, 14630, 15553, 16475, 17399, 18322, 19245, 20169, 21091, 22014, 22936, 23859, 24783, 25704, 26628, 27549, 28472, 29395, 30317, 31240, 32162, 33086, 34007, 34931, 35853, 36776, 37698, 38624, 39546, 40469, 41391, 42314, 43237, 44159, 45082, 46003, 46927, 47850, 48772, 49695, 50619, 51541, 52464, 53386, 54309]
hit1 = 4
data2 = [0, 54574, 60109, 65645, 71180, 76718, 82254, 87791, 93328, 98863, 104399, 109937, 115473, 121009, 126547, 132081, 137618, 143154, 148691, 154228, 159763, 165299, 170837, 176373, 181910, 187446, 192981, 198519, 204055, 209591, 215128, 220664, 226199, 231737, 237274, 242809, 248346, 253883, 259418, 264955, 270490, 276028, 281565, 287100, 292637, 298174, 303709, 309247, 314781, 320318, 325856]
hit2 = 1
CD = 60
MP = [773, 6000]
无色消耗 = 7
class 技能26(被动技能):
名称 = '剑心:魔剑觉醒'
所在等级 = 95
等级上限 = 50
学习间隔 = 3
等级精通 = 40
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.18 + 0.02 * self.等级, 5)
class 技能27(主动技能):
名称 = '誓约之引:万剑之巅'
所在等级 = 100
等级上限 = 50
学习间隔 = 5
等级精通 = 40
data0 = [0, 23156, 28526, 33897, 39265, 44635, 50005, 55375, 60745, 66114, 71483, 76854, 82224, 87593, 92963, 98334, 103701, 109072, 114443, 119811, 125183, 130551, 135920, 141291, 146661, 152032, 157399, 162769, 168141, 173509, 178878, 184249, 189618, 194988, 200359, 205727, 211097, 216467, 221837, 227207, 232575, 237946, 243316, 248685, 254055, 259424, 264794, 270165, 275535, 280905, 286273]
hit0 = 4
data1 = [0, 162099, 199688, 237274, 274863, 312452, 350039, 387628, 425216, 462805, 500393, 537980, 575569, 613156, 650745, 688334, 725920, 763510, 801098, 838687, 876274, 913862, 951452, 989038, 1026628, 1064216, 1101803, 1139393, 1176982, 1214568, 1252157, 1289745, 1327334, 1364920, 1402509, 1440098, 1477686, 1515275, 1552862, 1590450, 1628039, 1665626, 1703215, 1740802, 1778392, 1815980, 1853569, 1891157, 1928745, 1966333, 2003922]
hit1 = 1
data2 = [0, 13894, 17116, 20336, 23558, 26781, 30003, 33225, 36446, 39669, 42890, 46112, 49333, 52555, 55778, 58999, 62222, 65442, 68666, 71887, 75108, 78331, 81551, 84775, 87997, 91218, 94440, 97661, 100883, 104106, 107327, 110548, 113772, 116993, 120213, 123436, 126658, 129880, 133102, 136324, 139544, 142768, 145990, 149213, 152433, 155655, 158878, 162099, 165320, 168543, 171764]
hit2 = 15
CD = 290.0
MP = [4028, 8056]
无色消耗 = 15
class classChange(Character):
def __init__(self, equVersion=""):
self.实际名称 = 'sword_master'
self.名称 = '极诣·驭剑士'
self.角色 = '鬼剑士(女)'
self.角色类型 = '输出'
self.职业 = '驭剑士'
self.武器选项 = ['巨剑', '短剑', '太刀', '钝器']
self.输出类型选项 = ['物理百分比']
self.防具精通属性 = ['力量']
self.类型 = '物理百分比'
self.武器类型 = '巨剑'
self.防具类型 = '轻甲'
技能列表 = []
技能序号 = {}
i = 0
while i >= 0:
try:
tem = eval('技能'+str(i)+'()')
tem.基础等级计算()
技能序号[tem.名称] = i
技能列表.append(tem)
i += 1
except Exception:
i = -1
self.技能栏 = 技能列表
self.技能序号 = 技能序号
self.buff = 1.71
super().__init__(equVersion)
def set_skill_info(self, info, rune_except=[], clothes_pants=[]):
super().set_skill_info(info, rune_except=[
'魔剑奥义'])
def CD倍率计算(self):
super().CD倍率计算()
# 魔剑奥义的CD实际为触发间隔,只享受TP缩减及短剑精通缩减
self.get_skill_by_name('魔剑奥义').短精CDR = self.get_skill_by_name('魔性之短剑精通').CD缩减倍率(self.武器类型)