from core.basic.skill import 技能 from core.basic.character import Character from core.basic.skill import 主动技能, 被动技能 from core.basic.character import Character, equipment, 武器强化计算, 锻造计算 class 主动技能(主动技能): 上车CDR = 1.0 def 等效CD(self, **argv): # 武器类型 输出类型 额外CDR 手搓收益 恢复 武器类型 = argv.get('武器类型', '') 输出类型 = argv.get('输出类型', '') 额外CDR = argv.get('额外CDR', 1.0) # 手搓收益 = argv.get('手搓收益', 1.0) 面板显示 = argv.get('面板显示', False) 额外恢复 = argv.get('额外恢复', 1.0) cdr = self.手搓CD() 形态 = argv.get('形态', '') char = argv.get('char', {}) self.形态变更(形态, char) return round(max(self.CD * self.CDR * 额外CDR / ((self.恢复+额外恢复) if not 面板显示 else 1) * self.上车CDR * (self.武器CD系数(武器类型, 输出类型) - (cdr if not 面板显示 else 0)), self.CD * 0.3)*self.CDR_O, 1) 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(主动技能): CD = 6.0 - 1.0 TP成长 = 0.1 TP上限 = 7 名称 = "超频:压制" 所在等级 = 5 等级上限 = 70 学习间隔 = 2 等级精通 = 60 # 学习诺维尔计划:涅磐后减少1秒 CD = 6 - 1 MP = [17, 178] 无色消耗 = 0 data0 = [0, 1983, 2183, 2385, 2585, 2787, 2987, 3188, 3390, 3591, 3793, 3994, 4194, 4395, 4597, 4798, 5000, 5200, 5402, 5603, 5803, 6005, 6205, 6407, 6608, 6810, 7011, 7212, 7413, 7613, 7815, 8016, 8217, 8418, 8620, 8821, 9023, 9222, 9423, 9625, 9826, 10028, 10229, 10430, 10631, 10832, 11033, 11235, 11435, 11636, 11838, 12039, 12241, 12441, 12642, 12843, 13045, 13246, 13447, 13648, 13849, 14051, 14251, 14452, 14653, 14855, 15056, 15258, 15459, 15660, 15860] hit0 = 1 TP成长 = 0.1 TP上限 = 7 电弧能量充能 = 20 class 技能2(主动技能): 名称 = "烟尘弹" 所在等级 = 10 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 6 MP = [300, 322] 无色消耗 = 0 data0 = [0, 499, 550, 600, 652, 701, 753, 803, 854, 905, 956, 1006, 1057, 1108, 1158, 1210, 1260, 1311, 1362, 1413, 1463, 1514, 1565, 1615, 1666, 1716, 1767, 1819, 1868, 1920, 1970, 2021, 2071, 2123, 2173, 2224, 2275, 2325, 2377, 2427, 2478, 2528, 2580, 2629, 2681, 2730, 2782, 2833, 2884, 2935, 2985, 3037, 3086, 3138, 3187, 3239, 3290, 3340, 3391, 3442, 3492, 3543, 3594, 3644, 3695, 3747, 3796, 3848, 3899, 3949, 4000] hit0 = 6 TP成长 = 0.1 TP上限 = 7 电弧能量充能 = 0 class 技能3(主动技能): 名称 = '瞄准射击' 所在等级 = 15 等级上限 = 1 基础等级 = 1 data0 = [int(i) for i in [0, 130]] hit0 = 7 CD = 3 TP成长 = 0.10 TP上限 = 5 class 技能4(被动技能): 名称 = '合金战士自动手枪精通' 所在等级 = 15 等级上限 = 20 基础等级 = 10 def 物理攻击力倍率(self, 武器类型): if self.等级 == 0: return 1.0 else: return round(1.12 + 0.02 * self.等级, 3) class 技能5(主动技能): 名称 = "枪托强击" 所在等级 = 20 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 8 MP = [30, 315] 无色消耗 = 0 data0 = [0, 5081, 5596, 6112, 6627, 7143, 7658, 8174, 8689, 9204, 9720, 10235, 10752, 11268, 11783, 12298, 12814, 13329, 13844, 14360, 14876, 15391, 15906, 16422, 16938, 17452, 17968, 18484, 18998, 19514, 20030, 20547, 21063, 21577, 22093, 22609, 23123, 23639, 24155, 24670, 25185, 25701, 26217, 26732, 27247, 27763, 28278, 28793, 29309, 29826, 30341, 30857, 31372, 31887, 32403, 32918, 33434, 33949, 34465, 34980, 35495, 36011, 36527, 37042, 37557, 38073, 38588, 39104, 39620, 40136, 40652] hit0 = 1 TP成长 = 0.1 TP上限 = 7 电弧能量充能 = 0 class 技能6(主动技能): 名称 = "改装榴弹" 所在等级 = 20 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 6 MP = [30, 315] 无色消耗 = 0 data0 = [0, 3814, 4200, 4587, 4974, 5361, 5748, 6135, 6522, 6909, 7295, 7682, 8070, 8456, 8843, 9230, 9617, 10003, 10391, 10778, 11165, 11551, 11938, 12326, 12713, 13099, 13486, 13873, 14260, 14646, 15034, 15421, 15808, 16194, 16581, 16969, 17356, 17742, 18129, 18516, 18904, 19290, 19677, 20064, 20451, 20837, 21224, 21612, 21999, 22385, 22772, 23159, 23547, 23933, 24320, 24707, 25094, 25480, 25868, 26255, 26641, 27028, 27415, 27802, 28189, 28576, 28963, 29350, 29736, 30124, 30511] hit0 = 1 TP成长 = 0.1 TP上限 = 7 电弧能量充能 = 0 形态 = ["常规", "步行"] def 形态变更(self, 形态, char: Character): if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0: 形态 = self.形态[0] if 形态 == "常规": self.上车CDR = 1.0 if 形态 == "步行": self.上车CDR = 0.7 class 技能7(被动技能): 名称 = '弱点扫描' 所在等级 = 20 等级上限 = 20 基础等级 = 10 def 加成倍率(self, 武器类型): if self.等级 == 0: return 1.0 else: return round(1 + 0.02 * self.等级, 3) class 技能8(主动技能): 名称 = "超频:重盾保卫" 所在等级 = 25 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 12 MP = [43, 451] 无色消耗 = 0 data0 = [0, 7716, 8499, 9281, 10064, 10847, 11631, 12413, 13195, 13979, 14761, 15544, 16327, 17111, 17892, 18675, 19459, 20242, 21024, 21808, 22590, 23372, 24156, 24939, 25722, 26503, 27287, 28070, 28852, 29636, 30418, 31201, 31984, 32767, 33550, 34331, 35115, 35898, 36681, 37464, 38247, 39029, 39813, 40595, 41378, 42162, 42943, 43726, 44509, 45293, 46075, 46857, 47641, 48423, 49206, 49990, 50773, 51554, 52338, 53121, 53903, 54686, 55469, 56252, 57034, 57818, 58601, 59384, 60166, 60949, 61732] hit0 = 1 TP成长 = 0.1 TP上限 = 7 电弧能量充能 = 30 class 技能9(被动技能): 名称 = '改造烟尘弹' 所在等级 = 25 等级上限 = 1 基础等级 = 1 关联技能 = ['烟尘弹'] def 加成倍率(self, 武器类型): if self.等级 == 0: return 1.0 else: return round(1.2, 3) class 技能10(主动技能): 名称 = "磁力手雷" 所在等级 = 30 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 12 MP = [122, 1024] 无色消耗 = 0 data0 = [0, 2402, 2646, 2891, 3135, 3378, 3622, 3865, 4110, 4353, 4597, 4840, 5084, 5330, 5573, 5817, 6060, 6304, 6547, 6791, 7034, 7279, 7523, 7767, 8011, 8254, 8499, 8742, 8986, 9229, 9473, 9717, 9960, 10206, 10449, 10693, 10936, 11180, 11424, 11668, 11912, 12155, 12399, 12643, 12888, 13131, 13375, 13618, 13862, 14105, 14350, 14594, 14837, 15082, 15325, 15569, 15812, 16057, 16300, 16544, 16788, 17031, 17276, 17519, 17764, 18007, 18251, 18494, 18738, 18983, 19226] hit0 = 3 TP成长 = 0.1 TP上限 = 7 电弧能量充能 = 0 形态 = ["常规", "步行"] def 形态变更(self, 形态, char: Character): if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0: 形态 = self.形态[0] if 形态 == "常规": self.上车CDR = 1.0 if 形态 == "步行": self.上车CDR = 0.7 class 技能11(主动技能): 电弧能量充能 = 0 名称 = "三连霰弹" 所在等级 = 30 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 8 MP = [57, 598] 无色消耗 = 0 data0 = [0, 1234, 1358, 1484, 1609, 1735, 1859, 1986, 2111, 2235, 2361, 2486, 2611, 2736, 2861, 2986, 3113, 3237, 3363, 3488, 3612, 3738, 3863, 3989, 4113, 4239, 4365, 4489, 4614, 4740, 4865, 4990, 5115, 5240, 5367, 5491, 5617, 5742, 5866, 5992, 6117, 6242, 6368, 6493, 6619, 6744, 6868, 6994, 7119, 7244, 7369, 7495, 7621, 7745, 7870, 7996, 8120, 8246, 8371, 8496, 8622, 8747, 8873, 8998, 9122, 9248, 9373, 9497, 9623, 9749, 9875] hit0 = 1 data1 = [0, 1850, 2039, 2226, 2414, 2603, 2790, 2978, 3166, 3353, 3541, 3729, 3916, 4105, 4293, 4480, 4668, 4856, 5044, 5232, 5420, 5607, 5795, 5983, 6170, 6359, 6547, 6734, 6922, 7110, 7297, 7486, 7674, 7861, 8049, 8237, 8424, 8613, 8801, 8989, 9176, 9364, 9552, 9739, 9928, 10116, 10303, 10491, 10680, 10867, 11055, 11243, 11430, 11618, 11806, 11993, 12181, 12370, 12556, 12745, 12934, 13121, 13309, 13497, 13684, 13872, 14060, 14247, 14435, 14623, 14810] hit1 = 1 data2 = [0, 3084, 3398, 3711, 4025, 4337, 4650, 4963, 5277, 5590, 5904, 6215, 6528, 6842, 7156, 7467, 7780, 8094, 8407, 8721, 9033, 9346, 9659, 9973, 10285, 10598, 10911, 11224, 11538, 11850, 12164, 12476, 12790, 13102, 13416, 13729, 14043, 14355, 14667, 14981, 15294, 15608, 15920, 16233, 16546, 16860, 17173, 17484, 17798, 18112, 18425, 18738, 19050, 19363, 19677, 19990, 20303, 20616, 20929, 21242, 21556, 21868, 22182, 22494, 22807, 23120, 23433, 23747, 24059, 24373, 24685] hit2 = 1 TP成长 = 0.1 TP上限 = 7 形态 = ["常规", "步行"] def 形态变更(self, 形态, char: Character): if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0: 形态 = self.形态[0] if 形态 == "常规": self.上车CDR = 1.0 if 形态 == "步行": self.上车CDR = 0.7 class 技能12(主动技能): 名称 = "爆裂飞踢" 所在等级 = 35 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 15 MP = [122, 1024] 无色消耗 = 1 data0 = [0, 3908, 4305, 4702, 5100, 5496, 5893, 6289, 6685, 7082, 7478, 7875, 8271, 8668, 9064, 9461, 9857, 10255, 10651, 11048, 11444, 11842, 12238, 12635, 13031, 13428, 13824, 14221, 14617, 15013, 15411, 15808, 16204, 16600, 16997, 17393, 17790, 18186, 18583, 18979, 19376, 19772, 20170, 20566, 20964, 21360, 21757, 22153, 22550, 22946, 23343, 23739, 24136, 24532, 24928, 25325, 25721, 26120, 26516, 26913, 27309, 27706, 28102, 28499, 28895, 29292, 29688, 30085, 30481, 30878, 31274] hit0 = 1 data1 = [0, 1465, 1614, 1762, 1912, 2060, 2209, 2357, 2506, 2654, 2804, 2952, 3102, 3250, 3399, 3549, 3697, 3846, 3994, 4143, 4291, 4441, 4589, 4738, 4886, 5035, 5184, 5333, 5481, 5630, 5778, 5927, 6076, 6225, 6373, 6522, 6670, 6819, 6968, 7117, 7266, 7414, 7562, 7712, 7861, 8009, 8158, 8306, 8457, 8605, 8754, 8902, 9051, 9199, 9349, 9497, 9646, 9794, 9943, 10091, 10241, 10390, 10538, 10686, 10835, 10985, 11133, 11282, 11430, 11579, 11727] hit1 = 4 TP成长 = 0.1 TP上限 = 5 电弧能量充能 = 0 形态 = ["常规", "步行"] def 形态变更(self, 形态, char: Character): if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0: 形态 = self.形态[0] if 形态 == "常规": self.上车CDR = 1.0 if 形态 == "步行": self.上车CDR = 0.7 class 技能13(主动技能): 名称 = "超频:机械冲撞" 所在等级 = 35 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 13 MP = [122, 1024] 无色消耗 = 1 data0 = [0, 5628, 6200, 6770, 7341, 7912, 8483, 9055, 9625, 10196, 10767, 11339, 11911, 12481, 13052, 13623, 14194, 14764, 15336, 15907, 16478, 17049, 17619, 18191, 18761, 19334, 19905, 20475, 21047, 21617, 22188, 22760, 23330, 23902, 24472, 25043, 25614, 26185, 26758, 27328, 27899, 28470, 29041, 29612, 30183, 30754, 31325, 31896, 32466, 33038, 33609, 34179, 34752, 35322, 35894, 36465, 37035, 37607, 38177, 38749, 39319, 39890, 40462, 41032, 41603, 42174, 42745, 43318, 43888, 44459, 45030] hit0 = 1 data1 = [0, 3752, 4132, 4514, 4894, 5274, 5656, 6036, 6418, 6798, 7177, 7559, 7939, 8320, 8701, 9081, 9463, 9843, 10224, 10605, 10985, 11367, 11747, 12126, 12508, 12888, 13269, 13650, 14030, 14412, 14792, 15173, 15554, 15934, 16315, 16696, 17075, 17457, 17837, 18218, 18599, 18979, 19361, 19741, 20122, 20503, 20883, 21264, 21645, 22026, 22406, 22786, 23167, 23548, 23928, 24309, 24690, 25071, 25452, 25832, 26213, 26594, 26974, 27355, 27735, 28116, 28497, 28878, 29258, 29639, 30020] hit1 = 1 TP成长 = 0.1 TP上限 = 5 电弧能量充能 = 30 是否有护石 = 1 def 装备护石(self, char): self.power0 = 1+0.91+0.32 self.hit1 = 0 class 技能14(主动技能): 名称 = "战略轰炸" 所在等级 = 40 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 20 MP = [162, 1360] 无色消耗 = 1 data0 = [0, 1975, 2174, 2375, 2576, 2777, 2977, 3177, 3378, 3578, 3780, 3979, 4179, 4380, 4580, 4781, 4982, 5182, 5383, 5582, 5782, 5983, 6183, 6385, 6585, 6785, 6986, 7185, 7386, 7587, 7787, 7988, 8188, 8389, 8589, 8788, 8990, 9190, 9390, 9591, 9791, 9992, 10193, 10392, 10593, 10793, 10993, 11194, 11395, 11596, 11796, 11995, 12196, 12396, 12597, 12798, 12998, 13199, 13399, 13598, 13799, 14000, 14201, 14401, 14601, 14802, 15002, 15202, 15403, 15603, 15804] hit0 = 3 data1 = [0, 2963, 3263, 3564, 3865, 4165, 4467, 4766, 5067, 5367, 5669, 5969, 6269, 6571, 6871, 7171, 7472, 7773, 8073, 8374, 8675, 8975, 9276, 9576, 9877, 10179, 10478, 10779, 11079, 11381, 11681, 11981, 12283, 12582, 12883, 13184, 13485, 13785, 14086, 14387, 14687, 14987, 15288, 15589, 15891, 16190, 16491, 16791, 17093, 17392, 17693, 17995, 18294, 18595, 18896, 19197, 19497, 19798, 20099, 20399, 20699, 21000, 21301, 21603, 21902, 22203, 22503, 22804, 23104, 23405, 23707] hit1 = 3 TP成长 = 0.1 TP上限 = 5 电弧能量充能 = 0 是否有护石 = 1 def 装备护石(self, char): self.hit0 += 2 self.power0 = 0.89 self.power1 = 1.29 self.CDR *= 0.9 class 技能15(主动技能): 名称 = "雷达扫射" 所在等级 = 45 等级上限 = 70 学习间隔 = 2 等级精通 = 60 CD = 40 MP = [285, 2394] 无色消耗 = 2 data0 = [0, 1743, 1921, 2098, 2273, 2451, 2628, 2806, 2983, 3158, 3336, 3513, 3691, 3866, 4043, 4221, 4398, 4574, 4751, 4928, 5106, 5283, 5459, 5636, 5813, 5990, 6167, 6344, 6521, 6698, 6874, 7052, 7229, 7405, 7582, 7759, 7937, 8114, 8290, 8467, 8644, 8822, 8999, 9174, 9352, 9529, 9706, 9883, 10059, 10236, 10414, 10590, 10768, 10944, 11121, 11299, 11475, 11653, 11829, 12006, 12183, 12360, 12537, 12714, 12890, 13068, 13245, 13422, 13598, 13775, 13952] hit0 = 15 TP成长 = 0.1 TP上限 = 5 是否有护石 = 1 电弧能量充能 = 0 形态 = ["常规", "步行"] def 形态变更(self, 形态, char: Character): if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0: 形态 = self.形态[0] if 形态 == "常规": self.上车CDR = 1.0 if 形态 == "步行": self.上车CDR = 0.7 def 装备护石(self, char): self.倍率 *= 1.31 self.CDR *= 0.95 class 技能16(被动技能): 名称 = '机体复原' 所在等级 = 48 等级上限 = 50 学习间隔 = 3 等级精通 = 40 关联技能 = ['所有'] def 加成倍率(self, 武器类型): if self.等级 == 0: return 1.0 else: return round(1.00 + 0.02 * self.等级, 3) class 技能17(主动技能): 名称 = '电弧能量释放' 所在等级 = 48 等级上限 = 1 基础等级 = 1 data0 = [0, 10794, 12515, 14237, 15957, 17678, 19399, 21120, 22841, 24561, 26283, 28003, 29724, 31446, 33166, 34887, 36607, 38329, 40050, 41770, 43492, 45212, 46933, 48654, 50375, 52096, 53816, 55537, 57259, 58979, 60700, 62421, 64142, 65863, 67583, 69305, 71025, 72746, 74468, 76188, 77909, 79629, 81352, 83073, 84793, 86515, 88235, 89956, 91678, 93398, 95119] hit0 = 1 CD = 1 class 技能18(主动技能): 名称 = '超频:全领域攻击' 所在等级 = 50 等级上限 = 50 学习间隔 = 5 等级精通 = 40 CD = 145 MP = [1065, 8946] 无色消耗 = 5 data0 = [0, 8324, 10254, 12185, 14113, 16044, 17974, 19903, 21834, 23764, 25695, 27624, 29555, 31485, 33416, 35345, 37276, 39206, 41137, 43066, 44997, 46927, 48858, 50787, 52718, 54648, 56577, 58508, 60438, 62369, 64298, 66229, 68159, 70090, 72019, 73950, 75880, 77811, 79740, 81671, 83601, 85530, 87461, 89392, 91322, 93251, 95182, 97112, 99043, 100972, 102903] hit0 = 1 data1 = [0, 4161, 5126, 6092, 7056, 8021, 8987, 9952, 10918, 11882, 12847, 13813, 14777, 15742, 16708, 17673, 18638, 19603, 20568, 21534, 22498, 23463, 24429, 25394, 26358, 27324, 28289, 29254, 30219, 31184, 32150, 33114, 34079, 35045, 36010, 36975, 37940, 38905, 39871, 40835, 41800, 42766, 43730, 44695, 45661, 46626, 47592, 48556, 49521, 50487, 51451] hit1 = 4 data2 = [0, 4161, 5126, 6092, 7056, 8021, 8987, 9952, 10918, 11882, 12847, 13813, 14777, 15742, 16708, 17673, 18638, 19603, 20568, 21534, 22498, 23463, 24429, 25394, 26358, 27324, 28289, 29254, 30219, 31184, 32150, 33114, 34079, 35045, 36010, 36975, 37940, 38905, 39871, 40835, 41800, 42766, 43730, 44695, 45661, 46626, 47592, 48556, 49521, 50487, 51451] hit2 = 1 data3 = [0, 41620, 51270, 60921, 70572, 80222, 89873, 99525, 109175, 118826, 128478, 138128, 147780, 157431, 167082, 176733, 186383, 196033, 205685, 215336, 224987, 234638, 244289, 253940, 263591, 273242, 282894, 292543, 302194, 311846, 321496, 331147, 340799, 350449, 360100, 369752, 379402, 389054, 398704, 408354, 418006, 427657, 437307, 446959, 456610, 466260, 475912, 485563, 495213, 504864, 514515] hit3 = 1 电弧能量充能 = 100 class 技能19(主动技能): 名称 = "超频:电流闪踢" 所在等级 = 60 等级上限 = 50 学习间隔 = 2 等级精通 = 40 CD = 25 MP = [356, 996] 无色消耗 = 1 data0 = [0, 21340, 23505, 25670, 27835, 29999, 32165, 34329, 36495, 38658, 40824, 42989, 45154, 47320, 49484, 51649, 53814, 55979, 58144, 60309, 62473, 64639, 66803, 68969, 71135, 73298, 75464, 77628, 79794, 81958, 84123, 86288, 88453, 90618, 92783, 94949, 97113, 99278, 101443, 103608, 105773, 107938, 110102, 112268, 114432, 116598, 118762, 120927, 123093, 125257, 127423] hit0 = 1 TP成长 = 0.1 TP上限 = 5 电弧能量充能 = 50 无色消耗 = 1 是否有护石 = 1 def 装备护石(self, char): self.倍率 *= 1.31 self.CDR *= 0.9 class 技能20(主动技能): 名称 = "堡垒轰击" 所在等级 = 70 等级上限 = 50 学习间隔 = 2 等级精通 = 40 CD = 50 MP = [732, 1537] 无色消耗 = 2 data0 = [0, 1597, 1759, 1921, 2084, 2245, 2407, 2570, 2731, 2893, 3055, 3218, 3379, 3541, 3704, 3866, 4027, 4190, 4352, 4513, 4676, 4838, 5000, 5162, 5324, 5486, 5649, 5810, 5972, 6135, 6297, 6458, 6620, 6783, 6944, 7106, 7269, 7431, 7592, 7755, 7917, 8079, 8241, 8403, 8565, 8728, 8889, 9051, 9214, 9375, 9537] hit0 = 30 TP成长 = 0.1 TP上限 = 5 电弧能量充能 = 0 是否有护石 = 1 def 装备护石(self, char): self.倍率 *= 0.7 self.CD = 25 class 技能21(主动技能): 名称 = "AT-SO步行者" 备注 = "若选择手动请按照射击发数填入次数;自动的单次为步行者一轮的伤害" 所在等级 = 75 等级上限 = 50 学习间隔 = 2 等级精通 = 40 CD = 40 MP = [606, 4696] 无色消耗 = 3 data0 = [0, 1251, 1379, 1504, 1632, 1760, 1887, 2012, 2140, 2268, 2395, 2521, 2648, 2776, 2902, 3029, 3156, 3284, 3410, 3537, 3664, 3792, 3918, 4045, 4172, 4299, 4426, 4553, 4680, 4807, 4934, 5061, 5188, 5315, 5442, 5570, 5695, 5823, 5950, 6078, 6203, 6331, 6459, 6586, 6712, 6839, 6967, 7092, 7220, 7347, 7475] hit0 = 112 data1 = [0, 707, 780, 851, 923, 994, 1067, 1138, 1210, 1282, 1354, 1426, 1497, 1569, 1640, 1713, 1785, 1856, 1928, 2001, 2072, 2144, 2215, 2288, 2359, 2431, 2503, 2574, 2647, 2718, 2790, 2861, 2934, 3006, 3077, 3149, 3222, 3293, 3365, 3436, 3508, 3580, 3652, 3724, 3795, 3868, 3939, 4011, 4083, 4155, 4227] hit1 = 0 电弧能量充能 = 0 CD_min = 20 是否有护石 = 1 形态 = ["自动", "手动"] def 形态变更(self, 形态, char: Character): if (形态 == '' or 形态 not in self.形态) and len(self.形态) > 0: 形态 = self.形态[0] if 形态 == "自动": self.power0 = 1 self.power1 = 0 if 形态 == "手动": self.power0 = 0 self.power1 = 1 def 装备护石(self, char): self.CD_min = 30 # 增加持续时间 self.hit0 *= 30/20 # self.hit1 *= 30/20 # 自爆 self.data2 = self.data0 self.hit2 = 11.2 class 技能22(被动技能): 名称 = '躯体重塑' 所在等级 = 75 等级上限 = 50 学习间隔 = 3 等级精通 = 40 def 加成倍率(self, 武器类型): if self.等级 == 0: return 1.0 else: return round(1.22 + 0.02 * self.等级, 3) class 技能23(主动技能): 名称 = "炎神攻城炮" 所在等级 = 80 等级上限 = 50 学习间隔 = 2 等级精通 = 40 CD = 45 MP = [877, 6577] 无色消耗 = 5 data0 = [0, 82195, 90534, 98873, 107211, 115550, 123890, 132228, 140567, 148905, 157245, 165583, 173922, 182260, 190600, 198937, 207276, 215614, 223954, 232292, 240631, 248969, 257309, 265647, 273986, 282326, 290664, 299003, 307341, 315681, 324019, 332358, 340696, 349036, 357374, 365713, 374050, 382390, 390728, 399067, 407405, 415745, 424084, 432422, 440761, 449100, 457439, 465777, 474116, 482455, 490794] hit0 = 1 是否有护石 = 1 电弧能量充能 = 0 def 装备护石(self, char): self.倍率 *= 1.25 self.CDR *= 0.9 class 技能24(主动技能): 名称 = '超频:伊奎利斯-MR' 所在等级 = 85 等级上限 = 50 学习间隔 = 5 等级精通 = 40 CD = 180 MP = [2484, 4968] 无色消耗 = 10 data0 = [0, 9535, 11746, 13957, 16169, 18379, 20590, 22802, 25013, 27224, 29434, 31646, 33857, 36068, 38279, 40491, 42701, 44912, 47123, 49335, 51546, 53757, 55968, 58179, 60390, 62601, 64813, 67024, 69234, 71445, 73657, 75868, 78079, 80289, 82501, 84712, 86923, 89135, 91346, 93557, 95767, 97979, 100190, 102401, 104612, 106824, 109034, 111245, 113456, 115668, 117879] hit0 = 20 电弧能量充能 = 100 class 技能25(主动技能): 名称 = "超频:音速瞬杀" 所在等级 = 95 等级上限 = 50 学习间隔 = 2 等级精通 = 40 CD = 60 MP = [1169, 8769] 无色消耗 = 7 data0 = [0, 7647, 8423, 9198, 9974, 10751, 11527, 12303, 13079, 13854, 14630, 15407, 16182, 16958, 17733, 18509, 19285, 20061, 20838, 21614, 22389, 23165, 23940, 24716, 25493, 26268, 27044, 27820, 28596, 29372, 30147, 30924, 31700, 32475, 33251, 34026, 34802, 35578, 36355, 37131, 37907, 38682, 39458, 40233, 41010, 41786, 42561, 43337, 44113, 44889, 45665] hit0 = 4 data1 = [0, 45887, 50541, 55197, 59852, 64508, 69163, 73819, 78473, 83128, 87784, 92439, 97095, 101749, 106405, 111060, 115716, 120370, 125025, 129681, 134336, 138992, 143647, 148303, 152958, 157611, 162267, 166922, 171578, 176233, 180889, 185544, 190200, 194855, 199509, 204165, 208819, 213475, 218130, 222786, 227441, 232096, 236751, 241406, 246062, 250717, 255373, 260028, 264682, 269338, 273992] hit1 = 1 data2 = [0, 76479, 84237, 91996, 99754, 107513, 115271, 123031, 130789, 138549, 146307, 154066, 161824, 169583, 177342, 185101, 192859, 200618, 208376, 216135, 223893, 231653, 239411, 247170, 254929, 262687, 270447, 278205, 285965, 293723, 301482, 309240, 316999, 324757, 332516, 340274, 348034, 355792, 363551, 371309, 379068, 386826, 394587, 402345, 410104, 417862, 425621, 433380, 441138, 448898, 456656] hit2 = 1 电弧能量充能 = 70 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 CD = 290 MP = [4002, 8004] 无色消耗 = 15 data0 = [0, 51061, 62900, 74742, 86582, 98422, 110262, 122102, 133943, 145783, 157622, 169464, 181304, 193145, 204985, 216824, 228665, 240505, 252347, 264186, 276026, 287867, 299707, 311546, 323387, 335227, 347069, 358909, 370748, 382589, 394429, 406270, 418109, 429950, 441791, 453631, 465472, 477311, 489151, 500992, 512833, 524672, 536513, 548353, 560194, 572033, 583873, 595714, 607555, 619396, 631235] hit0 = 1 data1 = [0, 6382, 7862, 9341, 10822, 12301, 13782, 15261, 16742, 18222, 19702, 21183, 22662, 24143, 25622, 27103, 28582, 30063, 31542, 33023, 34503, 35983, 37463, 38943, 40423, 41903, 43383, 44864, 46343, 47824, 49303, 50784, 52263, 53744, 55223, 56704, 58184, 59663, 61142, 62623, 64102, 65583, 67064, 68543, 70024, 71503, 72984, 74463, 75944, 77424, 78904] hit1 = 12 data2 = [0, 25531, 31450, 37370, 43290, 49211, 55131, 61051, 66971, 72892, 78811, 84731, 90651, 96571, 102491, 108413, 114333, 120253, 126173, 132092, 138013, 143933, 149853, 155773, 161693, 167614, 173534, 179454, 185373, 191293, 197215, 203135, 209055, 214975, 220895, 226816, 232736, 238655, 244575, 250495, 256416, 262336, 268256, 274176, 280097, 286016, 291937, 297857, 303777, 309697, 315618] hit2 = 3 data3 = [0, 255307, 314506, 373708, 432910, 492111, 551313, 610515, 669716, 728917, 788119, 847320, 906522, 965724, 1024925, 1084127, 1143328, 1202529, 1261731, 1320933, 1380134, 1439336, 1498538, 1557738, 1616940, 1676142, 1735342, 1794544, 1853746, 1912948, 1972149, 2031350, 2090551, 2149753, 2208955, 2268156, 2327358, 2386559, 2445760, 2504962, 2564164, 2623366, 2682567, 2741769, 2800970, 2860172, 2919372, 2978574, 3037776, 3096978, 3156180] hit3 = 1 data4 = [0, 51061, 62900, 74742, 86582, 98422, 110262, 122102, 133943, 145783, 157622, 169464, 181304, 193145, 204985, 216824, 228665, 240505, 252347, 264186, 276026, 287867, 299707, 311546, 323387, 335227, 347069, 358909, 370748, 382589, 394429, 406270, 418109, 429950, 441791, 453631, 465472, 477311, 489151, 500992, 512833, 524672, 536513, 548353, 560194, 572033, 583873, 595714, 607555, 619396, 631235] hit4 = 1 电弧能量充能 = 100 class classChange(Character): def __init__(self, equVersion=""): self.实际名称 = 'assault' 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.00 super().__init__(equVersion) def 职业特殊计算(self): 电弧能量释放 = self.get_skill_by_name('电弧能量释放') 电弧能量释放.等级上限 = 50 电弧能量释放.等级 = self.get_skill_by_name('机体复原').等级 def set_individuation(self, info): info['char_optiopns'] = [] info['char_optiopns'].append({ "name": '[AT-SO步行者]', "option": ["手动单轮攻击 {} 次".format(str(i)) for i in range(1, 1000)] }) def 职业特殊设置(self): self.get_skill_by_name("AT-SO步行者").hit1 = self.get_individuation(0) + 1 pass def 武器计算(self, temp: equipment) -> None: self.武器类型 = temp.类型 self.基础属性加成(物理攻击力=temp.魔法攻击力, 魔法攻击力=temp.魔法攻击力, 独立攻击力=temp.独立攻击力) info = self.打造详情.get(temp.部位, {}) 攻击力 = 武器强化计算(temp.等级, temp.品质, info.get('cursed_number', 0), temp.类型,'魔法') 独立攻击力 = 锻造计算(temp.等级, temp.品质, info.get('dz_number', 0)) self.打造['武器']['强化攻击力'] = [攻击力, 攻击力, 0] self.打造['武器']['锻造加成'][0] = 独立攻击力 self.基础属性加成(物理攻击力=攻击力, 魔法攻击力=攻击力, 独立攻击力=独立攻击力)