Files
dcalc/Characters/重霄·漫游枪手·女.py
2024-11-04 14:45:20 +08:00

553 lines
27 KiB
Python
Raw Permalink 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 PublicReference.carry.base import *
class 职业主动技能(主动技能):
技能施放时间 = 0.0
脱手 = 1
data0 = []
data1 = []
data2 = []
data3 = []
data4 = []
data5 = []
data6 = []
def 等效百分比(self, 武器类型):
等效倍率 = 0.0
if len(self.data0) >= self.等级 and len(self.data0) > 0:
等效倍率 += self.data0[self.等级] * self.攻击次数
if len(self.data1) >= self.等级 and len(self.data1) > 0:
等效倍率 += self.data1[self.等级] * self.攻击次数2
if len(self.data2) >= self.等级 and len(self.data2) > 0:
等效倍率 += self.data2[self.等级] * self.攻击次数3
if len(self.data3) >= self.等级 and len(self.data3) > 0:
等效倍率 += self.data3[self.等级] * self.攻击次数4
if len(self.data4) >= self.等级 and len(self.data4) > 0:
等效倍率 += self.data4[self.等级] * self.攻击次数5
if len(self.data5) >= self.等级 and len(self.data5) > 0:
等效倍率 += self.data5[self.等级] * self.攻击次数6
if len(self.data6) >= self.等级 and len(self.data6) > 0:
等效倍率 += self.data6[self.等级] * self.攻击次数7
return 等效倍率 * (1 + self.TP成长 * self.TP等级) * self.倍率
class 技能0(职业主动技能):
名称 = '烟尘弹'
所在等级 = 10
等级上限 = 60
基础等级 = 48
攻击次数 = 6
CD = 6
data0 =[0,406, 447, 488, 529, 570, 612, 653, 694, 735, 776, 817, 858, 900, 941, 982, 1023, 1064, 1105, 1146, 1188, 1229, 1270, 1311, 1352, 1394, 1435, 1477, 1518, 1559, 1600, 1641, 1682, 1723, 1765, 1806, 1847, 1888, 1929, 1970, 2011, 2053, 2094, 2135, 2176, 2217, 2258, 2299, 2342, 2383, 2424, 2465, 2506, 2547, 2588, 2630, 2671, 2712, 2753, 2794, 2835, 2876, 2918, 2959, 3000, 3041, 3082, 3123, 3164, 3207, 3248]
TP成长 = 0.08
TP上限 = 7
class 技能1(职业主动技能):
名称 = '刺踢'
所在等级 = 15
等级上限 = 60
基础等级 = 46
# 物理攻击力:<data0>%
data0 = [int(i*1.235) for i in [0, 2321, 2556, 2793, 3027, 3262, 3499, 3733, 3970, 4205, 4439, 4676, 4912, 5149, 5383, 5618, 5855, 6089, 6326, 6561, 6795, 7032, 7267, 7504, 7738, 7973, 8210, 8444, 8681, 8916, 9154, 9389, 9623, 9860, 10095, 10331, 10566, 10801, 11037, 11272, 11508, 11744, 11978, 12215, 12450, 12685, 12921, 13156, 13391, 13627, 13863, 14099, 14333, 14569, 14805, 15040, 15275, 15511, 15746, 15982, 16218, 16452, 16688, 16924, 17160, 17395, 17630, 17867, 18103, 18338, 18574]]
CD = 4.4
TP成长 = 0.08
TP上限 = 5
class 技能2(职业主动技能):
名称 = '致命射击'
所在等级 = 15
等级上限 = 60
基础等级 = 46
# 基础 = 1281.30
# 成长 = 144.70
CD = 6.2
TP成长 = 0.1
TP上限 = 5
data0 = [int(i*1.193) for i in [0, 1599, 1760, 1923, 2085, 2248, 2409, 2572, 2734, 2896, 3058, 3221, 3382, 3545, 3707, 3870, 4031, 4194, 4356, 4518, 4680, 4843, 5004, 5167, 5329, 5492, 5653, 5816, 5978, 6140, 6302, 6465, 6626, 6789, 6951, 7114, 7275, 7438, 7600, 7762, 7924, 8087, 8248, 8411, 8573, 8735, 8897, 9060, 9222, 9384, 9546, 9709, 9870, 10033, 10195, 10357, 10519, 10682, 10845, 11006, 11169, 11331, 11492, 11655, 11818, 11979, 12142, 12304, 12467, 12628, 12791]]
攻击次数 = 1
class 技能3(被动技能):
名称 = '左轮奥义'
所在等级 = 15
等级上限 = 20
基础等级 = 10
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.0 + 0.02 * self.等级, 5)
def 物理攻击力倍率(self, 武器类型):
return self.加成倍率(武器类型)
class 技能4(被动技能):
名称 = '花式枪术'
所在等级 = 20
等级上限 = 20
基础等级 = 10
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
if self.等级 <= 10:
return round(1 + 0.01 * self.等级, 5)
else:
return round(1.1 + 0.02 * (self.等级 - 10), 5)
class 技能5(主动技能):
名称 = '锁链截击'
所在等级 = 25
学习间隔 = 3
SP消耗 = 25
等级上限 = 60
学习上限 = 50
基础等级 = min(int((105 - 所在等级) / 学习间隔 + 1), 学习上限)
CD = 5.0
data = [
# 0 第1击多段攻击力 : <data0>%
[int(i*1.0) for i in [0, 556, 645, 734, 822, 911, 1000, 1089, 1177, 1266, 1355, 1444, 1532, 1621, 1710, 1799, 1887, 1976, 2065, 2154, 2242, 2331, 2420, 2509, 2597, 2686, 2775, 2863, 2952, 3041,
3130, 3218, 3307, 3396, 3485, 3573, 3662, 3751, 3840, 3928, 4017, 4106, 4195, 4283, 4372, 4461, 4550, 4638, 4727, 4816, 4905, 4993, 5082, 5171, 5260, 5348, 5437, 5526, 5615, 5703, 5792]],
# 1 第2击攻击力 : <data1>%
[int(i*1.0) for i in [0, 834, 968, 1101, 1234, 1367, 1500, 1633, 1766, 1899, 2033, 2166, 2299, 2432, 2565, 2698, 2831, 2964, 3097, 3231, 3364, 3497, 3630, 3763, 3896, 4029, 4162, 4295, 4429,
4562, 4695, 4828, 4961, 5094, 5227, 5360, 5494, 5627, 5760, 5893, 6026, 6159, 6292, 6425, 6558, 6692, 6825, 6958, 7091, 7224, 7357, 7490, 7623, 7757, 7890, 8023, 8156, 8289, 8422, 8555, 8688]],
# 2 第3击攻击力 : <data2>%
[int(i*1.0) for i in [0, 834, 968, 1101, 1234, 1367, 1500, 1633, 1766, 1899, 2033, 2166, 2299, 2432, 2565, 2698, 2831, 2964, 3097, 3231, 3364, 3497, 3630, 3763, 3896, 4029, 4162, 4295, 4429,
4562, 4695, 4828, 4961, 5094, 5227, 5360, 5494, 5627, 5760, 5893, 6026, 6159, 6292, 6425, 6558, 6692, 6825, 6958, 7091, 7224, 7357, 7490, 7623, 7757, 7890, 8023, 8156, 8289, 8422, 8555, 8688]],
]
# index: 0 1 2
rate = [1.000, 1.000, 1.000]
hits = [5.000, 1.000, 1.000]
def 等效百分比(self, 武器类型):
sum = 0
for i in range(len(self.hits)):
sum += self.data[i][self.等级] * self.rate[i] * self.hits[i]
return self.倍率 * sum
"""
数据描述(已匹配):
第1击多段攻击力 : <data0>%
第1击多段攻击间隔 : 0.2秒
第2击攻击力 : <data1>%
第3击攻击力 : <data2>%
技能描述:
使枪刃往垂直方向旋转, 并聚集周围的敌人。 施放技能时, 若再次激活技能键, 则可以将敌人推开; 若此时第二次激活技能键, 则可以将推开的敌人吸附到身边。
#95被动新增:
锁链截击
删除第一打的多段攻击力,使用时发动2,3打后向前方射击.
射击攻击力为1打多段攻击力的一定比率.
"""
class 技能6(职业主动技能):
名称 = '音速劫击'
所在等级 = 30
等级上限 = 60
基础等级 = 38
CD = 4.4
TP成长 = 0.1
TP上限 = 5
data0 = [int(i*1.193) for i in [0, 1199, 1321, 1443, 1564, 1686, 1808, 1929, 2051, 2172, 2294, 2417, 2538, 2660, 2782, 2903, 3025, 3146, 3268, 3389, 3511, 3634, 3755, 3877, 3999, 4120, 4242, 4363, 4485, 4607, 4728, 4851, 4972, 5094, 5216, 5337, 5459, 5580, 5702, 5824, 5945, 6068, 6190, 6311, 6433, 6554, 6676, 6797, 6919, 7041, 7162, 7285, 7407, 7528, 7650, 7771, 7893, 8015, 8136, 8258, 8379, 8502, 8624, 8745, 8867, 8988, 9110, 9232, 9353, 9475, 9596]]
攻击次数 = 3
"""
#95被动新增:
音速截击
突进攻击不再浮空,在突进攻击完成后向后射击.
射击攻击力为突进攻击力的一定比率.
"""
class 技能7(主动技能):
名称 = '致命回射'
所在等级 = 30
等级上限 = 1
基础等级 = 1
CD = 12.5
class 技能8(职业主动技能):
名称 = '枪舞'
所在等级 = 35
等级上限 = 60
基础等级 = 36
data0 = [int(i*1.193) for i in [0, 273, 301, 329, 357, 384, 412, 440, 468, 496, 523, 551, 579, 607, 635, 662, 690, 718, 746, 774, 801, 829, 857, 885, 913, 940, 968, 996, 1024, 1051, 1079, 1107, 1135, 1163, 1190, 1218, 1246, 1274, 1302, 1329, 1357, 1385, 1413, 1441, 1468, 1496, 1524, 1552, 1580, 1607, 1635, 1663, 1692, 1720, 1747, 1775, 1803, 1831, 1859, 1886, 1914, 1942, 1970, 1998, 2025, 2053, 2081, 2109, 2137, 2164, 2192]]
攻击次数 = 20
data1 = [int(i*1.193) for i in [0, 486, 536, 586, 635, 684, 734, 783, 833, 882, 931, 981, 1031, 1079, 1129, 1179, 1227, 1277, 1327, 1376, 1425, 1475, 1524, 1574, 1624, 1672, 1722, 1772, 1822, 1870, 1920, 1970, 2018, 2068, 2118, 2167, 2216, 2266, 2315, 2365, 2414, 2463, 2513, 2563, 2611, 2661, 2711, 2760, 2809, 2859, 2908, 2958, 3007, 3057, 3106, 3156, 3205, 3254, 3304, 3354, 3402, 3452, 3502, 3550, 3600, 3650, 3699, 3748, 3798, 3847, 3897]]
攻击次数2 = 9
CD = 17.6
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
护石选项 = ['魔界', '圣痕']
def 装备护石(self, x):
if x == 0:
self.CD *= 0.9
self.攻击次数 = 0
self.攻击次数2 *= (2 * 1.39)
elif x == 1:
self.CD *= 0.9
self.攻击次数 = 0
self.攻击次数2 *= (2 * 1.49)
class 技能9(职业主动技能):
名称 = '移动射击'
所在等级 = 35
等级上限 = 60
基础等级 = 36
data0 = [int(i*1.140) for i in [0, 487, 535, 585, 634, 683, 733, 782, 832, 881, 930, 980, 1030, 1078, 1128, 1178, 1227, 1276, 1325, 1375, 1424, 1473, 1523, 1573, 1621, 1671, 1721, 1770, 1819, 1868, 1918, 1968, 2016, 2066, 2116, 2164, 2214, 2264, 2313, 2362, 2412, 2461, 2511, 2559, 2609, 2659, 2707, 2757, 2807, 2856, 2905, 2955, 3004, 3054, 3102, 3152, 3202, 3252, 3300, 3350, 3399, 3448, 3498, 3547, 3597, 3646, 3695, 3745, 3795, 3843, 3893]]
攻击次数 = 30
CD = 24.3
TP成长 = 0.10
TP上限 = 5
class 技能10(职业主动技能):
名称 = '多重射击'
所在等级 = 40
等级上限 = 60
基础等级 = 33
data0 = [int(i*1.300) for i in [0, 2080, 2291, 2501, 2713, 2923, 3135, 3346, 3556, 3768, 3978, 4190, 4401, 4611, 4823, 5034, 5245, 5456, 5666, 5878, 6089, 6300, 6511, 6722, 6933, 7144, 7356, 7566, 7777, 7988, 8199, 8411, 8621, 8832, 9044, 9254, 9466, 9676, 9887, 10099, 10309, 10521, 10731, 10942, 11154, 11364, 11576, 11787, 11997, 12209, 12419, 12631, 12842, 13052, 13264, 13475, 13686, 13897, 14107, 14319, 14530, 14741, 14952, 15163, 15374, 15585, 15797, 16007, 16218, 16429, 16640]]
攻击次数 = 5
CD = 19.8
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
护石选项 = ['魔界', '圣痕']
def 装备护石(self, x):
if x == 0:
self.倍率 = 1.18
elif x == 1:
self.倍率 = 1.27
class 技能11(职业主动技能):
名称 = '双鹰回旋'
所在等级 = 45
等级上限 = 60
基础等级 = 31
# 第1次物理攻击力:<data0>%
data0 = [int(i*1.0) for i in [0, 519, 571, 624, 676, 729, 782, 834, 887, 940, 992, 1045, 1097, 1151, 1203, 1255, 1308, 1361, 1414, 1466, 1518, 1572, 1624, 1677, 1729, 1783, 1835, 1887, 1940, 1993, 2046, 2098, 2150, 2204,
2256, 2309, 2361, 2415, 2467, 2519, 2572, 2625, 2678, 2730, 2782, 2836, 2888, 2940, 2993, 3046, 3099, 3151, 3203, 3257, 3309, 3362, 3414, 3468, 3520, 3572, 3625, 3678, 3731, 3783, 3835, 3889, 3941, 3994, 4046, 4100, 4152]]
# 第2次物理攻击力:<data1>%
data1 = [int(i*1.0) for i in [0, 530, 583, 637, 691, 745, 798, 852, 907, 960, 1014, 1067, 1121, 1176, 1229, 1283, 1336, 1390, 1445, 1498, 1552, 1605, 1659, 1714, 1767, 1821, 1874, 1928, 1983, 2036, 2090, 2143, 2197, 2251,
2305, 2359, 2412, 2466, 2520, 2574, 2628, 2681, 2735, 2789, 2843, 2896, 2950, 3004, 3058, 3112, 3165, 3219, 3273, 3327, 3381, 3434, 3488, 3543, 3596, 3650, 3703, 3757, 3812, 3865, 3919, 3972, 4026, 4081, 4134, 4188, 4241]]
# 第3次物理攻击力:<data2>%
data2 = [int(i*1.0) for i in [0, 562, 619, 676, 733, 790, 847, 904, 962, 1019, 1076, 1133, 1190, 1247, 1303, 1360, 1417, 1474, 1532, 1589, 1646, 1703, 1760, 1817, 1874, 1931, 1988, 2046, 2103, 2160, 2217, 2274, 2331, 2388,
2444, 2501, 2559, 2616, 2673, 2730, 2787, 2844, 2901, 2958, 3015, 3073, 3130, 3187, 3244, 3301, 3358, 3415, 3472, 3530, 3585, 3643, 3700, 3757, 3814, 3871, 3928, 3985, 4042, 4100, 4157, 4214, 4271, 4328, 4385, 4442, 4499]]
攻击次数 = 14
攻击次数2 = 18
攻击次数3 = 32
CD = 44.6
TP成长 = 0.10
TP基础 = 5
TP上限 = 5
是否有护石 = 1
护石选项 = ['魔界', '圣痕']
def 装备护石(self, x):
if x == 0:
self.攻击次数 = 0
self.攻击次数2 = 24
self.攻击次数3 = 46
# self.倍率 *= 1.15
# self.倍率 /= 0.8
elif x == 1:
self.攻击次数 = 0
self.data1 = [int(i*1.2) for i in self.data1]
self.攻击次数2 = 24
self.攻击次数3 = 46
class 技能12(被动技能):
名称 = '隐匿切割'
所在等级 = 48
等级上限 = 40
基础等级 = 20
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.065 + 0.02 * self.等级, 5)
class 技能13(职业主动技能):
名称 = '血腥狂欢'
所在等级 = 50
等级上限 = 40
基础等级 = 12
# 向前斩击物理攻击力:<data0>%
data0 = [int(i*1.193) for i in [0, 2029, 2500, 2970, 3440, 3911, 4382, 4852, 5323, 5793, 6264, 6735, 7205, 7675, 8146, 8617, 9087, 9558, 10028, 10499, 10969, 11440, 11912, 12383, 12853, 13323, 13794, 14265, 14736, 15205, 15676, 16147, 16618, 17087, 17558, 18029, 18500, 18971, 19440, 19911, 20382]]
# 该次数存疑
攻击次数 = 24
# 最后一击攻击力:<data1>%
data1 = [int(i*1.193) for i in [0, 6019, 7415, 8811, 10207, 11603, 12998, 14395, 15790, 17187, 18583, 19977, 21374, 22770, 24167, 25562, 26958, 28353, 29749, 31146, 32542, 33938, 35334, 36728, 38125, 39521, 40918, 42313, 43708, 45105, 46500, 47897, 49293, 50689, 52084, 53480, 54876, 56272, 57669, 59063, 60459]]
攻击次数2 = 1
CD = 145
class 技能14(职业主动技能):
名称 = '鲜血劫击'
所在等级 = 60
等级上限 = 40
基础等级 = 23
# 上升物理攻击力:<data0>%
data0 = [int(i*1.292) for i in [0, 7572, 8341, 9109, 9878, 10646, 11413, 12182, 12950, 13719, 14487, 15256, 16023, 16792, 17560, 18329, 19097, 19865, 20634, 21401, 22170, 22938, 23707, 24475, 25244, 26011, 26780, 27548, 28316, 29085, 29852, 30621, 31389, 32158, 32926, 33695, 34462, 35231, 35999, 36768, 37536, 38304, 39072, 39840, 40609, 41377, 42146, 42914, 43682, 44450, 45219, 45987, 46755, 47524, 48291, 49060, 49828, 50597, 51365, 52134, 52901, 53670, 54438, 55206, 55975, 56742, 57511, 58279, 59048, 59816, 60585]]
# [新月斩击]物理攻击力:<data1>%
data1 = [int(i*1.292) for i in [0, 8485, 9345, 10205, 11066, 11927, 12788, 13649, 14509, 15370, 16231, 17092, 17953, 18814, 19674, 20534, 21395, 22256, 23117, 23978, 24839, 25700, 26561, 27421, 28282, 29142, 30003, 30864, 31725, 32585, 33446, 34307, 35168, 36029, 36890, 37751, 38610, 39471, 40332, 41193, 42054, 42915, 43776, 44636, 45497, 46358, 47219, 48079, 48940, 49801, 50661, 51522, 52383, 53244, 54105, 54966, 55827, 56688, 57547, 58408, 59269, 60130, 60991, 61852, 62712, 63573, 64434, 65295, 66156, 67017, 67877]]
攻击次数 = 1
攻击次数2 = 1
CD = 25.0
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
护石选项 = ['魔界', '圣痕']
def 装备护石(self, x):
if x == 0:
self.攻击次数 += 1.47+0.25
self.攻击次数2 = 0
# self.倍率 *= 1.25
elif x == 1:
self.攻击次数 += 1.47+0.44
self.攻击次数2 = 0
# self.倍率 *= 1.44
class 技能15(职业主动技能):
名称 = '压制射击'
所在等级 = 70
等级上限 = 40
基础等级 = 18
# 基础 = 1254.33
# 成长 = 141.67
# 基础2 = 2789.17
# 成长2 = 314.83
# 前方乱射攻击力:<data0>%
data0 = [int(i*1.193) for i in [0, 1638, 1803, 1969, 2136, 2301, 2469, 2636, 2801, 2968, 3134, 3300, 3466, 3632, 3798, 3965, 4130, 4297, 4462, 4629, 4796, 4962, 5128, 5295, 5460, 5627, 5793, 5959, 6125, 6291, 6457, 6624, 6789, 6956, 7121, 7289, 7456, 7621, 7788, 7954, 8120]]
# 最后射击攻击力:<data1>%
data1 = [int(i*1.193) for i in [0, 3641, 4009, 4379, 4747, 5118, 5487, 5856, 6225, 6595, 6964, 7334, 7702, 8073, 8441, 8810, 9181, 9549, 9919, 10287, 10658, 11027, 11396, 11766, 12135, 12504, 12874, 13243, 13613, 13981, 14350, 14721, 15089, 15459, 15827, 16198, 16567, 16936, 17306, 17675, 18044]]
攻击次数 = 20
攻击次数2 = 1
CD = 50.0
TP成长 = 0.10
TP上限 = 5
是否有护石 = 1
护石选项 = ['魔界', '圣痕']
def 装备护石(self, x):
if x == 0:
self.攻击次数 *= 1.185
self.攻击次数2 *= 1.50
elif x == 1:
self.攻击次数 *= 1.185
self.攻击次数2 *= 2.30
class 技能16(被动技能):
名称 = '枪刃改良'
所在等级 = 75
等级上限 = 40
基础等级 = 11
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.22 + 0.02 * self.等级, 5)
class 技能17(职业主动技能):
名称 = '死亡锁链'
所在等级 = 75
等级上限 = 40
基础等级 = 11
# 快速射击攻击力:<data0>%
data0 = [int(i*1.293) for i in [0, 5314, 6161, 7009, 7855, 8703, 9551, 10398, 11246, 12093, 12941, 13787, 14634, 15481, 16329, 17176, 18024, 18870, 19718, 20565, 21413, 22260, 23108, 23956, 24801, 25648, 26496, 27343, 28191, 29039, 29886, 30734, 31580, 32428, 33275, 34123, 34969, 35817, 36663, 37511, 38358]]
攻击次数 = 5
# 最终射击攻击力:<data1>%
data1 = [int(i*1.293) for i in [0, 15944, 18487, 21028, 23570, 26111, 28654, 31195, 33737, 36278, 38821, 41364, 43904, 46447, 48988, 51531, 54071, 56614, 59157, 61698, 64240, 66781, 69324, 71866, 74407, 76949, 79491, 82034, 84574, 87117, 89658, 92201, 94741, 97284, 99827, 102368, 104910, 107451, 109994, 112536, 115077]]
攻击次数2 = 1
CD = 40.0
是否有护石 = 1
护石选项 = ['圣痕']
def 装备护石(self, x):
if x == 0:
self.倍率 *= 1 + 0.375 * 0.94
class 技能18(职业主动技能):
名称 = '锁链切割'
所在等级 = 80
等级上限 = 40
基础等级 = 13
# 第1击攻击力:<data0>%
data0 = [int(i*1.298) for i in [0, 14483, 15953, 17423, 18892, 20362, 21830, 23300, 24770, 26239, 27708, 29178, 30647, 32117, 33587, 35055, 36525, 37994, 39464, 40934, 42402, 43872, 45342, 46811, 48280, 49750, 51219, 52689, 54159, 55627, 57097, 58566, 60036, 61505, 62974, 64444, 65914, 67382, 68852, 70322, 71791]]
攻击次数 = 1
# 第2击攻击力:<data1>%
data1 = [int(i*1.298) for i in [0, 14483, 15953, 17423, 18892, 20362, 21830, 23300, 24770, 26239, 27708, 29178, 30647, 32117, 33587, 35055, 36525, 37994, 39464, 40934, 42402, 43872, 45342, 46811, 48280, 49750, 51219, 52689, 54159, 55627, 57097, 58566, 60036, 61505, 62974, 64444, 65914, 67382, 68852, 70322, 71791]]
攻击次数2 = 1
# 第3击攻击力:<data2>%
data2 = [int(i*1.298) for i in [0, 19311, 21271, 23231, 25189, 27149, 29108, 31068, 33026, 34986, 36945, 38904, 40863, 42823, 44781, 46741, 48700, 50660, 52618, 54578, 56537, 58496, 60455, 62415, 64373, 66333, 68292, 70252, 72211, 74170, 76130, 78088, 80048, 82007, 83967, 85925, 87885, 89844, 91803, 93762, 95722]]
攻击次数3 = 1
CD = 45.0
是否有护石 = 1
护石选项 = ['圣痕']
def 装备护石(self, x):
if x == 0:
self.倍率 *= 1.34
class 技能19(职业主动技能):
名称 = '血舞祭'
所在等级 = 85
等级上限 = 40
基础等级 = 5
data0 = [int(i*1.193) for i in [0, 122223, 150567, 178907, 207250, 235592, 263933, 292276, 320618, 348960, 377302, 405645, 433985, 462328, 490669, 519011, 547354, 575695, 604038, 632380, 660722, 689064, 717404, 745747, 774089, 802431, 830773, 859116, 887457, 915800, 944141, 972482, 1000825, 1029166, 1057509, 1085851, 1114193, 1142535, 1170878, 1199219, 1227561]]
CD = 180
def 等效百分比(self, 武器类型):
return self.data0[self.等级] * self.攻击次数 * self.倍率
class 技能20(被动技能):
名称 = '锁链意志'
所在等级 = 95
等级上限 = 40
基础等级 = 4
关联技能 = ['所有']
def 加成倍率(self, 武器类型):
if self.等级 == 0:
return 1.0
else:
return round(1.18 + 0.02 * self.等级, 5)
class 技能21(职业主动技能):
名称 = '毁灭风暴'
所在等级 = 95
等级上限 = 40
基础等级 = 6
CD = 60.0
# 合并数据
# data0 = [int(i*1.00) for i in [0, 22175, 24426, 26677, 28928, 31179, 33430, 35681, 37932, 40183, 42434, 44685, 46936, 49187, 51438, 53689, 55940, 58191, 60442, 62693, 64944, 67195, 69446, 71697, 73948, 76199, 78450, 80701, 82952, 85203, 87454, 89705, 91956, 94207, 96458, 98709, 100960, 103211, 105462, 107713, 109964]]
# 攻击次数 = 3
data0 = [int(i*1.193) for i in [0,4069, 4482, 4895, 5308, 5721, 6134, 6546, 6959, 7372, 7785, 8198, 8611, 9024, 9436, 9849, 10262, 10675, 11088, 11501, 11914, 12327, 12739, 13152, 13565, 13978, 14391, 14804, 15217, 15629, 16042, 16455, 16868, 17281, 17694, 18107, 18520, 18932, 19345, 19758, 20171, 20584, 20997, 21410, 21823, 22235, 22648, 23061, 23474, 23887, 24300, 24713, 25125, 25538, 25951, 26364, 26777, 27190, 27603, 28016, 28428, 28841, 29254, 29667, 30080, 30493, 30906, 31318, 31731, 32144, 32557]]
# 括号内为5个攻击的不同伤害倍率
攻击次数 = (1.03+1.06+1.09+1.12+1.15)*3
data1 = [int(i*1.193) for i in [0,33269, 36644, 40020, 43395, 46770, 50145, 53520, 56896, 60271, 63646, 67021, 70396, 73771, 77147, 80522, 83897, 87272, 90647, 94023, 97398, 100773, 104148, 107523, 110899, 114274, 117649, 121024, 124399, 127774, 131150, 134525, 137900, 141275, 144650, 148026, 151401, 154776, 158151, 161526, 164902, 168277, 171652, 175027, 178402, 181777, 185153, 188528, 191903, 195278, 198653, 202029, 205404, 208779, 212154, 215529, 218905, 222280, 225655, 229030, 232405, 235780, 239156, 242531, 245906, 249281, 252656, 256032, 259407, 262782, 266157]]
攻击次数2 = 1
data2 = [int(i*1.193) for i in [0,2217, 2442, 2668, 2893, 3118, 3343, 3568, 3793, 4018, 4243, 4468, 4693, 4918, 5143, 5368, 5593, 5818, 6043, 6268, 6493, 6718, 6943, 7168, 7393, 7618, 7843, 8068, 8293, 8518, 8743, 8968, 9193, 9418, 9643, 9868, 10093, 10318, 10543, 10768, 10993, 11218, 11443, 11668, 11893, 12118, 12343, 12568, 12793, 13018, 13243, 13468, 13693, 13918, 14143, 14368, 14593, 14818, 15043, 15268, 15493, 15718, 15943, 16168, 16393, 16618, 16843, 17068, 17293, 17518, 17743]]
攻击次数3 = 5
class 技能22(职业主动技能):
名称 = '盛放·绯红花园'
关联技能 = ['无']
所在等级 = 100
等级上限 = 40
基础等级 = 2
CD = 290.0
data0 = [int(i*1.236) for i in [0,3571, 4400, 5228, 6056, 6884, 7713, 8541, 9369, 10197, 11026, 11854, 12682, 13510, 14339, 15167, 15995, 16823, 17652, 18480, 19308, 20136, 20965, 21793, 22621, 23449, 24278, 25106, 25934, 26762, 27591, 28419, 29247, 30075, 30904, 31732, 32560, 33388, 34217, 35045, 35873]]
攻击次数 = 5
data1 = [int(i*1.236) for i in [0,4464, 5500, 6535, 7570, 8606, 9641, 10676, 11711, 12747, 13782, 14817, 15853, 16888, 17923, 18959, 19994, 21029, 22065, 23100, 24135, 25171, 26206, 27241, 28277, 29312, 30347, 31382, 32418, 33453, 34488, 35524, 36559, 37594, 38630, 39665, 40700, 41736, 42771, 43806, 44842]]
攻击次数2 = 6
data2 = [int(i*1.236) for i in [0,7653, 9428, 11203, 12978, 14753, 16528, 18302, 20077, 21852, 23627, 25402, 27177, 28951, 30726, 32501, 34276, 36051, 37825, 39600, 41375, 43150, 44925, 46700, 48474, 50249, 52024, 53799, 55574, 57349, 59123, 60898, 62673, 64448, 66223, 67997, 69772, 71547, 73322, 75097, 76872]]
攻击次数3 = 7
data3 = [int(i*1.236) for i in [0,4464, 5500, 6535, 7570, 8606, 9641, 10676, 11711, 12747, 13782, 14817, 15853, 16888, 17923, 18959, 19994, 21029, 22065, 23100, 24135, 25171, 26206, 27241, 28277, 29312, 30347, 31382, 32418, 33453, 34488, 35524, 36559, 37594, 38630, 39665, 40700, 41736, 42771, 43806, 44842]]
攻击次数4 = 6
data4 = [int(i*1.236) for i in [0,6868, 8461, 10054, 11647, 13240, 14832, 16425, 18018, 19611, 21204, 22796, 24389, 25982, 27575, 29167, 30760, 32353, 33946, 35539, 37131, 38724, 40317, 41910, 43503, 45095, 46688, 48281, 49874, 51467, 53059, 54652, 56245, 57838, 59431, 61023, 62616, 64209, 65802, 67394, 68987]]
攻击次数5 = 13
data5 = [int(i*1.236) for i in [0,41671, 51334, 60997, 70660, 80323, 89986, 99649, 109311, 118974, 128637, 138300, 147963, 157626, 167289, 176952, 186615, 196278, 205941, 215604, 225267, 234930, 244593, 254255, 263918, 273581, 283244, 292907, 302570, 312233, 321896, 331559, 341222, 350885, 360548, 370211, 379874, 389537, 399199, 408862, 418525]]
攻击次数6 = 3
data6 = [int(i*1.236) for i in [0,2976, 3666, 4356, 5047, 5737, 6427, 7117, 7807, 8498, 9188, 9878, 10568, 11259, 11949, 12639, 13329, 14019, 14710, 15400, 16090, 16780, 17470, 18161, 18851, 19541, 20231, 20921, 21612, 22302, 22992, 23682, 24373, 25063, 25753, 26443, 27133, 27824, 28514, 29204, 29894]]
攻击次数7 = 6
def 加成倍率(self, 武器类型):
return 0.0
技能列表 = []
i = 0
while i >= 0:
try:
tem = eval('技能'+str(i)+'()')
tem.基础等级计算()
技能列表.append(tem)
i += 1
except:
i = -1
技能序号 = dict()
for i in range(len(技能列表)):
技能序号[技能列表[i].名称] = i
一觉序号 = 0
二觉序号 = 0
三觉序号 = 0
for i in 技能列表:
if i.所在等级 == 50:
一觉序号 = 技能序号[i.名称]
if i.所在等级 == 85:
二觉序号 = 技能序号[i.名称]
if i.所在等级 == 100:
三觉序号 = 技能序号[i.名称]
护石选项 = ['无']
for i in 技能列表:
if i.是否有伤害 == 1 and i.是否有护石 == 1:
护石选项.append(i.名称)
符文选项 = ['无']
for i in 技能列表:
if i.所在等级 >= 20 and i.所在等级 <= 80 and i.所在等级 != 50 and i.是否有伤害 == 1:
符文选项.append(i.名称)
class 职业属性(角色属性):
实际名称 = '重霄·漫游枪手·女'
角色 = '神枪手(女)'
职业 = '漫游枪手'
武器选项 = ['左轮枪']
类型选择 = ['物理百分比']
类型 = '物理百分比'
防具类型 = '皮甲'
防具精通属性 = ['力量']
主BUFF = 2.25
def __init__(self):
基础属性输入(self)
self.技能栏 = deepcopy(技能列表)
self.技能序号 = deepcopy(技能序号)
def 被动倍率计算(self):
super().被动倍率计算()
self.技能栏[self.技能序号['致命回射']].基础 = self.技能栏[self.技能序号['致命射击']].等效百分比(
self.武器类型)*1.25
self.技能栏[self.技能序号['致命回射']].被动倍率 = self.技能栏[self.技能序号['致命射击']].被动倍率
class 重霄·漫游枪手·女(角色窗口):
def 窗口属性输入(self):
self.初始属性 = 职业属性()
self.角色属性A = 职业属性()
self.角色属性B = 职业属性()
self.一觉序号 = 一觉序号
self.二觉序号 = 二觉序号
self.三觉序号 = 三觉序号
self.护石选项 = deepcopy(护石选项)
self.符文选项 = deepcopy(符文选项)