Files
dcalc/api/core/characters/necro.py
T
2024-11-04 15:00:40 +08:00

792 lines
37 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from core.basic.skill import 技能
from core.basic.character import Character
from core.basic.skill import 主动技能, 被动技能
class 技能0(主动技能):
名称 = '暗魂波'
所在等级 = 5
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [15, 161]
# 三觉后技能数据有轻微变化
data0 = [0, 758, 851, 948, 1039, 1130, 1219, 1312, 1406, 1497, 1586, 1681, 1771, 1866, 1959, 2045, 2144, 2233, 2319, 2417, 2506, 2600, 2691, 2783, 2877, 2964, 3055, 3153, 3240, 3334, 3426, 3517, 3611, 3700, 3793, 3885, 3979, 4072, 4160, 4251, 4348, 4436, 4531, 4621, 4708, 4807, 4899, 4986, 5078, 5169, 5268, 5356, 5447, 5541, 5632, 5722, 5815, 5903, 6001, 6094, 6180, 6274, 6367, 6462, 6550, 6641, 6735, 6823, 6915, 7012, 7100]
hit0 = 4
# 蓄力增伤35%
倍率 = 1.35
CD = 3.5
TP成长 = 0.10
TP上限 = 7
国服特色 = 1
class 技能1(主动技能):
名称 = '诅咒之箭'
所在等级 = 15
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [22, 235]
data0 = [0, 545, 599, 654, 710, 766, 821, 876, 931, 986, 1043, 1099, 1153, 1209, 1264, 1319, 1374, 1431, 1484, 1541, 1595, 1652, 1706, 1764, 1817, 1873, 1928, 1984, 2038, 2093, 2149, 2205, 2260, 2316, 2370, 2424, 2482, 2538, 2593, 2648, 2703, 2757, 2813, 2869, 2923, 2979, 3034, 3090, 3145, 3201, 3256, 3312, 3367, 3423, 3478, 3532, 3588, 3644, 3698, 3755, 3808, 3863, 3921, 3977, 4031, 4087, 4141, 4196, 4252, 4308, 4363]
hit0 = 5
CD = 10
TP成长 = 0.1
TP上限 = 7
国服特色 = 1
class 技能2(主动技能):
名称 = '降临:尼古拉斯'
所在等级 = 15
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [30, 420]
data0 = [0, 113, 122, 135, 145, 158, 170, 182, 192, 205, 215, 229, 238, 251, 261, 274, 282, 294, 306, 319, 329, 342, 351, 365, 375, 388, 398, 410, 422, 435, 445, 456, 467, 480, 491, 503, 514, 525, 538, 549, 561, 572, 583, 596, 607, 618, 629, 640, 652, 664, 676, 687, 698, 710, 722, 734, 745, 756, 768, 780, 790, 803, 813, 826, 837, 850, 859, 872, 883, 896, 906]
hit0 = 4
# CD为测试数据
CD = 2
TP成长 = 0.1
TP上限 = 7
data1 = [0, 223, 246, 270, 292, 316, 339, 362, 386, 407, 430, 454, 477, 500, 523, 546, 567, 590, 614, 637, 659, 683, 706, 728, 752, 774, 798, 821, 844, 868, 890, 914, 937, 960, 984, 1006, 1030, 1053, 1075, 1099, 1121, 1144, 1167, 1191, 1215, 1236, 1259, 1282, 1305, 1330, 1352, 1375, 1395, 1419, 1442, 1466, 1489, 1511, 1535, 1558, 1582, 1605, 1627, 1651, 1674, 1698, 1721, 1742, 1766, 1789, 1812]
hit1 = 0
data2 = [0, 669, 738, 809, 874, 945, 1013, 1083, 1152, 1220, 1290, 1360, 1429, 1499, 1567, 1637, 1703, 1774, 1842, 1912, 1980, 2050, 2120, 2188, 2259, 2327, 2396, 2465, 2532, 2602, 2671, 2742, 2811, 2879, 2949, 3017, 3087, 3156, 3225, 3294, 3364, 3434, 3502, 3571, 3641, 3710, 3778, 3847, 3917, 3986, 4056, 4125, 4193, 4263, 4331, 4400, 4469, 4538, 4607, 4677, 4747, 4816, 4885, 4953, 5022, 5091, 5161, 5228, 5298, 5368, 5438]
hit2 = 0
形态 = ['蜘蛛', '艾克']
def 形态变更(self, 形态, char):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "蜘蛛":
self.hit0 = 4
self.hit1 = 0
self.hit2 = 0
self.CD = 2
if self.TP等级 > 0:
self.power0 = 1.5
if 形态 == "艾克":
self.hit0 = 0
self.hit1 = 1
self.hit2 = 1
self.CD = 6
class 技能3(主动技能):
名称 = '驱使僵尸'
所在等级 = 20
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [30, 420]
# 僵尸自爆(非抓)
data0 = [0, 719, 789, 861, 934, 1008, 1080, 1152, 1227, 1298, 1373, 1442, 1515, 1588, 1663, 1737, 1808, 1880, 1952, 2028, 2098, 2172, 2245, 2318, 2390, 2462, 2535, 2605, 2679, 2749, 2827, 2897, 2971, 3044, 3115, 3189, 3260, 3337, 3409, 3482, 3551, 3625, 3699, 3772, 3843, 3919, 3987, 4061, 4135, 4205, 4279, 4351, 4421, 4498, 4571, 4646, 4715, 4789, 4864, 4937, 5007, 5078, 5152, 5225, 5299, 5372, 5441, 5512, 5586, 5660, 5733]
hit0 = 5
# 僵尸撕咬(抓取--对单)
data1 = [0, 61, 65, 72, 75, 80, 88, 93, 99, 104, 110, 118, 124, 128, 137, 141, 148, 154, 155, 165, 169, 174, 182, 187, 193, 200, 204, 213, 217, 225, 230, 235, 243, 244, 251, 257, 265, 269, 277, 280, 289, 293, 300, 307, 311, 318, 322, 328, 332, 339, 344, 352, 358, 364, 369, 373, 382, 385, 393, 399, 405, 411, 417, 422, 428, 435, 441, 445, 454, 458, 463]
hit1 = 0
data2 = [0, 114, 127, 140, 153, 166, 175, 188, 197, 209, 221, 233, 245, 258, 270, 280, 291, 305, 317, 328, 342, 353, 362, 372, 383, 398, 411, 424, 435, 442, 458, 469, 480, 493, 505, 519, 532, 537, 549, 563, 576, 583, 599, 610, 623, 634, 646, 660, 669, 685, 691, 704, 714, 727, 740, 751, 764, 775, 787, 799, 811, 824, 835, 843, 855, 869, 880, 893, 904, 917, 928]
hit2 = 0
data3 = [0, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99, 101, 103, 105, 107, 109, 111, 113, 115, 117, 119, 121, 123, 125, 127, 129, 131, 133, 135, 137, 139, 141, 143, 145, 147, 149, 151, 153, 155]
hit3 = 0
CD = 8
TP成长 = 0.10
TP上限 = 7
形态 = ["自爆", "撕咬"]
def 形态变更(self, 形态, char):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "自爆":
self.hit0 = 5
self.hit1 = 0
self.hit2 = 0
self.hit3 = 0
if 形态 == "撕咬":
self.hit0 = 5
self.hit1 = 2
self.hit2 = 1
self.hit3 = 1
class 技能4(主动技能):
名称 = '服从'
所在等级 = 20
等级上限 = 20
学习间隔 = 2
等级精通 = 10
是否有伤害 = 0
# 本来还应该有个近战模式 降临:尼古拉斯(蜘蛛斩) 伤害和原尼古拉斯TP无关,只和服从等级相关
# 不过用的太少而且很弱 就忽略掉了
关联技能 = ['降临:尼古拉斯']
# 蜘蛛斩
# data0 = [int(i*1.0) for i in [0, 777, 957, 1138, 1318, 1498, 1679, 1859, 2039, 2220, 2400, 2580, 2761, 2941, 3121, 3302, 3482, 3662, 3843, 4023, 4203]]
# hit0 = 1
# CD = 2
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.0 + 0.04 * self.等级, 5)
class 技能5(被动技能):
名称 = '黑暗之环'
所在等级 = 20
等级上限 = 20
学习间隔 = 2
等级精通 = 10
关联技能 = ['所有']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.1 + 0.01 * self.等级, 5)
class 技能6(主动技能):
名称 = '暗影蛛丝阵'
所在等级 = 25
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [95, 952]
data0 = [0, 436, 480, 523, 565, 611, 655, 698, 744, 785, 832, 876, 918, 963, 1007, 1051, 1095, 1138, 1185, 1228, 1271, 1316, 1360, 1402, 1448, 1492, 1533, 1578, 1623, 1668, 1710, 1754, 1800, 1844, 1886, 1932, 1974, 2021, 2064, 2107, 2152, 2194, 2240, 2284, 2328, 2374, 2417, 2459, 2505, 2548, 2591, 2637, 2678, 2727, 2769, 2812, 2856, 2900, 2945, 2989, 3032, 3077, 3120, 3163, 3209, 3254, 3298, 3340, 3385, 3429, 3473]
hit0 = 19
CD = 20
TP成长 = 0.07
TP上限 = 7
class 技能7(主动技能):
名称 = '死亡之爪'
所在等级 = 25
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [24, 259]
data0 = [0, 3353, 3693, 4033, 4373, 4713, 5054, 5394, 5734, 6074, 6413, 6755, 7095, 7435, 7775, 8115, 8456, 8796, 9136, 9476, 9816, 10156, 10497, 10837, 11177, 11516, 11857, 12198, 12538, 12879, 13218, 13558, 13898, 14239, 14579, 14919, 15259, 15600, 15940, 16280, 16621, 16960, 17300, 17641, 17982, 18321, 18661, 19001, 19342, 19682, 20022, 20362, 20702, 21042, 21383, 21724, 22063, 22403, 22743, 23085, 23424, 23764, 24104, 24444, 24785, 25125, 25466, 25805, 26145, 26485, 26827]
hit0 = 1
CD = 7
TP成长 = 0.10
TP上限 = 7
class 技能8(主动技能):
名称 = '死灵之怨'
所在等级 = 30
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [32, 336]
data0 = [0, 406, 447, 487, 530, 571, 612, 654, 694, 735, 776, 819, 860, 900, 942, 984, 1024, 1066, 1107, 1148, 1189, 1232, 1273, 1313, 1353, 1396, 1437, 1479, 1520, 1561, 1602, 1644, 1687, 1725, 1766, 1809, 1850, 1891, 1933, 1974, 2015, 2056, 2099, 2140, 2179, 2221, 2264, 2306, 2346, 2387, 2427, 2468, 2512, 2553, 2592, 2634, 2677, 2719, 2760, 2800, 2841, 2883, 2924, 2966, 3005, 3047, 3090, 3130, 3172, 3211, 3254]
hit0 = 13
CD = 10
TP成长 = 0.10
TP上限 = 7
class 技能9(主动技能):
名称 = '百鬼夜行'
所在等级 = 30
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [65, 700]
data0 = [0, 356, 391, 428, 465, 500, 536, 574, 608, 645, 683, 715, 751, 787, 823, 860, 895, 933, 969, 1004, 1042, 1078, 1113, 1150, 1187, 1221, 1259, 1295, 1331, 1368, 1402, 1437, 1472, 1510, 1546, 1580, 1619, 1654, 1690, 1729, 1763, 1798, 1837, 1872, 1907, 1946, 1981, 2016, 2048, 2088, 2122, 2160, 2196, 2231, 2268, 2305, 2340, 2378, 2413, 2449, 2486, 2522, 2557, 2595, 2632, 2666, 2698, 2738, 2772, 2808, 2847]
hit0 = 14
CD = 12
TP成长 = 0
TP上限 = 7
# 增加持续时间,hit0变化依次为 15 17 18 20 21 23 24
TP倍率 = [1, 15/14, 17/14, 18/14, 20/14, 21/14, 23/14, 24/14, 26/14 , 26/14]
def TP加成(self):
return self.TP倍率[self.TP等级]
形态 = ["自爆", "引爆"]
def 形态变更(self, 形态, char):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "自爆":
self.power0 = 1.2
if 形态 == "引爆":
self.power0 = 1.0
class 技能10(被动技能):
名称 = '黑魔法书:亡者之魂'
所在等级 = 30
等级上限 = 10
学习间隔 = 2
等级精通 = 1
关联技能 = ['暗魂波', '诅咒之箭', '驱使僵尸', '暗影蛛丝阵', '死亡之爪', '死灵之怨', '百鬼夜行', '降临:暴君巴拉克', '暗击拳', '巴拉克强击',
'杀戮乱舞', '吸魂暗劲波', '巴拉克的野心', '降临:僵尸莱迪娅', '巴拉克的愤怒', '千魂祭', '死灵之缚', '怨噬之沼', '暗黑蛛丝引', '暴君极刑斩', '亡者君临:巴拉克之戮', '亡者之茧', '命运殇痕·摩罗斯之咒']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.21 + 0.015 * self.等级, 5)
class 技能11(主动技能):
名称 = '降临:暴君巴拉克'
所在等级 = 35
等级上限 = 70
学习间隔 = 2
等级精通 = 60
MP = [338, 3702]
data0 = [0, 547, 562, 581, 598, 616, 636, 656, 677, 697, 719, 740, 764, 787, 812, 838, 862, 889, 916, 944, 972, 1004, 1035, 1066, 1100, 1134, 1170, 1202, 1237, 1269, 1304, 1337, 1367, 1406, 1437, 1472, 1505, 1539, 1572, 1608, 1640, 1673, 1708, 1741, 1776, 1809, 1840, 1874, 1911, 1945, 1975, 2011, 2045, 2077, 2110, 2146, 2179, 2211, 2247, 2281, 2314, 2349, 2382, 2417, 2448, 2482, 2515, 2549, 2584, 2618, 2652]
hit0 = 1
data1 = [0, 606, 623, 643, 664, 685, 706, 728, 750, 772, 798, 821, 847, 873, 900, 928, 957, 986, 1017, 1049, 1080, 1115, 1149, 1186, 1221, 1259, 1297, 1336, 1375, 1411, 1447, 1486, 1522, 1562, 1599, 1635, 1672, 1709, 1750, 1785, 1822, 1859, 1897, 1935, 1974, 2011, 2047, 2084, 2122, 2159, 2200, 2234, 2272, 2308, 2347, 2384, 2422, 2459, 2497, 2534, 2569, 2608, 2645, 2684, 2719, 2758, 2796, 2834, 2871, 2908, 2944]
hit1 = 1
data2 = [0, 319, 328, 339, 349, 361, 371, 381, 394, 407, 419, 432, 445, 459, 473, 488, 505, 518, 534, 552, 568, 586, 604, 622, 641, 662, 683, 701, 722, 742, 763, 780, 801, 821, 840, 859, 879, 900, 919, 937, 960, 976, 997, 1017, 1036, 1058, 1075, 1094, 1116, 1134, 1150, 1174, 1194, 1215, 1234, 1252, 1273, 1292, 1312, 1331, 1351, 1371, 1391, 1411, 1429, 1450, 1469, 1490, 1505, 1525, 1545]
hit2 = 5
data3 = [0, 728, 751, 774, 798, 824, 847, 874, 901, 928, 957, 988, 1018, 1050, 1082, 1115, 1150, 1186, 1222, 1259, 1298, 1339, 1380, 1422, 1468, 1512, 1559, 1602, 1649, 1694, 1737, 1782, 1830, 1871, 1915, 1962, 2007, 2051, 2098, 2143, 2187, 2232, 2279, 2323, 2368, 2410, 2456, 2501, 2548, 2589, 2637, 2682, 2726, 2773, 2815, 2860, 2905, 2951, 2995, 3039, 3087, 3131, 3177, 3219, 3266, 3311, 3355, 3401, 3444, 3489, 3536]
hit3 = 1
CD = 1 # 非实际CD
TP成长 = 0.1
TP上限 = 5
是否有护石 = 1
def 装备护石(self, char):
pass
形态 = ["x4", "x3"]
def 形态变更(self, 形态, char):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "x4":
self.hit0 = 1
self.hit1 = 1
self.hit2 = 5
self.hit3 = 1
if 形态 == "x3":
self.hit0 = 1
self.hit1 = 1
self.hit2 = 5
self.hit3 = 0
class 技能12(主动技能):
名称 = '暗击拳'
所在等级 = 35
等级上限 = 1
基础等级 = 1
MP = [338, 3702]
data0 = [0, 1269, 1309, 1348, 1391, 1433, 1477, 1524, 1569, 1620, 1668, 1721, 1773, 1828, 1884, 1944, 2003, 2065, 2130, 2194, 2262, 2332, 2406, 2480, 2555, 2636, 2716, 2795, 2871, 2951, 3027, 3107, 3184, 3262, 3341, 3421, 3499, 3576, 3656, 3731, 3812, 3891, 3967, 4046, 4121, 4205, 4283, 4359, 4439, 4516, 4595, 4672, 4751, 4831, 4906, 4987, 5065, 5143, 5222, 5299, 5380, 5456, 5536, 5612, 5691, 5770, 5848, 5926, 6004, 6084, 6160]
hit0 = 1
data1 = [0, 1620, 1668, 1721, 1773, 1826, 1884, 1941, 2002, 2064, 2127, 2193, 2261, 2332, 2404, 2480, 2556, 2633, 2714, 2801, 2887, 2973, 3068, 3164, 3260, 3359, 3465, 3560, 3666, 3761, 3857, 3962, 4058, 4162, 4257, 4358, 4465, 4560, 4664, 4760, 4856, 4957, 5056, 5162, 5257, 5362, 5458, 5558, 5663, 5759, 5864, 5955, 6055, 6155, 6256, 6357, 6456, 6557, 6658, 6759, 6854, 6953, 7054, 7155, 7255, 7355, 7456, 7556, 7657, 7756, 7852]
hit1 = 0
CD = 3.0
形态 = ["可抓", "非抓"]
def 形态变更(self, 形态, char):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if 形态 == "可抓":
self.hit0 = 1
self.hit1 = 0
if 形态 == "非抓":
self.hit0 = 1
self.hit1 = 1
def MP消耗(self, **argv):
char = argv.get('char', {})
return char.get_skill_by_name("降临:暴君巴拉克").MP消耗(**argv)
class 技能13(主动技能):
名称 = '巴拉克强击'
所在等级 = 35
等级上限 = 1
基础等级 = 1
MP = [338, 3702]
data0 = [0, 2338, 2410, 2484, 2561, 2639, 2724, 2809, 2894, 2986, 3075, 3170, 3266, 3369, 3474, 3581, 3693, 3808, 3925, 4045, 4171, 4300, 4435, 4571, 4711, 4857, 5006, 5152, 5295, 5441, 5583, 5728, 5869, 6014, 6160, 6304, 6452, 6592, 6739, 6880, 7026, 7171, 7314, 7459, 7603, 7750, 7896, 8038, 8184, 8327, 8473, 8613, 8760, 8906, 9047, 9192, 9338, 9482, 9628, 9769, 9916, 10060, 10206, 10347, 10493, 10636, 10782, 10927, 11071, 11214, 11360]
hit0 = 1
CD = 2.0
def MP消耗(self, **argv):
char = argv.get('char', {})
return char.get_skill_by_name("降临:暴君巴拉克").MP消耗(**argv)
class 技能14(主动技能):
名称 = '杀戮乱舞'
所在等级 = 35
等级上限 = 1
基础等级 = 1
MP = [338, 3702]
data0 = [0, 1071, 1102, 1135, 1171, 1208, 1246, 1286, 1324, 1366, 1407, 1450, 1495, 1541, 1591, 1638, 1689, 1743, 1796, 1852, 1910, 1968, 2030, 2091, 2156, 2222, 2290, 2359, 2424, 2488, 2556, 2621, 2686, 2753, 2819, 2884, 2951, 3015, 3082, 3149, 3216, 3280, 3348, 3413, 3481, 3546, 3613, 3680, 3745, 3811, 3878, 3943, 4007, 4076, 4140, 4207, 4275, 4339, 4407, 4472, 4538, 4604, 4671, 4735, 4803, 4867, 4933, 5001, 5067, 5130, 5199]
hit0 = 3
CD = 7.0
国服特色 = 1.05
def MP消耗(self, **argv):
char = argv.get('char', {})
return char.get_skill_by_name("降临:暴君巴拉克").MP消耗(**argv)
# 是否有护石 = 1
def 等效百分比(self, **argv):
char = argv.get('char', {})
if "降临:暴君巴拉克" in char.护石栏:
self.hit0 = 5
self.power0 = 1.2862
return super().等效百分比(**argv)
class 技能15(主动技能):
名称 = '吸魂暗劲波'
所在等级 = 40
等级上限 = 70
学习间隔 = 2
等级精通 = 60
data0 = [0, 1924, 2118, 2313, 2509, 2704, 2899, 3093, 3290, 3485, 3680, 3875, 4070, 4265, 4460, 4657, 4850, 5046, 5241, 5437, 5631, 5826, 6022, 6218, 6412, 6607, 6804, 6997, 7193, 7388, 7584, 7778, 7973, 8169, 8365, 8559, 8754, 8951, 9144, 9340, 9535, 9729, 9925, 10120, 10316, 10511, 10706, 10901, 11098, 11291, 11486, 11682, 11876, 12073, 12267, 12463, 12658, 12853, 13048, 13245, 13438, 13634, 13829, 14023, 14220, 14414, 14610, 14805, 14999, 15196, 15391]
hit0 = 2
data1 = [0, 8665, 9542, 10423, 11302, 12181, 13060, 13938, 14818, 15698, 16576, 17455, 18334, 19214, 20091, 20972, 21851, 22729, 23609, 24487, 25368, 26245, 27126, 28005, 28883, 29763, 30641, 31521, 32400, 33278, 34157, 35037, 35916, 36794, 37674, 38553, 39432, 40312, 41190, 42070, 42948, 43827, 44707, 45585, 46466, 47344, 48223, 49102, 49981, 50860, 51740, 52617, 53497, 54377, 55256, 56135, 57013, 57893, 58773, 59651, 60530, 61409, 62288, 63166, 64047, 64925, 65805, 66684, 67562, 68443, 69320]
hit1 = 1
CD = 35
TP成长 = 0.1
TP上限 = 5
国服特色 = 1.0455
MP = [164, 1376]
无色消耗 = 1
class 技能16(主动技能):
名称 = '巴拉克的野心'
所在等级 = 40
等级上限 = 70
学习间隔 = 2
等级精通 = 60
data0 = [0, 2581, 2842, 3106, 3369, 3628, 3890, 4154, 4415, 4676, 4939, 5203, 5463, 5724, 5987, 6247, 6511, 6774, 7034, 7297, 7559, 7821, 8082, 8344, 8606, 8869, 9130, 9391, 9654, 9917, 10176, 10439, 10702, 10964, 11226, 11487, 11749, 12012, 12275, 12535, 12797, 13061, 13321, 13583, 13845, 14108, 14370, 14631, 14893, 15155, 15418, 15680, 15940, 16202, 16466, 16726, 16989, 17251, 17512, 17775, 18037, 18298, 18560, 18824, 19084, 19346, 19608, 19871, 20132, 20394, 20655]
hit0 = 1
data1 = [0, 11591, 12768, 13943, 15120, 16295, 17471, 18648, 19823, 20999, 22174, 23351, 24527, 25702, 26880, 28056, 29231, 30407, 31585, 32760, 33936, 35112, 36288, 37464, 38639, 39816, 40990, 42166, 43344, 44519, 45695, 46870, 48047, 49223, 50398, 51575, 52750, 53926, 55102, 56279, 57456, 58632, 59808, 60984, 62159, 63335, 64512, 65687, 66863, 68040, 69215, 70392, 71568, 72744, 73918, 75094, 76271, 77446, 78622, 79799, 80974, 82150, 83325, 84503, 85680, 86855, 88032, 89208, 90383, 91559, 92735]
hit1 = 1
CD = 25
TP成长 = 0.1
TP上限 = 5
国服特色 = 1.0457
MP = [164, 1376]
无色消耗 = 1
是否有护石 = 1
def 装备护石(self, char):
self.倍率 *= 1.18 * 1.18
self.CDR *= 0.94
class 技能17(被动技能):
名称 = '巴拉克的盟约'
所在等级 = 40
等级上限 = 10
学习间隔 = 2
等级精通 = 1
关联技能 = ['所有']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.38 + 0.02 * self.等级, 5)
class 技能18(主动技能):
名称 = '降临:僵尸莱迪娅'
所在等级 = 45
等级上限 = 70
学习间隔 = 2
等级精通 = 60
data0 = [0, 742, 817, 892, 966, 1039, 1115, 1193, 1268, 1340, 1417, 1491, 1568, 1642, 1719, 1793, 1867, 1943, 2019, 2093, 2167, 2242, 2317, 2394, 2468, 2545, 2618, 2693, 2770, 2844, 2918, 2995, 3069, 3144, 3219, 3294, 3372, 3446, 3517, 3598, 3670, 3749, 3820, 3898, 3967, 4046, 4122, 4200, 4275, 4344, 4423, 4496, 4574, 4648, 4721, 4797, 4873, 4951, 5023, 5099, 5173, 5249, 5322, 5399, 5475, 5550, 5624, 5697, 5777, 5849, 5927]
hit0 = 30
CD = 45
TP成长 = 0.1
TP上限 = 5
国服特色 = 1.042
MP = [380, 3192]
无色消耗 = 2
CP武器 = False
形态 = ["蓄力", "非蓄"]
def 形态变更(self, 形态, char):
if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0:
形态 = self.形态[0]
if self.CP武器:
形态 = "非蓄"
if 形态 == "蓄力":
self.power0 = 1.3
if 形态 == "非蓄":
self.power0 = 1.0
class 技能19(主动技能):
名称 = '巴拉克的愤怒'
所在等级 = 45
等级上限 = 70
学习间隔 = 2
等级精通 = 60
data0 = [0, 1271, 1401, 1531, 1659, 1787, 1919, 2045, 2175, 2305, 2433, 2563, 2691, 2819, 2950, 3078, 3208, 3338, 3467, 3595, 3724, 3855, 3982, 4110, 4241, 4369, 4498, 4628, 4757, 4886, 5015, 5144, 5272, 5403, 5533, 5662, 5790, 5920, 6047, 6175, 6305, 6434, 6566, 6694, 6822, 6952, 7080, 7208, 7338, 7470, 7598, 7727, 7856, 7984, 8112, 8241, 8369, 8500, 8631, 8758, 8887, 9017, 9146, 9273, 9404, 9534, 9664, 9792, 9921, 10048, 10177]
hit0 = 1
data1 = [0, 1276, 1406, 1534, 1665, 1795, 1925, 2054, 2183, 2313, 2443, 2573, 2702, 2832, 2962, 3090, 3220, 3350, 3481, 3609, 3740, 3869, 3998, 4128, 4258, 4388, 4517, 4648, 4776, 4905, 5037, 5165, 5295, 5423, 5555, 5682, 5811, 5943, 6072, 6201, 6330, 6461, 6591, 6722, 6850, 6979, 7109, 7237, 7368, 7499, 7629, 7757, 7886, 8016, 8146, 8276, 8406, 8536, 8665, 8793, 8923, 9053, 9185, 9314, 9443, 9572, 9701, 9830, 9962, 10092, 10221]
hit1 = 1
data2 = [0, 1081, 1190, 1301, 1408, 1519, 1628, 1739, 1846, 1958, 2066, 2178, 2287, 2396, 2506, 2616, 2724, 2835, 2944, 3054, 3167, 3274, 3384, 3494, 3604, 3712, 3822, 3931, 4039, 4149, 4260, 4369, 4480, 4588, 4700, 4808, 4918, 5027, 5137, 5246, 5356, 5465, 5575, 5686, 5795, 5903, 6015, 6122, 6234, 6342, 6453, 6564, 6673, 6782, 6892, 7003, 7110, 7222, 7330, 7441, 7549, 7660, 7769, 7881, 7988, 8099, 8208, 8317, 8427, 8537, 8645]
hit2 = 4
data3 = [0, 4591, 5058, 5524, 5991, 6457, 6923, 7391, 7856, 8323, 8788, 9256, 9720, 10186, 10653, 11118, 11585, 12052, 12515, 12982, 13449, 13915, 14381, 14848, 15313, 15780, 16243, 16711, 17176, 17644, 18109, 18577, 19041, 19509, 19974, 20439, 20906, 21372, 21836, 22303, 22770, 23234, 23701, 24168, 24634, 25100, 25566, 26033, 26497, 26966, 27429, 27897, 28362, 28829, 29295, 29762, 30225, 30693, 31159, 31624, 32092, 32555, 33024, 33489, 33957, 34420, 34888, 35354, 35821, 36286, 36753]
hit3 = 1
data4 = [0, 11502, 12670, 13838, 15005, 16173, 17340, 18506, 19674, 20841, 22009, 23175, 24343, 25508, 26677, 27844, 29009, 30176, 31345, 32511, 33679, 34847, 36013, 37181, 38349, 39514, 40682, 41849, 43016, 44183, 45352, 46515, 47683, 48851, 50019, 51186, 52354, 53522, 54687, 55853, 57023, 58189, 59356, 60524, 61690, 62856, 64026, 65192, 66357, 67527, 68692, 69860, 71028, 72194, 73362, 74529, 75696, 76863, 78032, 79197, 80365, 81530, 82697, 83866, 85031, 86199, 87367, 88534, 89702, 90867, 92035]
hit4 = 1
CD = 45
TP成长 = 0.1
TP上限 = 5
国服特色 = 1.0455
是否有护石 = 1
MP = [380, 3192]
无色消耗 = 2
def 装备护石(self, char):
self.倍率 *= 1.12 * 1.13
self.CDR *= 0.89
class 技能20(被动技能):
名称 = '屠戮之惧'
所在等级 = 48
等级上限 = 50
学习间隔 = 3
等级精通 = 40
关联技能 = ['所有']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.075 + 0.015 * self.等级, 5)
class 技能21(主动技能):
名称 = '千魂祭'
所在等级 = 50
等级上限 = 50
学习间隔 = 5
等级精通 = 40
data0 = [0, 835, 1027, 1220, 1414, 1608, 1804, 1994, 2188, 2383, 2575, 2769, 2963, 3157, 3351, 3544, 3737, 3931, 4125, 4318, 4513, 4704, 4899, 5091, 5286, 5480, 5674, 5867, 6060, 6254, 6447, 6640, 6834, 7029, 7223, 7414, 7609, 7803, 7996, 8187, 8382, 8576, 8769, 8964, 9158, 9351, 9544, 9738, 9931, 10125, None]
hit0 = 9
data1 = [0, 2893, 3564, 4234, 4908, 5578, 6252, 6922, 7593, 8264, 8937, 9607, 10280, 10949, 11620, 12291, 12961, 13633, 14306, 14976, 15648, 16319, 16989, 17660, 18333, 19003, 19674, 20347, 21017, 21689, 22357, 23029, 23700, 24371, 25045, 25717, 26387, 27059, 27730, 28400, 29070, 29742, 30413, 31085, 31755, 32427, 33098, 33770, 34440, 35111, None]
hit1 = 13
data2 = [0, 18829, 23194, 27563, 31927, 36294, 40659, 45026, 49391, 53760, 58125, 62493, 66857, 71223, 75589, 79955, 84322, 88689, 93056, 97419, 101787, 106152, 110521, 114886, 119253, 123619, 127984, 132349, 136718, 141083, 145450, 149816, 154180, 158547, 162913, 167280, 171647, 176014, 180379, 184746, 189110, 193478, 197844, 202210, 206576, 210942, 215308, 219675, 224041, 228408, None]
hit2 = 1
CD = 145
国服特色 = 1.0437
MP = [881, 7403]
无色消耗 = 5
#
def 技能描述(self, 武器类型):
temp = ''
temp += '降临:尼古拉斯(蜘蛛团/黑蜘蛛), 降临:尼古拉斯(艾克洛索/艾克尼亚) Lv+5<br>'
temp += '降临:暴君巴拉克(平x), 降临:暴君巴拉克(暗击拳), 降临:暴君巴拉克(巴拉克强击),降临:暴君巴拉克(杀戮乱舞)Lv+4'
return temp
class 技能22(主动技能):
名称 = '死灵之缚'
所在等级 = 60
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 1188, 1307, 1429, 1548, 1668, 1792, 1911, 2028, 2149, 2268, 2391, 2511, 2632, 2749, 2871, 2996, 3114, 3234, 3356, 3474, 3594, 3717, 3835, 3956, 4074, 4194, 4316, 4436, 4562, 4681, 4798, 4917, 5041, 5160, 5282, 5400, 5521, 5640, 5763, 5882, 6002, 6124, 6243, 6361, 6487, 6607, 6727, 6844, 6966, 7087]
hit0 = 20
CD = 30
TP成长 = 0.10
TP上限 = 5
国服特色 = 1.0457
是否有护石 = 1
MP = [400, 1120]
无色消耗 = 2
def 装备护石(self, char):
# 实际情况是先是一个4hit+1hit组成;4hit部分占原伤害的30%,1hit部分为原伤害的1.21*0.88
self.倍率 *= 0.3+1.21*0.88
class 技能23(主动技能):
名称 = '怨噬之沼'
所在等级 = 70
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 7594, 8366, 9137, 9906, 10680, 11449, 12220, 12989, 13762, 14532, 15302, 16071, 16844, 17614, 18384, 19157, 19928, 20697, 21467, 22239, 23010, 23779, 24552, 25321, 26092, 26861, 27635, 28405, 29175, 29947, 30717, 31487, 32256, 33029, 33798, 34570, 35343, 36112, 36882, 37652, 38425, 39194, 39964, 40734, 41507, 42278, 43047, 43820, 44589, 45360]
hit0 = 1
data1 = [0, 3795, 4184, 4568, 4953, 5339, 5723, 6108, 6493, 6881, 7267, 7650, 8035, 8421, 8807, 9190, 9579, 9963, 10349, 10733, 11118, 11503, 11888, 12276, 12661, 13046, 13431, 13816, 14200, 14586, 14974, 15358, 15744, 16129, 16513, 16898, 17284, 17671, 18057, 18440, 18826, 19212, 19595, 19981, 20366, 20754, 21138, 21523, 21908, 22294, 22678]
hit1 = 3
data2 = [0, 2531, 2788, 3045, 3300, 3558, 3814, 4073, 4328, 4587, 4842, 5099, 5357, 5613, 5871, 6127, 6386, 6642, 6897, 7156, 7411, 7670, 7925, 8184, 8439, 8696, 8953, 9209, 9468, 9724, 9982, 10238, 10493, 10753, 11008, 11266, 11522, 11781, 12037, 12292, 12550, 12807, 13064, 13320, 13576, 13835, 14090, 14349, 14604, 14864, 15119]
hit2 = 3
data3 = [0, 11393, 12550, 13705, 14864, 16018, 17173, 18331, 19486, 20643, 21797, 22955, 24111, 25265, 26423, 27578, 28737, 29891, 31049, 32203, 33358, 34516, 35670, 36828, 37983, 39137, 40296, 41450, 42608, 43763, 44921, 46076, 47231, 48387, 49543, 50701, 51855, 53013, 54169, 55323, 56481, 57636, 58793, 59949, 61104, 62260, 63415, 64574, 65728, 66886, 68041]
hit3 = 1
CD = 50
TP成长 = 0.10
TP上限 = 5
国服特色 = 1.0457
是否有护石 = 1
MP = [800, 1680]
无色消耗 = 1
def 装备护石(self, char):
self.倍率 *= 1.3
class 技能24(主动技能):
名称 = '暗黑蛛丝引' # 一部分伤害统计时分给尼古拉斯了,约2.32765倍
所在等级 = 75
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 8400, 9256, 10106, 10954, 11810, 12660, 13517, 14364, 15219, 16072, 16922, 17776, 18625, 19481, 20329, 21185, 22036, 22889, 23742, 24592, 25446, 26298, 27151, 28002, 28857, 29705, 30561, 31412, 32262, 33118, 33966, 34821, 35672, 36526, 37377, 38227, 39083, 39935, 40787, 41637, 42490, 43343, 44195, 45047, 45899, 46752, 47603, 48456, 49309, 50162]
hit0 = 1
data1 = [0, 11200, 12341, 13473, 14607, 15747, 16882, 18021, 19155, 20294, 21429, 22560, 23701, 24836, 25977, 27107, 28247, 29381, 30521, 31657, 32789, 33928, 35060, 36203, 37334, 38475, 39609, 40750, 41881, 43016, 44157, 45290, 46429, 47561, 48702, 49836, 50969, 52110, 53244, 54382, 55517, 56655, 57790, 58927, 60062, 61200, 62336, 63471, 64609, 65744, 66881]
hit1 = 1
data2 = [0, 1401, 1542, 1685, 1828, 1967, 2111, 2252, 2395, 2535, 2680, 2823, 2963, 3105, 3247, 3388, 3529, 3673, 3813, 3956, 4100, 4241, 4384, 4525, 4667, 4808, 4951, 5091, 5235, 5378, 5517, 5662, 5804, 5946, 6086, 6230, 6373, 6512, 6656, 6798, 6939, 7081, 7224, 7365, 7508, 7650, 7792, 7934, 8075, 8217, 8359]
hit2 = 6
CD = 20
国服特色 = 1.0444
是否有护石 = 1
MP = [580, 4500]
无色消耗 = 3
def 装备护石(self, char):
self.hit0 = 0
self.hit1 = 0
self.power2 = 4.53
self.CDR *= 0.9
class 技能25(被动技能):
名称 = '亡魂之息'
所在等级 = 75
等级上限 = 50
学习间隔 = 3
等级精通 = 40
关联技能 = ['降临:尼古拉斯', '驱使僵尸', '暗影蛛丝阵', '死亡之爪', '死灵之怨', '百鬼夜行',
'降临:暴君巴拉克', '暗击拳', '巴拉克强击',
'杀戮乱舞', '吸魂暗劲波', '巴拉克的野心', '降临:僵尸莱迪娅',
'巴拉克的愤怒', '千魂祭', '死灵之缚', '怨噬之沼', '暗黑蛛丝引', '暴君极刑斩', '亡者君临:巴拉克之戮', '亡者之茧', '命运殇痕·摩罗斯之咒']
关联技能1 = ['暗魂波', '诅咒之箭']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.16 + 0.02 * self.等级, 5)
def 加成倍率1(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.31 + 0.02 * self.等级, 5)
class 技能26(主动技能):
名称 = '暴君极刑斩'
所在等级 = 80
等级上限 = 50
学习间隔 = 2
等级精通 = 40
data0 = [0, 62747, 69113, 75478, 81844, 88209, 94575, 100941, 107307, 113673, 120038, 126404, 132770, 139135, 145500, 151866, 158231, 164599, 170963, 177330, 183693, 190060, 196426, 202791, 209158, 215522, 221890, 228253, 234620, 240984, 247351, 253716, 260082, 266448, 272812, 279180, 285545, 291911, 298276, 304642, 311007, 317372, 323738, 330105, 336470, 342836, 349202, 355567, 361932, 368298, 374664]
hit0 = 1
CD = 45
国服特色 = 1.0457
是否有护石 = 1
MP = [800, 6000]
无色消耗 = 5
def 装备护石(self, char):
self.倍率 *= 1.31
class 技能27(主动技能):
名称 = '亡者君临:巴拉克之戮'
所在等级 = 85
等级上限 = 40
学习间隔 = 5
等级精通 = 30
data0 = [0, 27576, 33972, 40364, 46760, 53157, 59550, 65947, 72340, 78735, 85128, 91524, 97922, 104315, 110710, 117103, 123498, 129893, 136285, 142683, 149079, 155472, 161868, 168261, 174656, 181049, 187448, 193842, 200236, 206632, 213024, 219420, 225815, 232211, 238605, 245000, 251393, 257789, 264183, 270578, 276971, 283368, 289763, 296157, 302552, 308946, 315343, 321737, 328132, 334526, 340921]
hit0 = 1
data1 = [0, 3759, 4631, 5501, 6373, 7244, 8116, 8990, 9862, 10734, 11606, 12474, 13346, 14219, 15091, 15962, 16833, 17705, 18577, 19449, 20321, 21191, 22063, 22935, 23807, 24680, 25554, 26424, 27295, 28166, 29038, 29910, 30779, 31651, 32523, 33395, 34267, 35139, 36009, 36882, 37754, 38626, 39498, 40369, 41240, 42112, 42984, 43856, 44728, 45599, 46471]
hit1 = 11
data2 = [0, 68943, 84931, 100919, 116906, 132895, 148879, 164866, 180855, 196841, 212830, 228816, 244802, 260790, 276777, 292766, 308752, 324739, 340728, 356714, 372699, 388688, 404674, 420663, 436650, 452638, 468626, 484609, 500597, 516585, 532571, 548561, 564548, 580535, 596523, 612506, 628494, 644484, 660470, 676458, 692446, 708433, 724419, 740406, 756394, 772380, 788368, 804355, 820342, 836330, 852316]
hit2 = 1
国服特色 = 1.0457
CD = 180
MP = [1500, 5000]
无色消耗 = 10
class 技能28(被动技能):
名称 = '冥河之钥'
所在等级 = 95
等级上限 = 40
学习间隔 = 3
等级精通 = 30
关联技能 = ['所有']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.18 + 0.02 * self.等级, 5)
class 技能29(主动技能):
名称 = '亡者之茧'
所在等级 = 95
等级上限 = 40
学习间隔 = 2
等级精通 = 30
data0 = [0, 7283, 8023, 8761, 9498, 10240, 10976, 11716, 12455, 13195, 13933, 14671, 15411, 16151, 16888, 17628, 18365, 19105, 19844, 20582, 21321, 22059, 22800, 23539, 24276, 25016, 25756, 26493, 27232, 27970, 28711, 29449, 30188, 30927, 31664, 32405, 33144, 33883, 34620, 35361, 36099, 36837, 37576, 38316, 39056, 39793, 40532, 41272, 42010, 42749, 43487]
hit0 = 5
data1 = [0, 84970, 93589, 102208, 110828, 119449, 128070, 136689, 145310, 153930, 162549, 171170, 179789, 188412, 197031, 205650, 214271, 222893, 231511, 240131, 248751, 257372, 265991, 274611, 283230, 291853, 300472, 309092, 317712, 326331, 334954, 343573, 352193, 360812, 369432, 378054, 386673, 395293, 403914, 412532, 421152, 429772, 438395, 447013, 455634, 464253, 472877, 481495, 490113, 498734, 507354]
hit1 = 1
国服特色 = 1.0455
CD = 60.0
MP = [1066, 8000]
无色消耗 = 7
class 技能30(主动技能):
名称 = '命运殇痕·摩罗斯之咒'
所在等级 = 100
等级上限 = 40
学习间隔 = 5
等级精通 = 30
data0 = [0, 408438, 503153, 597863, 692574, 787284, 881995, 976708, 1071419, 1166130, 1260840, 1355550, 1450264, 1544975, 1639685, 1734396, 1829106, 1923820, 2018532, 2113242, 2207951, 2302662, 2397376, 2492087, 2586798, 2681509, 2776219, 2870932, 2965643, 3060354, 3155063, 3249774, 3344488, 3439198, 3533909, 3628621, 3723330, 3818043, 3912755, 4007465, 4102175, 4196885, 4291600, 4386311, 4481020, 4575733, 4670441, 4765155, 4859867, 4954578, 5049288]
hit0 = 1
CD = 290.0
国服特色 = 1.0448
MP = [4027, 12888]
无色消耗 = 15
class 技能31(被动技能):
名称 = '手杖精通'
所在等级 = 15
等级精通 = 1
等级上限 = 1
学习间隔 = 1
冷却关联技能 = ['所有']
非冷却关联技能 = ['千魂祭', '亡者君临:巴拉克之戮', '命运殇痕·摩罗斯之咒']
def CD缩减倍率(self, 武器类型):
if 武器类型 == '手杖' and self.等级 > 0:
return 0.9
else:
return 1.0
class classChange(Character):
def __init__(self, equVersion=""):
self.实际名称 = 'necro'
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 = 2.14
super().__init__(equVersion)
def set_skill_info(self, info, rune_except=[], clothes_pants=[]):
super().set_skill_info(info, rune_except=[
'降临:暴君巴拉克', '杀戮乱舞', '巴拉克强击', '暗击拳'],)
def 职业特殊计算(self):
暴君巴拉克 = self.get_skill_by_name("降临:暴君巴拉克")
等级 = 暴君巴拉克.等级
TP = 暴君巴拉克.TP等级
杀戮乱舞 = self.get_skill_by_name("杀戮乱舞")
杀戮乱舞.等级 = 等级
杀戮乱舞.等级上限 = 70
杀戮乱舞.TP上限 = 5
杀戮乱舞.TP成长 = 0.1
杀戮乱舞.TP等级 = TP
巴拉克强击 = self.get_skill_by_name("巴拉克强击")
巴拉克强击.等级 = 等级
巴拉克强击.等级上限 = 70
巴拉克强击.TP上限 = 5
巴拉克强击.TP成长 = 0.1
巴拉克强击.TP等级 = TP
暗击拳 = self.get_skill_by_name("暗击拳")
暗击拳.等级 = 等级
暗击拳.等级上限 = 70
暗击拳.TP上限 = 5
暗击拳.TP成长 = 0.1
暗击拳.TP等级 = TP