diff --git a/backend/core/basic/skill.py b/backend/core/basic/skill.py
index 860f25a9..1d2407e2 100644
--- a/backend/core/basic/skill.py
+++ b/backend/core/basic/skill.py
@@ -24,10 +24,11 @@ def get_data(prefix: str, key: int | str, func = lambda x = None: x):
try:
if isinstance(key, int):
data = [0] + list(map(lambda x: x["optionValue"].get("value" + str(key+1), 0), skill_data["levelInfo"]["rows"]))
+ data = [ 0 if x is None else x for x in data]
elif key == "vps":
data = [ {"name":x["name"],"desc":x["desc"]} for x in skill_data.get("evolution",[])]
except Exception as e:
- print(e)
+ print(f"get skill {prefix}/{key} data error",e)
data = None
return data
diff --git a/backend/core/character/GF/gunblader/hitman.py b/backend/core/character/GF/gunblader/hitman.py
index ae160c12..b9c907f9 100644
--- a/backend/core/character/GF/gunblader/hitman.py
+++ b/backend/core/character/GF/gunblader/hitman.py
@@ -25,19 +25,15 @@ class Skill1(ActiveSkill):
hasUP = False
# 射击攻击力 : {value0}%
- # REMOVE: data0 = [0, 2746, 3025, 3303, 3582, 3860, 4139, 4417, 4696, 4975, 5253, 5532, 5810, 6089, 6368, 6646, 6925, 7203, 7482, 7760, 8039, 8318, 8596, 8875, 9153, 9432, 9710, 9989, 10268, 10546, 10825, 11103, 11382, 11661, 11939, 12218, 12496, 12775, 13053, 13332, 13611, 13889, 14168, 14446, 14725, 15004, 15282, 15561, 15839, 16118, 16396, 16675, 16954, 17232, 17511, 17789, 18068, 18346, 18625, 18904, 19182, 19461, 19739, 20018, 20297, 20575, 20854, 21132, 21411, 21689, 21968]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# [转职为暗刃时]
# 发射次数 : {value1}次
- # REMOVE: data1 = [0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 射击攻击力 : {value2}%
- # REMOVE: data2 = [0, 621, 684, 747, 810, 873, 936, 999, 1062, 1125, 1188, 1251, 1314, 1377, 1440, 1503, 1566, 1629, 1692, 1755, 1818, 1881, 1944, 2007, 2070, 2133, 2196, 2259, 2322, 2385, 2448, 2511, 2574, 2637, 2700, 2763, 2826, 2889, 2952, 3015, 3078, 3141, 3204, 3267, 3330, 3393, 3456, 3519, 3582, 3645, 3708, 3771, 3834, 3897, 3960, 4023, 4086, 4149, 4212, 4275, 4338, 4401, 4464, 4527, 4590, 4653, 4716, 4779, 4842, 4905, 4968]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 5
# [范围信息]
# 子弹发射距离比率 : {value3}%
- # REMOVE: data3 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 幽灵近战术
@@ -79,13 +75,10 @@ class Skill4(PassiveSkill):
hasUP = False
# 基本攻击力变化率 : {value0}%
- # REMOVE: data0 = [0, 150, 158.7, 167.3, 176, 184.5, 193.2, 201.8, 210.5, 219.2, 227.7, 236.4, 245, 253.7, 262.2, 270.9, 284.3, 297.6, 311, 324.3, 337.7, 350.9, 364.2, 377.6, 390.9, 404.3, 417.6, 431, 444.3, 457.7, 471, 484.2, 497.6, 510.9, 524.3, 537.6, 551, 564.3, 577.7, 591, 604.4, 617.7, 630.9, 644.3, 657.6, 671, 684.3, 697.7, 711, 724.4, 737.7, 751.1, 764.3, 777.6, 791, 804.3, 817.7, 831, 844.4, 857.7, 871.1, 884.4, 897.8, 911, 924.3, 937.7, 951, 964.4, 977.7, 991.1, 1004.4, 1017.8, 1031.1, 1044.5, 1057.7, 1071, 1084.4, 1097.7, 1111.1, 1124.4, 1137.8, 1151.1, 1164.5, 1177.8, 1191, 1204.4, 1217.7, 1231.1, 1244.4, 1257.8, 1271.1, 1284.5, 1297.8, 1311.2, 1324.5, 1337.7, 1351.1, 1364.4, 1377.8, 1391.1, 1404.5, 1417.8, 1431.2, 1444.5, 1457.9, 1471.2, 1484.6, 1497.9, 1511.3, 1524.6, 1538, 1551.3, 1564.7, 1578, 1591.4, 1604.7, 1618.1, 1631.4, 1644.8, 1658.1, 1671.5, 1684.8, 1698.2, 1711.5, 1724.9, 1738.2, 1751.6, 1764.9, 1778.3, 1791.6, 1805, 1818.3, 1831.7, 1845, 1858.4, 1871.7, 1885.1, 1898.4, 1911.8, 1925.1, 1938.5, 1951.8, 1965.2, 1978.5, 1991.9, 2005.2, 2018.6, 2031.9, 2045.3, 2058.6, 2072, 2085.3, 2098.7, 2112, 2125.4, 2138.7, 2152.1, 2165.4, 2178.8, 2192.1, 2205.5, 2218.8, 2232.2, 2245.5, 2258.9, 2272.2, 2285.6, 2298.9, 2312.3, 2325.6, 2339, 2352.3, 2365.7, 2379, 2392.4, 2405.7, 2419.1, 2432.4, 2445.8, 2459.1, 2472.5, 2485.8, 2499.2, 2512.5, 2525.9, 2539.2, 2552.6, 2565.9, 2579.3, 2592.6, 2606, 2619.3, 2632.7, 2646, 2659.4, 2672.7, 2686.1, 2699.4, 2712.8, 2726.1, 2739.5]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 前冲攻击力变化率 : {value1}%
- # REMOVE: data1 = [0, 150, 158.7, 167.3, 176, 184.5, 193.2, 201.8, 210.5, 219.2, 227.7, 236.4, 245, 253.7, 262.2, 270.9, 284.3, 297.6, 311, 324.3, 337.7, 350.9, 364.2, 377.6, 390.9, 404.3, 417.6, 431, 444.3, 457.7, 471, 484.2, 497.6, 510.9, 524.3, 537.6, 551, 564.3, 577.7, 591, 604.4, 617.7, 630.9, 644.3, 657.6, 671, 684.3, 697.7, 711, 724.4, 737.7, 751.1, 764.3, 777.6, 791, 804.3, 817.7, 831, 844.4, 857.7, 871.1, 884.4, 897.8, 911, 924.3, 937.7, 951, 964.4, 977.7, 991.1, 1004.4, 1017.8, 1031.1, 1044.5, 1057.7, 1071, 1084.4, 1097.7, 1111.1, 1124.4, 1137.8, 1151.1, 1164.5, 1177.8, 1191, 1204.4, 1217.7, 1231.1, 1244.4, 1257.8, 1271.1, 1284.5, 1297.8, 1311.2, 1324.5, 1337.7, 1351.1, 1364.4, 1377.8, 1391.1, 1404.5, 1417.8, 1431.2, 1444.5, 1457.9, 1471.2, 1484.6, 1497.9, 1511.3, 1524.6, 1538, 1551.3, 1564.7, 1578, 1591.4, 1604.7, 1618.1, 1631.4, 1644.8, 1658.1, 1671.5, 1684.8, 1698.2, 1711.5, 1724.9, 1738.2, 1751.6, 1764.9, 1778.3, 1791.6, 1805, 1818.3, 1831.7, 1845, 1858.4, 1871.7, 1885.1, 1898.4, 1911.8, 1925.1, 1938.5, 1951.8, 1965.2, 1978.5, 1991.9, 2005.2, 2018.6, 2031.9, 2045.3, 2058.6, 2072, 2085.3, 2098.7, 2112, 2125.4, 2138.7, 2152.1, 2165.4, 2178.8, 2192.1, 2205.5, 2218.8, 2232.2, 2245.5, 2258.9, 2272.2, 2285.6, 2298.9, 2312.3, 2325.6, 2339, 2352.3, 2365.7, 2379, 2392.4, 2405.7, 2419.1, 2432.4, 2445.8, 2459.1, 2472.5, 2485.8, 2499.2, 2512.5, 2525.9, 2539.2, 2552.6, 2565.9, 2579.3, 2592.6, 2606, 2619.3, 2632.7, 2646, 2659.4, 2672.7, 2686.1, 2699.4, 2712.8, 2726.1, 2739.5]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 跳跃攻击力变化率 : {value2}%
- # REMOVE: data2 = [0, 150, 158.7, 167.3, 176, 184.5, 193.2, 201.8, 210.5, 219.2, 227.7, 236.4, 245, 253.7, 262.2, 270.9, 284.3, 297.6, 311, 324.3, 337.7, 350.9, 364.2, 377.6, 390.9, 404.3, 417.6, 431, 444.3, 457.7, 471, 484.2, 497.6, 510.9, 524.3, 537.6, 551, 564.3, 577.7, 591, 604.4, 617.7, 630.9, 644.3, 657.6, 671, 684.3, 697.7, 711, 724.4, 737.7, 751.1, 764.3, 777.6, 791, 804.3, 817.7, 831, 844.4, 857.7, 871.1, 884.4, 897.8, 911, 924.3, 937.7, 951, 964.4, 977.7, 991.1, 1004.4, 1017.8, 1031.1, 1044.5, 1057.7, 1071, 1084.4, 1097.7, 1111.1, 1124.4, 1137.8, 1151.1, 1164.5, 1177.8, 1191, 1204.4, 1217.7, 1231.1, 1244.4, 1257.8, 1271.1, 1284.5, 1297.8, 1311.2, 1324.5, 1337.7, 1351.1, 1364.4, 1377.8, 1391.1, 1404.5, 1417.8, 1431.2, 1444.5, 1457.9, 1471.2, 1484.6, 1497.9, 1511.3, 1524.6, 1538, 1551.3, 1564.7, 1578, 1591.4, 1604.7, 1618.1, 1631.4, 1644.8, 1658.1, 1671.5, 1684.8, 1698.2, 1711.5, 1724.9, 1738.2, 1751.6, 1764.9, 1778.3, 1791.6, 1805, 1818.3, 1831.7, 1845, 1858.4, 1871.7, 1885.1, 1898.4, 1911.8, 1925.1, 1938.5, 1951.8, 1965.2, 1978.5, 1991.9, 2005.2, 2018.6, 2031.9, 2045.3, 2058.6, 2072, 2085.3, 2098.7, 2112, 2125.4, 2138.7, 2152.1, 2165.4, 2178.8, 2192.1, 2205.5, 2218.8, 2232.2, 2245.5, 2258.9, 2272.2, 2285.6, 2298.9, 2312.3, 2325.6, 2339, 2352.3, 2365.7, 2379, 2392.4, 2405.7, 2419.1, 2432.4, 2445.8, 2459.1, 2472.5, 2485.8, 2499.2, 2512.5, 2525.9, 2539.2, 2552.6, 2565.9, 2579.3, 2592.6, 2606, 2619.3, 2632.7, 2646, 2659.4, 2672.7, 2686.1, 2699.4, 2712.8, 2726.1, 2739.5]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
@@ -111,11 +104,9 @@ class Skill7(ActiveSkill):
hasUP = False
# 劈砍攻击力 : {value0}%
- # REMOVE: data0 = [0, 1658, 1826, 1994, 2163, 2331, 2499, 2667, 2835, 3004, 3172, 3340, 3508, 3676, 3844, 4013, 4181, 4349, 4517, 4685, 4854, 5022, 5190, 5358, 5526, 5695, 5863, 6031, 6199, 6367, 6536, 6704, 6872, 7040, 7208, 7377, 7545, 7713, 7881, 8049, 8218, 8386, 8554, 8722, 8890, 9059, 9227, 9395, 9563, 9731, 9900, 10068, 10236, 10404, 10572, 10741, 10909, 11077, 11245, 11413, 11582, 11750, 11918, 12086, 12254, 12423, 12591, 12759, 12927, 13095, 13263]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 1
# 冲击波攻击力 : {value1}%
- # REMOVE: data1 = [0, 993, 1094, 1195, 1295, 1396, 1497, 1598, 1698, 1799, 1900, 2001, 2101, 2202, 2303, 2404, 2504, 2605, 2706, 2806, 2907, 3008, 3109, 3209, 3310, 3411, 3512, 3612, 3713, 3814, 3915, 4015, 4116, 4217, 4318, 4418, 4519, 4620, 4721, 4821, 4922, 5023, 5124, 5224, 5325, 5426, 5527, 5627, 5728, 5829, 5930, 6030, 6131, 6232, 6333, 6433, 6534, 6635, 6736, 6836, 6937, 7038, 7139, 7239, 7340, 7441, 7542, 7642, 7743, 7844, 7945]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 1
@@ -142,19 +133,15 @@ class Skill8(ActiveSkill):
hasUP = False
# 爆炸攻击力 : {value0}%
- # REMOVE: data0 = [0, 6343, 6987, 7630, 8274, 8918, 9561, 10205, 10848, 11492, 12135, 12779, 13422, 14066, 14709, 15353, 15996, 16640, 17283, 17927, 18571, 19214, 19858, 20501, 21145, 21788, 22432, 23075, 23719, 24362, 25006, 25649, 26293, 26936, 27580, 28224, 28867, 29511, 30154, 30798, 31441, 32085, 32728, 33372, 34015, 34659, 35302, 35946, 36589, 37233, 37877, 38520, 39164, 39807, 40451, 41094, 41738, 42381, 43025, 43668, 44312, 44955, 45599, 46242, 46886, 47530, 48173, 48817, 49460, 50104, 50747]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 1
# - [转职为战线佣兵后] -
# 攻击力增加率 : {value1}%
- # REMOVE: data1 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 爆炸范围增加 : {value2}%
- # REMOVE: data2 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# [范围信息]
# 爆炸范围比率 : {value3}%
- # REMOVE: data3 = [0, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 瞬击
@@ -178,11 +165,9 @@ class Skill9(ActiveSkill):
hasUP = False
# 挥舞枪身攻击力 : {value0}%
- # REMOVE: data0 = [0, 1746, 1923, 2100, 2277, 2454, 2632, 2809, 2986, 3163, 3340, 3517, 3694, 3871, 4049, 4226, 4403, 4580, 4757, 4934, 5111, 5288, 5466, 5643, 5820, 5997, 6174, 6351, 6528, 6706, 6883, 7060, 7237, 7414, 7591, 7768, 7945, 8123, 8300, 8477, 8654, 8831, 9008, 9185, 9362, 9540, 9717, 9894, 10071, 10248, 10425, 10602, 10779, 10957, 11134, 11311, 11488, 11665, 11842, 12019, 12196, 12374, 12551, 12728, 12905, 13082, 13259, 13436, 13613, 13791, 13968]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 =1
# 斩击攻击力 : {value1}%
- # REMOVE: data1 = [0, 2620, 2886, 3152, 3417, 3683, 3949, 4215, 4481, 4746, 5012, 5278, 5544, 5810, 6075, 6341, 6607, 6873, 7139, 7404, 7670, 7936, 8202, 8468, 8733, 8999, 9265, 9531, 9797, 10062, 10328, 10594, 10860, 11126, 11391, 11657, 11923, 12189, 12455, 12720, 12986, 13252, 13518, 13784, 14049, 14315, 14581, 14847, 15113, 15378, 15644, 15910, 16176, 16442, 16707, 16973, 17239, 17505, 17771, 18036, 18302, 18568, 18834, 19100, 19365, 19631, 19897, 20163, 20429, 20694, 20960]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 1
@@ -208,11 +193,9 @@ class Skill10(ActiveSkill):
hasUP = False
# 下斩攻击力 : {value0}%
- # REMOVE: data0 = [0, 1989, 2191, 2392, 2594, 2796, 2998, 3199, 3401, 3603, 3805, 4006, 4208, 4410, 4612, 4813, 5015, 5217, 5419, 5621, 5822, 6024, 6226, 6428, 6629, 6831, 7033, 7235, 7436, 7638, 7840, 8042, 8243, 8445, 8647, 8849, 9051, 9252, 9454, 9656, 9858, 10059, 10261, 10463, 10665, 10866, 11068, 11270, 11472, 11673, 11875, 12077, 12279, 12480, 12682, 12884, 13086, 13288, 13489, 13691, 13893, 14095, 14296, 14498, 14700, 14902, 15103, 15305, 15507, 15709, 15910]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 1
# 上挑攻击力 : {value1}%
- # REMOVE: data1 = [0, 1991, 2193, 2395, 2597, 2799, 3001, 3203, 3405, 3607, 3809, 4011, 4213, 4415, 4617, 4819, 5021, 5223, 5425, 5627, 5829, 6031, 6233, 6435, 6637, 6839, 7041, 7243, 7445, 7647, 7849, 8051, 8253, 8455, 8657, 8859, 9061, 9263, 9465, 9667, 9869, 10071, 10273, 10475, 10677, 10879, 11081, 11283, 11485, 11687, 11889, 12091, 12293, 12495, 12697, 12899, 13101, 13303, 13505, 13707, 13910, 14112, 14314, 14516, 14718, 14920, 15122, 15324, 15526, 15728, 15930]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 1
@@ -237,13 +220,10 @@ class Skill15(PassiveSkill):
hasUP = False
# 物理攻击力增加率 : {value0}%
- # REMOVE: data0 = [0, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 命中率增加 : {value1}%
- # REMOVE: data1 = [0, 0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5, 5.5, 6, 6.5, 7, 7.5, 8, 8.5, 9, 9.5, 10]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 冷却时间减少率 : {value2}%
- # REMOVE: data2 = [0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
associate = [
@@ -273,15 +253,12 @@ class Skill16(ActiveSkill):
hasUP = True
# 斩击攻击力 : {value0}%
- # REMOVE: data0 = [0, 1229, 1354, 1478, 1603, 1728, 1852, 1977, 2102, 2226, 2351, 2476, 2600, 2725, 2850, 2975, 3099, 3224, 3349, 3473, 3598, 3723, 3847, 3972, 4097, 4221, 4346, 4471, 4595, 4720, 4845, 4969, 5094, 5219, 5343, 5468, 5593, 5718, 5842, 5967, 6092, 6216, 6341, 6466, 6590, 6715, 6840, 6964, 7089, 7214, 7338, 7463, 7588, 7712, 7837, 7962, 8086, 8211, 8336, 8461, 8585, 8710, 8835, 8959, 9084, 9209, 9333, 9458, 9583, 9707, 9832]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 1
# 射击攻击力 : {value1}%
- # REMOVE: data1 = [0, 1229, 1354, 1478, 1603, 1728, 1852, 1977, 2102, 2226, 2351, 2476, 2600, 2725, 2850, 2975, 3099, 3224, 3349, 3473, 3598, 3723, 3847, 3972, 4097, 4221, 4346, 4471, 4595, 4720, 4845, 4969, 5094, 5219, 5343, 5468, 5593, 5718, 5842, 5967, 6092, 6216, 6341, 6466, 6590, 6715, 6840, 6964, 7089, 7214, 7338, 7463, 7588, 7712, 7837, 7962, 8086, 8211, 8336, 8461, 8585, 8710, 8835, 8959, 9084, 9209, 9333, 9458, 9583, 9707, 9832]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 4
# 射击多段攻击次数 : {value2}次
- # REMOVE: data2 = [0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 掩护射击
@@ -306,15 +283,12 @@ class Skill17(ActiveSkill):
hasUP = True
# 对单个敌人攻击次数上限 : {value0}次
- # REMOVE: data0 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 射击攻击力 : {value1}%
- # REMOVE: data1 = [0, 695, 766, 836, 907, 977, 1048, 1118, 1189, 1259, 1330, 1400, 1471, 1541, 1612, 1682, 1753, 1823, 1894, 1964, 2035, 2105, 2176, 2246, 2317, 2387, 2458, 2528, 2599, 2669, 2740, 2810, 2881, 2951, 3022, 3092, 3163, 3233, 3304, 3374, 3445, 3515, 3586, 3656, 3727, 3797, 3868, 3938, 4009, 4079, 4150, 4220, 4291, 4361, 4432, 4502, 4573, 4643, 4714, 4784, 4855, 4925, 4996, 5066, 5137, 5207, 5278, 5348, 5419, 5489, 5560]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 10
# [范围信息]
# 子弹发射距离比率 : {value2}%
- # REMOVE: data2 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 剑刃突刺
@@ -341,26 +315,20 @@ class Skill18(ActiveSkill):
hasUP = True
# 突刺次数 : {value0}次
- # REMOVE: data0 = [0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 突刺攻击力 : {value1}%
- # REMOVE: data1 = [0, 865, 953, 1041, 1128, 1216, 1304, 1392, 1479, 1567, 1655, 1743, 1830, 1918, 2006, 2094, 2181, 2269, 2357, 2445, 2532, 2620, 2708, 2796, 2883, 2971, 3059, 3147, 3234, 3322, 3410, 3498, 3585, 3673, 3761, 3849, 3936, 4024, 4112, 4200, 4287, 4375, 4463, 4551, 4638, 4726, 4814, 4902, 4989, 5077, 5165, 5253, 5340, 5428, 5516, 5604, 5691, 5779, 5867, 5955, 6042, 6130, 6218, 6306, 6394, 6481, 6569, 6657, 6745, 6832, 6920]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 4
# 终结横斩攻击力 : {value2}%
- # REMOVE: data2 = [0, 2601, 2865, 3128, 3392, 3656, 3920, 4184, 4448, 4712, 4975, 5239, 5503, 5767, 6031, 6295, 6559, 6822, 7086, 7350, 7614, 7878, 8142, 8405, 8669, 8933, 9197, 9461, 9725, 9989, 10252, 10516, 10780, 11044, 11308, 11572, 11836, 12099, 12363, 12627, 12891, 13155, 13419, 13682, 13946, 14210, 14474, 14738, 15002, 15266, 15529, 15793, 16057, 16321, 16585, 16849, 17112, 17376, 17640, 17904, 18168, 18432, 18696, 18959, 19223, 19487, 19751, 20015, 20279, 20543, 20806]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 1
# 终结射击对单个敌人攻击次数上限 : {value3}次
- # REMOVE: data3 = [0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 终结射击攻击力 : {value4}%
- # REMOVE: data4 = [0, 838, 923, 1008, 1093, 1178, 1263, 1348, 1433, 1518, 1603, 1688, 1773, 1858, 1943, 2028, 2113, 2198, 2283, 2368, 2453, 2538, 2624, 2709, 2794, 2879, 2964, 3049, 3134, 3219, 3304, 3389, 3474, 3559, 3644, 3729, 3814, 3899, 3984, 4069, 4154, 4239, 4324, 4409, 4494, 4579, 4664, 4749, 4834, 4919, 5004, 5089, 5174, 5259, 5344, 5429, 5514, 5599, 5684, 5769, 5854, 5939, 6024, 6109, 6194, 6279, 6364, 6449, 6534, 6619, 6705]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 3
# [范围信息]
# 子弹发射距离比率 : {value5}%
- # REMOVE: data5 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
# 轮盘连射
@@ -385,26 +353,20 @@ class Skill19(ActiveSkill):
hasUP = True
# 射击次数 : {value0}次
- # REMOVE: data0 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 上挑攻击力 : {value1}%
- # REMOVE: data1 = [0, 3947, 4347, 4748, 5148, 5549, 5949, 6349, 6750, 7150, 7551, 7951, 8351, 8752, 9152, 9553, 9953, 10354, 10754, 11154, 11555, 11955, 12356, 12756, 13156, 13557, 13957, 14358, 14758, 15158, 15559, 15959, 16360, 16760, 17161, 17561, 17961, 18362, 18762, 19163, 19563, 19963, 20364, 20764, 21165, 21565, 21965, 22366, 22766, 23167, 23567, 23968, 24368, 24768, 25169, 25569, 25970, 26370, 26770, 27171, 27571, 27972, 28372, 28773, 29173, 29573, 29974, 30374, 30775, 31175, 31575]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 1
# 射击攻击力 : {value2}%
- # REMOVE: data2 = [0, 595, 655, 716, 776, 836, 897, 957, 1018, 1078, 1138, 1199, 1259, 1319, 1380, 1440, 1500, 1561, 1621, 1682, 1742, 1802, 1863, 1923, 1983, 2044, 2104, 2164, 2225, 2285, 2346, 2406, 2466, 2527, 2587, 2647, 2708, 2768, 2828, 2889, 2949, 3010, 3070, 3130, 3191, 3251, 3311, 3372, 3432, 3492, 3553, 3613, 3674, 3734, 3794, 3855, 3915, 3975, 4036, 4096, 4156, 4217, 4277, 4338, 4398, 4458, 4519, 4579, 4639, 4700, 4760]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 10
# power2 = 3.72 倍率写在三觉被动上
# 下劈攻击力 : {value3}%
- # REMOVE: data3 = [0, 5022, 5531, 6041, 6550, 7060, 7569, 8078, 8588, 9097, 9607, 10116, 10626, 11135, 11645, 12154, 12664, 13173, 13682, 14192, 14701, 15211, 15720, 16230, 16739, 17249, 17758, 18267, 18777, 19286, 19796, 20305, 20815, 21324, 21834, 22343, 22853, 23362, 23871, 24381, 24890, 25400, 25909, 26419, 26928, 27438, 27947, 28457, 28966, 29475, 29985, 30494, 31004, 31513, 32023, 32532, 33042, 33551, 34060, 34570, 35079, 35589, 36098, 36608, 37117, 37627, 38136, 38646, 39155, 39664, 40174]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# [范围信息]
# 射击 x轴范围 : {value4}px
- # REMOVE: data4 = [0, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
# 射击 y轴范围 : {value5}px
- # REMOVE: data5 = [0, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
data6 = data2
@@ -429,7 +391,6 @@ class Skill20(PassiveSkill):
hasUP = False
# 物理/魔法暴击率增加 : {value0}%
- # REMOVE: data0 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 利刃旋斩
@@ -453,18 +414,14 @@ class Skill21(ActiveSkill):
hasUP = True
# 旋转斩击多段攻击次数 : {value0}次
- # REMOVE: data0 = [0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 左右斩击攻击力 : {value1}%
- # REMOVE: data1 = [0, 1338, 1474, 1610, 1745, 1881, 2017, 2153, 2288, 2424, 2560, 2696, 2831, 2967, 3103, 3239, 3374, 3510, 3646, 3782, 3917, 4053, 4189, 4325, 4460, 4596, 4732, 4868, 5003, 5139, 5275, 5411, 5546, 5682, 5818, 5954, 6089, 6225, 6361, 6497, 6632, 6768, 6904, 7040, 7175, 7311, 7447, 7583, 7718, 7854, 7990, 8126, 8261, 8397, 8533, 8669, 8804, 8940, 9076, 9212, 9347, 9483, 9619, 9755, 9890, 10026, 10162, 10298, 10433, 10569, 10705]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 2
# 旋转斩击攻击力 : {value2}%
- # REMOVE: data2 = [0, 751, 827, 903, 980, 1056, 1132, 1208, 1284, 1361, 1437, 1513, 1589, 1665, 1742, 1818, 1894, 1970, 2046, 2123, 2199, 2275, 2351, 2427, 2504, 2580, 2656, 2732, 2808, 2885, 2961, 3037, 3113, 3189, 3265, 3342, 3418, 3494, 3570, 3646, 3723, 3799, 3875, 3951, 4027, 4104, 4180, 4256, 4332, 4408, 4485, 4561, 4637, 4713, 4789, 4866, 4942, 5018, 5094, 5170, 5247, 5323, 5399, 5475, 5551, 5628, 5704, 5780, 5856, 5932, 6009]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 5
# 最终旋斩攻击力 : {value3}%
- # REMOVE: data3 = [0, 4275, 4708, 5142, 5575, 6009, 6443, 6876, 7310, 7744, 8177, 8611, 9045, 9478, 9912, 10346, 10779, 11213, 11646, 12080, 12514, 12947, 13381, 13815, 14248, 14682, 15116, 15549, 15983, 16417, 16850, 17284, 17718, 18151, 18585, 19018, 19452, 19886, 20319, 20753, 21187, 21620, 22054, 22488, 22921, 23355, 23789, 24222, 24656, 25089, 25523, 25957, 26390, 26824, 27258, 27691, 28125, 28559, 28992, 29426, 29860, 30293, 30727, 31161, 31594, 32028, 32461, 32895, 33329, 33762, 34196]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
hit3 = 1
@@ -495,10 +452,8 @@ class Skill22(PassiveSkill):
hasUP = False
# 物理暴击伤害增加率 : {value0}%
- # REMOVE: data0 = [0, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 物理暴击率增加 : {value1}%
- # REMOVE: data1 = [0, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
associate = [ {"data":data0,"type":"*skillRation"}]
@@ -525,21 +480,16 @@ class Skill23(ActiveSkill):
hasUP = True
# 射击次数 : {value0}次
- # REMOVE: data0 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 基本移动距离 : {value1}px
- # REMOVE: data1 = [0, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 15
# 按下方向键时 : {value2}px
- # REMOVE: data2 = [0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 射击攻击力 : {value3}%
- # REMOVE: data3 = [0, 641, 706, 771, 836, 901, 966, 1031, 1096, 1161, 1226, 1291, 1356, 1421, 1486, 1551, 1616, 1681, 1746, 1812, 1877, 1942, 2007, 2072, 2137, 2202, 2267, 2332, 2397, 2462, 2527, 2592, 2657, 2722, 2787, 2852, 2917, 2982, 3047, 3112, 3177, 3242, 3307, 3372, 3437, 3502, 3567, 3632, 3697, 3762, 3827, 3892, 3957, 4023, 4088, 4153, 4218, 4283, 4348, 4413, 4478, 4543, 4608, 4673, 4738, 4803, 4868, 4933, 4998, 5063, 5128]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# [范围信息]
# 子弹发射距离比率 : {value4}%
- # REMOVE: data4 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
# 战术指示
@@ -561,28 +511,20 @@ class Skill24(ActiveSkill):
hasUP = False
# 增益效果持续时间 : {value0}秒
- # REMOVE: data0 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 基本攻击力和技能攻击力增加比率 : {value1}%
- # REMOVE: data1 = [0, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 攻击速度增加 : {value2}%
- # REMOVE: data2 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15.5, 16, 16.5, 17, 17.5, 18, 18.5, 19, 19.5, 20]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 移动速度增加 : {value3}%
- # REMOVE: data3 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15.5, 16, 16.5, 17, 17.5, 18, 18.5, 19, 19.5, 20]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 施放速度增加 : {value4}%
- # REMOVE: data4 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15.5, 16, 16.5, 17, 17.5, 18, 18.5, 19, 19.5, 20]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
# 队友攻击速度增加 : {value5}%
- # REMOVE: data5 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
# 队友移动速度增加 : {value6}%
- # REMOVE: data6 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
# 队友施放速度增加 : {value7}%
- # REMOVE: data7 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
# 游弹枪袭
@@ -607,15 +549,12 @@ class Skill25(ActiveSkill):
hasUP = True
# 射击攻击力 : {value0}%
- # REMOVE: data0 = [0, 474, 522, 570, 618, 666, 714, 763, 811, 859, 907, 955, 1003, 1051, 1099, 1147, 1195, 1243, 1291, 1340, 1388, 1436, 1484, 1532, 1580, 1628, 1676, 1724, 1772, 1820, 1869, 1917, 1965, 2013, 2061, 2109, 2157, 2205, 2253, 2301, 2349, 2397, 2446, 2494, 2542, 2590, 2638, 2686, 2734, 2782, 2830, 2878, 2926, 2975, 3023, 3071, 3119, 3167, 3215, 3263, 3311, 3359, 3407, 3455, 3503, 3552, 3600, 3648, 3696, 3744, 3792]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 30
# 射击多段攻击次数 : {value1}次
- # REMOVE: data1 = [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, 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]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# [范围信息]
# 子弹发射距离比率 : {value2}%
- # REMOVE: data2 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 全方位射击
@@ -644,22 +583,17 @@ class Skill26(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# 周围射击次数 : {value0}次
- # REMOVE: data0 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 周围射击攻击力 : {value1}%
- # REMOVE: data1 = [0, 824, 908, 991, 1075, 1158, 1242, 1326, 1409, 1493, 1576, 1660, 1744, 1827, 1911, 1994, 2078, 2162, 2245, 2329, 2412, 2496, 2580, 2663, 2747, 2830, 2914, 2998, 3081, 3165, 3248, 3332, 3416, 3499, 3583, 3666, 3750, 3833, 3917, 4001, 4084, 4168, 4251, 4335, 4419, 4502, 4586, 4669, 4753, 4837, 4920, 5004, 5087, 5171, 5255, 5338, 5422, 5505, 5589, 5673, 5756, 5840, 5923, 6007, 6091, 6174, 6258, 6341, 6425, 6509, 6592]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 15
# 最终射击次数 : {value2}次
- # REMOVE: data2 = [0, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 最终射击攻击力 : {value3}%
- # REMOVE: data3 = [0, 1374, 1513, 1653, 1792, 1931, 2071, 2210, 2350, 2489, 2628, 2768, 2907, 3047, 3186, 3325, 3465, 3604, 3743, 3883, 4022, 4162, 4301, 4440, 4580, 4719, 4859, 4998, 5137, 5277, 5416, 5556, 5695, 5834, 5974, 6113, 6252, 6392, 6531, 6671, 6810, 6949, 7089, 7228, 7368, 7507, 7646, 7786, 7925, 8064, 8204, 8343, 8483, 8622, 8761, 8901, 9040, 9180, 9319, 9458, 9598, 9737, 9876, 10016, 10155, 10295, 10434, 10573, 10713, 10852, 10992]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
hit3 = 6
# [范围信息]
# 打击范围比率 : {value4}%
- # REMOVE: data4 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
def vp_1(self):
@@ -705,29 +639,22 @@ class Skill27(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# 投掷前的旋转上挑攻击力 : {value0}%
- # REMOVE: data0 = [0, 1430, 1575, 1720, 1865, 2010, 2156, 2301, 2446, 2591, 2736, 2881, 3026, 3171, 3316, 3461, 3606, 3751, 3897, 4042, 4187, 4332, 4477, 4622, 4767, 4912, 5057, 5202, 5347, 5492, 5638, 5783, 5928, 6073, 6218, 6363, 6508, 6653, 6798, 6943, 7088, 7233, 7379, 7524, 7669, 7814, 7959, 8104, 8249, 8394, 8539, 8684, 8829, 8974, 9120, 9265, 9410, 9555, 9700, 9845, 9990, 10135, 10280, 10425, 10570, 10715, 10861, 11006, 11151, 11296, 11441]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 1
# 长刀飞出时的攻击次数 : {value1}次
- # REMOVE: data1 = [0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 长刀飞回时的攻击次数 : {value2}次
- # REMOVE: data2 = [0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 长刀旋转攻击力 : {value3}%
- # REMOVE: data3 = [0, 1154, 1271, 1388, 1505, 1622, 1739, 1856, 1973, 2090, 2207, 2324, 2441, 2559, 2676, 2793, 2910, 3027, 3144, 3261, 3378, 3495, 3612, 3729, 3846, 3963, 4080, 4197, 4314, 4431, 4548, 4666, 4783, 4900, 5017, 5134, 5251, 5368, 5485, 5602, 5719, 5836, 5953, 6070, 6187, 6304, 6421, 6538, 6655, 6773, 6890, 7007, 7124, 7241, 7358, 7475, 7592, 7709, 7826, 7943, 8060, 8177, 8294, 8411, 8528, 8645, 8762, 8880, 8997, 9114, 9231]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
hit3 = 8
# 射击攻击次数上限 : {value4}次
- # REMOVE: data4 = [0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
# 射击攻击力 : {value5}%
- # REMOVE: data5 = [0, 3068, 3380, 3691, 4002, 4313, 4625, 4936, 5247, 5558, 5870, 6181, 6492, 6803, 7115, 7426, 7737, 8049, 8360, 8671, 8982, 9294, 9605, 9916, 10227, 10539, 10850, 11161, 11473, 11784, 12095, 12406, 12718, 13029, 13340, 13651, 13963, 14274, 14585, 14897, 15208, 15519, 15830, 16142, 16453, 16764, 17075, 17387, 17698, 18009, 18320, 18632, 18943, 19254, 19566, 19877, 20188, 20499, 20811, 21122, 21433, 21744, 22056, 22367, 22678, 22990, 23301, 23612, 23923, 24235, 24546]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
hit5 = 5
# [范围信息]
# 长刀大小比率 : {value6}%
- # REMOVE: data6 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
def vp_1(self):
@@ -776,29 +703,22 @@ class Skill28(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# 斩击次数 : {value0}次
- # REMOVE: data0 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 斩击攻击力 : {value1}%
- # REMOVE: data1 = [0, 987, 1087, 1187, 1288, 1388, 1488, 1588, 1688, 1788, 1888, 1988, 2089, 2189, 2289, 2389, 2489, 2589, 2689, 2790, 2890, 2990, 3090, 3190, 3290, 3390, 3491, 3591, 3691, 3791, 3891, 3991, 4091, 4192, 4292, 4392, 4492, 4592, 4692, 4792, 4893, 4993, 5093, 5193, 5293, 5393, 5493, 5594, 5694, 5794, 5894, 5994, 6094, 6194, 6294, 6395, 6495, 6595, 6695, 6795, 6895, 6995, 7096, 7196, 7296, 7396, 7496, 7596, 7696, 7797, 7897]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 10
# 射击次数 : {value2}次
- # REMOVE: data2 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 射击攻击力 : {value3}%
- # REMOVE: data3 = [0, 681, 750, 819, 888, 957, 1027, 1096, 1165, 1234, 1303, 1372, 1441, 1510, 1579, 1648, 1718, 1787, 1856, 1925, 1994, 2063, 2132, 2201, 2270, 2339, 2408, 2478, 2547, 2616, 2685, 2754, 2823, 2892, 2961, 3030, 3099, 3169, 3238, 3307, 3376, 3445, 3514, 3583, 3652, 3721, 3790, 3860, 3929, 3998, 4067, 4136, 4205, 4274, 4343, 4412, 4481, 4550, 4620, 4689, 4758, 4827, 4896, 4965, 5034, 5103, 5172, 5241, 5311, 5380, 5449]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
hit3 = 15
# 最终横斩攻击力 : {value4}%
- # REMOVE: data4 = [0, 12819, 14119, 15420, 16720, 18021, 19321, 20622, 21922, 23223, 24523, 25824, 27124, 28425, 29725, 31026, 32326, 33627, 34927, 36228, 37528, 38829, 40129, 41430, 42730, 44031, 45331, 46631, 47932, 49232, 50533, 51833, 53134, 54434, 55735, 57035, 58336, 59636, 60937, 62237, 63538, 64838, 66139, 67439, 68740, 70040, 71341, 72641, 73942, 75242, 76542, 77843, 79143, 80444, 81744, 83045, 84345, 85646, 86946, 88247, 89547, 90848, 92148, 93449, 94749, 96050, 97350, 98651, 99951, 101252, 102552]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 1
# [范围信息]
# 斩击范围比率 : {value5}%
- # REMOVE: data5 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
# 射击范围比率 : {value6}%
- # REMOVE: data6 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
def vp_1(self):
@@ -842,12 +762,10 @@ class Skill29(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# 横斩攻击力 : {value0}%
- # REMOVE: data0 = [0, 49010, 53982, 58954, 63926, 68898, 73870, 78842, 83814, 88786, 93758, 98730, 103702, 108674, 113646, 118618, 123590, 128562, 133534, 138507, 143479, 148451, 153423, 158395, 163367, 168339, 173311, 178283, 183255, 188227, 193199, 198171, 203143, 208115, 213087, 218059, 223031, 228003, 232975, 237947, 242919, 247891, 252863, 257835, 262807, 267779, 272751, 277723, 282695, 287667, 292639, 297611, 302583, 307556, 312528, 317500, 322472, 327444, 332416, 337388, 342360, 347332, 352304, 357276, 362248, 367220, 372192, 377164, 382136, 387108, 392080]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 1
# [范围信息]
# 斩击范围比率 : {value1}%
- # REMOVE: data1 = [0, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
def vp_1(self):
@@ -885,7 +803,6 @@ class Skill30(PassiveSkill):
hasUP = False
# 基本攻击力和技能攻击力增加率 : {value0}%
- # REMOVE: data0 = [0, 4.5, 6.5, 8.5, 10.5, 12.5, 14.5, 16.5, 18.5, 20.5, 22.5, 24.5, 26.5, 28.5, 30.5, 32.5, 34.5, 36.5, 38.5, 40.5, 42.5, 44.5, 46.5, 48.5, 50.5, 52.5, 54.5, 56.5, 58.5, 60.5, 62.5, 64.5, 66.5, 68.5, 70.5, 72.5, 74.5, 76.5, 78.5, 80.5, 82.5, 84.5, 86.5, 88.5, 90.5, 92.5, 94.5, 96.5, 98.5, 100.5, 102.5]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
associate = [ {"data":data0,"type":"*skillRation"}]
@@ -913,27 +830,20 @@ class Skill31(ActiveSkill):
hasUP = False
# 每次攻击移动距离 : {value0}px
- # REMOVE: data0 = [0, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450, 450]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 剑术攻击次数 : {value1}次
- # REMOVE: data1 = [0, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 射击攻击次数 : {value2}次
- # REMOVE: data2 = [0, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 最终射击攻击次数 : {value3}次
- # REMOVE: data3 = [0, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 剑术攻击力 : {value4}%
- # REMOVE: data4 = [0, 2807, 3458, 4108, 4759, 5410, 6061, 6712, 7363, 8014, 8664, 9315, 9966, 10617, 11268, 11919, 12569, 13220, 13871, 14522, 15173, 15824, 16475, 17125, 17776, 18427, 19078, 19729, 20380, 21030, 21681, 22332, 22983, 23634, 24285, 24936, 25586, 26237, 26888, 27539, 28190, 28841, 29491, 30142, 30793, 31444, 32095, 32746, 33397, 34047, 34698]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 13
# 射击攻击力 : {value5}%
- # REMOVE: data5 = [0, 3422, 4215, 5008, 5802, 6595, 7389, 8182, 8976, 9769, 10562, 11356, 12149, 12943, 13736, 14529, 15323, 16116, 16910, 17703, 18497, 19290, 20083, 20877, 21670, 22464, 23257, 24050, 24844, 25637, 26431, 27224, 28018, 28811, 29604, 30398, 31191, 31985, 32778, 33571, 34365, 35158, 35952, 36745, 37539, 38332, 39125, 39919, 40712, 41506, 42299]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
hit5 = 8
# 最终射击攻击力 : {value6}%
- # REMOVE: data6 = [0, 3422, 4215, 5008, 5802, 6595, 7389, 8182, 8976, 9769, 10562, 11356, 12149, 12943, 13736, 14529, 15323, 16116, 16910, 17703, 18497, 19290, 20083, 20877, 21670, 22464, 23257, 24050, 24844, 25637, 26431, 27224, 28018, 28811, 29604, 30398, 31191, 31985, 32778, 33571, 34365, 35158, 35952, 36745, 37539, 38332, 39125, 39919, 40712, 41506, 42299]# noqa: E501
data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
hit6 = 8
@@ -962,19 +872,15 @@ class Skill32(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# 刺击攻击力 : {value0}%
- # REMOVE: data0 = [0, 18196, 20042, 21888, 23734, 25580, 27426, 29272, 31118, 32964, 34809, 36655, 38501, 40347, 42193, 44039, 45885, 47731, 49577, 51423, 53269, 55115, 56961, 58807, 60653, 62499, 64345, 66191, 68037, 69883, 71729, 73575, 75421, 77267, 79112, 80958, 82804, 84650, 86496, 88342, 90188, 92034, 93880, 95726, 97572, 99418, 101264, 103110, 104956, 106802, 108648]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 1
# 射击次数 : {value1}次
- # REMOVE: data1 = [0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 射击攻击力 : {value2}%
- # REMOVE: data2 = [0, 1368, 1507, 1646, 1784, 1923, 2062, 2201, 2340, 2478, 2617, 2756, 2895, 3034, 3172, 3311, 3450, 3589, 3728, 3866, 4005, 4144, 4283, 4422, 4560, 4699, 4838, 4977, 5116, 5254, 5393, 5532, 5671, 5809, 5948, 6087, 6226, 6365, 6503, 6642, 6781, 6920, 7059, 7197, 7336, 7475, 7614, 7753, 7891, 8030, 8169]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 20
# [范围信息]
# 刺击距离比率 : {value3}%
- # REMOVE: data3 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
def vp_1(self):
@@ -1021,26 +927,20 @@ class Skill33(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# 射击次数 : {value0}次
- # REMOVE: data0 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 射击攻击力 : {value1}%
- # REMOVE: data1 = [0, 2765, 3046, 3326, 3607, 3887, 4168, 4448, 4729, 5009, 5290, 5570, 5851, 6131, 6412, 6692, 6973, 7253, 7534, 7814, 8095, 8375, 8656, 8937, 9217, 9498, 9778, 10059, 10339, 10620, 10900, 11181, 11461, 11742, 12022, 12303, 12583, 12864, 13144, 13425, 13705, 13986, 14266, 14547, 14827, 15108, 15388, 15669, 15950, 16230, 16511]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
hit1 = 10
# 旋转斩击次数 : {value2}次
- # REMOVE: data2 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 旋转斩击攻击力 : {value3}%
- # REMOVE: data3 = [0, 2889, 3182, 3475, 3768, 4061, 4354, 4647, 4941, 5234, 5527, 5820, 6113, 6406, 6699, 6992, 7285, 7578, 7871, 8164, 8458, 8751, 9044, 9337, 9630, 9923, 10216, 10509, 10802, 11095, 11388, 11682, 11975, 12268, 12561, 12854, 13147, 13440, 13733, 14026, 14319, 14612, 14905, 15199, 15492, 15785, 16078, 16371, 16664, 16957, 17250]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
hit3 = 10
# 最终坠斩攻击力 : {value4}%
- # REMOVE: data4 = [0, 23887, 26310, 28734, 31157, 33580, 36004, 38427, 40850, 43274, 45697, 48120, 50544, 52967, 55390, 57814, 60237, 62660, 65084, 67507, 69930, 72354, 74777, 77200, 79624, 82047, 84470, 86894, 89317, 91740, 94164, 96587, 99010, 101434, 103857, 106280, 108704, 111127, 113550, 115974, 118397, 120820, 123244, 125667, 128090, 130514, 132937, 135360, 137784, 140207, 142630]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 1
# [范围信息]
# 最后一击范围比率 : {value5}%
- # REMOVE: data5 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
def vp_1(self):
@@ -1092,7 +992,6 @@ class Skill34(PassiveSkill):
hasUP = False
# 基本攻击力和技能攻击力增加率 : {value0}%
- # REMOVE: data0 = [0, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
associate = [ {"data":data0,"type":"*skillRation"}]
@@ -1123,32 +1022,24 @@ class Skill35(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# 前方移动距离 : {value0}px
- # REMOVE: data0 = [0, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 移动射击次数上限 : {value1}次
- # REMOVE: data1 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 移动射击攻击力 : {value2}%
- # REMOVE: data2 = [0, 3473, 3825, 4177, 4530, 4882, 5234, 5587, 5939, 6291, 6644, 6996, 7348, 7701, 8053, 8405, 8757, 9110, 9462, 9814, 10167, 10519, 10871, 11224, 11576, 11928, 12281, 12633, 12985, 13338, 13690, 14042, 14395, 14747, 15099, 15451, 15804, 16156, 16508, 16861, 17213, 17565, 17918, 18270, 18622, 18975, 19327, 19679, 20032, 20384, 20736]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 10
# 原地范围射击攻击次数上限 : {value3}次
- # REMOVE: data3 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 原地范围射击攻击力 : {value4}%
- # REMOVE: data4 = [0, 5209, 5738, 6266, 6795, 7323, 7852, 8380, 8908, 9437, 9965, 10494, 11022, 11551, 12079, 12608, 13136, 13665, 14193, 14722, 15250, 15779, 16307, 16836, 17364, 17892, 18421, 18949, 19478, 20006, 20535, 21063, 21592, 22120, 22649, 23177, 23706, 24234, 24763, 25291, 25820, 26348, 26876, 27405, 27933, 28462, 28990, 29519, 30047, 30576, 31104]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 10
# 后方射击次数上限 : {value5}次
- # REMOVE: data5 = [0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
# 后方射击攻击力 : {value6}%
- # REMOVE: data6 = [0, 3477, 3830, 4182, 4535, 4888, 5240, 5593, 5946, 6299, 6651, 7004, 7357, 7710, 8062, 8415, 8768, 9120, 9473, 9826, 10179, 10531, 10884, 11237, 11590, 11942, 12295, 12648, 13000, 13353, 13706, 14059, 14411, 14764, 15117, 15469, 15822, 16175, 16528, 16880, 17233, 17586, 17939, 18291, 18644, 18997, 19349, 19702, 20055, 20408, 20760]# noqa: E501
data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
hit6 = 0
# [范围信息]
# 打击范围增加比率 : {value7}%
- # REMOVE: data7 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
mode = ['原地','后方']
@@ -1218,15 +1109,12 @@ class Skill36(ActiveSkill):
vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
# [碧波瞬斩]每一击攻击力 : {value0}%
- # REMOVE: data0 = [0, 32122, 35381, 38640, 41898, 45157, 48416, 51675, 54933, 58192, 61451, 64710, 67968, 71227, 74486, 77745, 81003, 84262, 87521, 90780, 94038, 97297, 100556, 103815, 107073, 110332, 113591, 116850, 120108, 123367, 126626, 129885, 133143, 136402, 139661, 142920, 146178, 149437, 152696, 155955, 159213, 162472, 165731, 168990, 172248, 175507, 178766, 182025, 185283, 188542, 191801]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 3
# [碧波瞬斩]攻击次数 : {value1}次
- # REMOVE: data1 = [0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# [范围信息]
# [碧波瞬斩]斩击范围比率 : {value2}%
- # REMOVE: data2 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
def vp_1(self):
@@ -1272,25 +1160,19 @@ class Skill37(ActiveSkill):
hasUP = False
# 剑术攻击力 : {value0}%
- # REMOVE: data0 = [0, 16277, 20051, 23826, 27600, 31374, 35149, 38923, 42697, 46472, 50246, 54020, 57795, 61569, 65343, 69118, 72892, 76666, 80441, 84215, 87989, 91764, 95538, 99312, 103087, 106861, 110635, 114410, 118184, 121958, 125733, 129507, 133281, 137056, 140830, 144604, 148379, 152153, 155927, 159702, 163476, 167251, 171025, 174799, 178574, 182348, 186122, 189897, 193671, 197445, 201220]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 4
# 射击攻击次数 : {value1}次
- # REMOVE: data1 = [0, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 射击攻击力 : {value2}%
- # REMOVE: data2 = [0, 3949, 4865, 5781, 6696, 7612, 8528, 9444, 10359, 11275, 12191, 13107, 14022, 14938, 15854, 16770, 17686, 18601, 19517, 20433, 21349, 22264, 23180, 24096, 25012, 25927, 26843, 27759, 28675, 29590, 30506, 31422, 32338, 33253, 34169, 35085, 36001, 36916, 37832, 38748, 39664, 40579, 41495, 42411, 43327, 44242, 45158, 46074, 46990, 47905, 48821]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 11
# 最终齐射攻击次数 : {value3}次
- # REMOVE: data3 = [0, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 最终齐射攻击力 : {value4}%
- # REMOVE: data4 = [0, 4342, 5349, 6356, 7362, 8369, 9376, 10383, 11390, 12397, 13403, 14410, 15417, 16424, 17431, 18438, 19444, 20451, 21458, 22465, 23472, 24478, 25485, 26492, 27499, 28506, 29513, 30519, 31526, 32533, 33540, 34547, 35554, 36560, 37567, 38574, 39581, 40588, 41595, 42601, 43608, 44615, 45622, 46629, 47635, 48642, 49649, 50656, 51663, 52670, 53676]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 20
# 最终齐射爆炸攻击力 : {value5}%
- # REMOVE: data5 = [0, 21710, 26744, 31778, 36812, 41846, 46880, 51915, 56949, 61983, 67017, 72051, 77085, 82119, 87153, 92188, 97222, 102256, 107290, 112324, 117358, 122392, 127427, 132461, 137495, 142529, 147563, 152597, 157631, 162665, 167700, 172734, 177768, 182802, 187836, 192870, 197904, 202939, 207973, 213007, 218041, 223075, 228109, 233143, 238177, 243212, 248246, 253280, 258314, 263348, 268382]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
hit5 = 1
@@ -1318,16 +1200,12 @@ class Skill38(PassiveSkill):
hasUP = False
# 基本攻击力和转职技能攻击力增加率 : {value0}%
- # REMOVE: data0 = [0, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# [轮盘连射]暗刃射击次数 : {value1}次
- # REMOVE: data1 = [0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# [轮盘连射]暗刃射击攻击力 : 原射击攻击力的{value2}%
- # REMOVE: data2 = [0, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372, 372]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# [轮盘连射]罗朗斩击攻击力 : [轮盘连射]攻击力总和的{value3}%
- # REMOVE: data3 = [0, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
associate = [
@@ -1361,36 +1239,27 @@ class Skill39(ActiveSkill):
# [普通施放时]
# 暗刃支援射击攻击力 : {value0}%
- # REMOVE: data0 = [0, 6087, 6705, 7322, 7940, 8557, 9175, 9793, 10410, 11028, 11645, 12263, 12880, 13498, 14115, 14733, 15350, 15968, 16586, 17203, 17821, 18438, 19056, 19673, 20291, 20908, 21526, 22144, 22761, 23379, 23996, 24614, 25231, 25849, 26466, 27084, 27701, 28319, 28937, 29554, 30172, 30789, 31407, 32024, 32642, 33259, 33877, 34494, 35112, 35730, 36347]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 10
# 暗刃支援射击次数 : {value1}次
- # REMOVE: data1 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 罗朗斩击攻击力 : {value2}%
- # REMOVE: data2 = [0, 18833, 20744, 22654, 24565, 26476, 28386, 30297, 32208, 34118, 36029, 37939, 39850, 41761, 43671, 45582, 47493, 49403, 51314, 53224, 55135, 57046, 58956, 60867, 62777, 64688, 66599, 68509, 70420, 72331, 74241, 76152, 78062, 79973, 81884, 83794, 85705, 87615, 89526, 91437, 93347, 95258, 97169, 99079, 100990, 102900, 104811, 106722, 108632, 110543, 112454]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 6
# 罗朗斩击次数 : {value3}次
- # REMOVE: data3 = [0, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# [前方突进时]
# 比尔支援射击攻击力 : {value4}%
- # REMOVE: data4 = [0, 3477, 3830, 4183, 4536, 4889, 5241, 5594, 5947, 6300, 6652, 7005, 7358, 7711, 8064, 8416, 8769, 9122, 9475, 9828, 10180, 10533, 10886, 11239, 11591, 11944, 12297, 12650, 13003, 13355, 13708, 14061, 14414, 14767, 15119, 15472, 15825, 16178, 16530, 16883, 17236, 17589, 17942, 18294, 18647, 19000, 19353, 19705, 20058, 20411, 20764]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 0
# 比尔支援射击次数 : {value5}次
- # REMOVE: data5 = [0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
# 暗刃旋转斩击攻击力 : {value6}%
- # REMOVE: data6 = [0, 10429, 11487, 12545, 13603, 14661, 15719, 16777, 17835, 18893, 19951, 21009, 22067, 23125, 24183, 25241, 26299, 27357, 28415, 29473, 30531, 31589, 32647, 33705, 34763, 35821, 36879, 37937, 38995, 40053, 41111, 42169, 43227, 44285, 45343, 46401, 47459, 48517, 49575, 50633, 51691, 52749, 53807, 54865, 55923, 56981, 58039, 59097, 60155, 61213, 62271]# noqa: E501
data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
hit6 = 0
# 暗刃旋转斩击次数 : {value7}次
- # REMOVE: data7 = [0, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5]# noqa: E501
data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
# 暗刃终结斩击攻击力 : {value8}%
- # REMOVE: data8 = [0, 86901, 95717, 104533, 113349, 122165, 130982, 139798, 148614, 157430, 166246, 175062, 183878, 192694, 201510, 210326, 219142, 227958, 236774, 245590, 254406, 263223, 272039, 280855, 289671, 298487, 307303, 316119, 324935, 333751, 342567, 351383, 360199, 369015, 377831, 386647, 395464, 404280, 413096, 421912, 430728, 439544, 448360, 457176, 465992, 474808, 483624, 492440, 501256, 510072, 518888]# noqa: E501
data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
hit8 = 0
@@ -1434,35 +1303,26 @@ class Skill40(ActiveSkill):
hasUP = False
# 比尔、 布兰德射击攻击力 : {value0}%
- # REMOVE: data0 = [0, 1984, 2444, 2905, 3365, 3825, 4285, 4745, 5205, 5665, 6126, 6586, 7046, 7506, 7966, 8426, 8886, 9347, 9807, 10267, 10727, 11187, 11647, 12107, 12568, 13028, 13488, 13948, 14408, 14868, 15328, 15789, 16249, 16709, 17169, 17629, 18089, 18549, 19009, 19470, 19930, 20390, 20850, 21310, 21770, 22230, 22691, 23151, 23611, 24071, 24531]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
hit0 = 22
# 比尔、 布兰德射击次数 : {value1}次
- # REMOVE: data1 = [0, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 暗刃、 罗朗登场攻击力 : {value2}%
- # REMOVE: data2 = [0, 40876, 50355, 59833, 69312, 78790, 88269, 97747, 107226, 116704, 126183, 135661, 145140, 154618, 164097, 173575, 183054, 192532, 202011, 211490, 220968, 230447, 239925, 249404, 258882, 268361, 277839, 287318, 296796, 306275, 315753, 325232, 334710, 344189, 353667, 363146, 372624, 382103, 391581, 401060, 410538, 420017, 429496, 438974, 448453, 457931, 467410, 476888, 486367, 495845, 505324]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
hit2 = 2
# 暗刃、 罗朗登场攻击次数 : {value3}次
- # REMOVE: data3 = [0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
# 暗刃、 罗朗乱舞斩击攻击力 : {value4}%
- # REMOVE: data4 = [0, 34063, 41962, 49861, 57760, 65659, 73557, 81456, 89355, 97254, 105152, 113051, 120950, 128849, 136747, 144646, 152545, 160444, 168342, 176241, 184140, 192039, 199938, 207836, 215735, 223634, 231533, 239431, 247330, 255229, 263128, 271026, 278925, 286824, 294723, 302622, 310520, 318419, 326318, 334217, 342115, 350014, 357913, 365812, 373710, 381609, 389508, 397407, 405306, 413204, 421103]# noqa: E501
data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
hit4 = 4
# 暗刃、 罗朗乱舞斩击次数 : {value5}次
- # REMOVE: data5 = [0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]# noqa: E501
data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
# 比尔、 布兰德乱射攻击力 : {value6}%
- # REMOVE: data6 = [0, 4088, 5035, 5983, 6931, 7879, 8827, 9775, 10723, 11670, 12618, 13566, 14514, 15462, 16410, 17358, 18305, 19253, 20201, 21149, 22097, 23045, 23993, 24940, 25888, 26836, 27784, 28732, 29680, 30627, 31575, 32523, 33471, 34419, 35367, 36315, 37262, 38210, 39158, 40106, 41054, 42002, 42950, 43897, 44845, 45793, 46741, 47689, 48637, 49585, 50532]# noqa: E501
data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
hit6 = 16
# 比尔、 布兰德乱射次数 : {value7}次
- # REMOVE: data7 = [0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16]# noqa: E501
data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
# 终结一击攻击力 : {value8}%
- # REMOVE: data8 = [0, 217951, 268491, 319030, 369570, 420109, 470649, 521188, 571728, 622267, 672807, 723346, 773886, 824425, 874965, 925504, 976044, 1026583, 1077123, 1127662, 1178202, 1228741, 1279281, 1329820, 1380359, 1430899, 1481438, 1531978, 1582517, 1633057, 1683596, 1734136, 1784675, 1835215, 1885754, 1936294, 1986833, 2037373, 2087912, 2138452, 2188991, 2239531, 2290070, 2340610, 2391149, 2441689, 2492228, 2542767, 2593307, 2643846, 2694386]# noqa: E501
data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
hit8 = 1
diff --git a/backend/core/character/GF/swordman_female/sword_master.py b/backend/core/character/GF/swordman_female/sword_master.py
index ef748e6e..ef618b3b 100644
--- a/backend/core/character/GF/swordman_female/sword_master.py
+++ b/backend/core/character/GF/swordman_female/sword_master.py
@@ -23,16 +23,12 @@ class Skill0(PassiveSkill):
hasUP = False
# 触发增益效果所需连击数 : {value0}
- # REMOVE: data0 = [0, 5]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# 暴击率增加 : {value1}%
- # REMOVE: data1 = [0, 1]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
# 暴击率增加上限 : {value2}%
- # REMOVE: data2 = [0, 5]# noqa: E501
data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
# 增益效果持续时间 : {value3}秒
- # REMOVE: data3 = [0, 5]# noqa: E501
data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
@@ -121,11 +117,9 @@ class Skill3(ActiveSkill):
hasUP = True
# 斩击攻击力 : {value0}%
- # REMOVE: data0 = [0, 2454, 2703, 2952, 3201, 3450, 3699, 3948, 4197, 4446, 4695, 4944, 5193, 5441, 5690, 5939, 6188, 6437, 6686, 6935, 7184, 7433, 7682, 7931, 8180, 8429, 8678, 8927, 9176, 9425, 9674, 9923, 10172, 10421, 10670, 10919, 11167, 11416, 11665, 11914, 12163, 12412, 12661, 12910, 13159, 13408, 13657, 13906, 14155, 14404, 14653, 14902, 15151, 15400, 15649, 15898, 16147, 16396, 16645, 16893, 17142, 17391, 17640, 17889, 18138, 18387, 18636, 18885, 19134, 19383, 19632]# noqa: E501
data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
# [范围信息]
# 反击范围比率 : {value1}%
- # REMOVE: data1 = [0, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
diff --git a/backend/core/character/GF/swordman_male/weapon_master.py b/backend/core/character/GF/swordman_male/weapon_master.py
index 64132199..7deab286 100644
--- a/backend/core/character/GF/swordman_male/weapon_master.py
+++ b/backend/core/character/GF/swordman_male/weapon_master.py
@@ -1,1246 +1,2033 @@
-#41f1cdc2ff58bb5fdc287be0db2a8df3
-from core.basic.skill import PassiveSkill, ActiveSkill, characterLv
-from core.basic.character import Character
-
-
-class ActiveSkill(ActiveSkill):
- totalhit = 0
- """总hit"""
- thrustcount = 0
- """刺伤层数"""
- swordnum = 0
- """穿云刺落剑数"""
-
- def skillInfo(self, mode = None):
- return super().skillInfo(mode) + (self.swordnum,self.totalhit,self.thrustcount,)
-
-# 疾影手 신속한 무기 교체
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/dcd536f1674630f01fc9667bb202b851?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill0(PassiveSkill):
- name = "疾影手"
- learnLv = 1
- masterLv = 1
- maxLv = 1
- position = 9 #TODO
- rangeLv = 1
- uuid = "dcd536f1674630f01fc9667bb202b851"
-
- data0 = [0, 50]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 7.5]# noqa: E501
- hit1 = 1 #TODO
-
- data2 = [0, 10]# noqa: E501
- hit2 = 1 #TODO
-
-
-# 基础精通 기본기 숙련
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/5a56514f35cf0270ae8d6c65f8fefd78?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill1(ActiveSkill):
- name = '基础精通'
- icon = '$common/$name'
- learnLv = 1
- masterLv = characterLv
- maxLv = 200
- position = 1
- rangeLv = 1
- damage = False
- type = 'passive'
- uuid = "5a56514f35cf0270ae8d6c65f8fefd78"
- icon = "$common/$uuid"
- data0 = [0, 150, 158.7, 167.3, 176, 184.5, 193.2, 201.8, 210.5, 219.2, 227.7, 236.4, 245, 253.7, 262.2, 270.9, 284.3, 297.6, 311, 324.3, 337.7, 350.9, 364.2, 377.6, 390.9, 404.3, 417.6, 431, 444.3, 457.7, 471, 484.2, 497.6, 510.9, 524.3, 537.6, 551, 564.3, 577.7, 591, 604.4, 617.7, 630.9, 644.3, 657.6, 671, 684.3, 697.7, 711, 724.4, 737.7, 751.1, 764.3, 777.6, 791, 804.3, 817.7, 831, 844.4, 857.7, 871.1, 884.4, 897.8, 911, 924.3, 937.7, 951, 964.4, 977.7, 991.1, 1004.4, 1017.8, 1031.1, 1044.5, 1057.7, 1071, 1084.4, 1097.7, 1111.1, 1124.4, 1137.8, 1151.1, 1164.5, 1177.8, 1191, 1204.4, 1217.7, 1231.1, 1244.4, 1257.8, 1271.1, 1284.5, 1297.8, 1311.2, 1324.5, 1337.7, 1351.1, 1364.4, 1377.8, 1391.1, 1404.5, 1417.8, 1431.2, 1444.5, 1457.9, 1471.2, 1484.6, 1497.9, 1511.3, 1524.6, 1538, 1551.3, 1564.7, 1578, 1591.4, 1604.7, 1618.1, 1631.4, 1644.8, 1658.1, 1671.5, 1684.8, 1698.2, 1711.5, 1724.9, 1738.2, 1751.6, 1764.9, 1778.3, 1791.6, 1805, 1818.3, 1831.7, 1845, 1858.4, 1871.7, 1885.1, 1898.4, 1911.8, 1925.1, 1938.5, 1951.8, 1965.2, 1978.5, 1991.9, 2005.2, 2018.6, 2031.9, 2045.3, 2058.6, 2072, 2085.3, 2098.7, 2112, 2125.4, 2138.7, 2152.1, 2165.4, 2178.8, 2192.1, 2205.5, 2218.8, 2232.2, 2245.5, 2258.9, 2272.2, 2285.6, 2298.9, 2312.3, 2325.6, 2339, 2352.3, 2365.7, 2379, 2392.4, 2405.7, 2419.1, 2432.4, 2445.8, 2459.1, 2472.5, 2485.8, 2499.2, 2512.5, 2525.9, 2539.2, 2552.6, 2565.9, 2579.3, 2592.6, 2606, 2619.3, 2632.7, 2646, 2659.4, 2672.7, 2686.1, 2699.4, 2712.8, 2726.1, 2739.5]# noqa: E501
-
- associate = [{"type":"*skillRation","data":[i-100 if i>0 else 0 for i in data0],"skills":["里 · 鬼剑术","空中连斩"]}]
-
-# 空中连斩 공중 연속 베기
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/78bd107acd474518b606be1e4fd38239?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill2(ActiveSkill):
- name = "空中连斩"
- learnLv = 5
- masterLv = 1
- maxLv = 11
- position = 10 #todo
- rangeLv = 1
- mp = [5, 7]
- uuid = "78bd107acd474518b606be1e4fd38239"
-
- # 两刀,实际第二刀才出伤害 为了统计hit
- data0 = [0, 195, 209, 221, 234, 247, 260, 275, 286, 299, 312, 326]# noqa: E501
- hit0 = 2
- power0 = 0.5
-
- # 太刀
- data1 = [i - 100 if i > 100 else i for i in data0]
- hit1 = 2
- power1 = 1
-
- def skillInfo(self, mode = None):
- if self.char.GetWeaponType() == '太刀':
- self.hit0 = 0
- else:
- self.hit1 = 0
- return super().skillInfo(mode)
-
-# 光剑精通 광검 마스터리
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/717f1e2104fe4b796f800352fa143ecc?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill3(PassiveSkill):
- name = "光剑精通"
- learnLv = 15
- masterLv = 1
- maxLv = 40
- position = 2
- rangeLv = 3
- uuid = "717f1e2104fe4b796f800352fa143ecc"
-
- data0 = [0, 9.5, 11, 12.5, 14, 15.5, 17, 18.5, 20, 21.5, 23, 24.5, 26, 27.5, 29, 30.5, 32, 33.5, 35, 36.5, 38, 39.5, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77]# noqa: E501
-
- data16 = [0, 16.8, 18.3, 19.8, 21.3, 22.8, 24.3, 25.8, 27.3, 28.8, 30.3, 31.8, 33.3, 34.8, 36.3, 37.8, 39.3, 40.8, 42.3, 43.8, 45.3, 46.8, 48.3, 50.3, 52.3, 54.3, 56.3, 58.3, 60.3, 62.3, 64.3, 66.3, 68.3, 70.3, 72.3, 74.3, 76.3, 78.3, 80.3, 82.3, 84.3]# noqa: E501
-
- def effect(self, old, new):
- weapon = self.char.GetWeaponType()
- if weapon[0] != "光剑":
- return
- data = self.data0
- if weapon[1] == "传世武器":
- data = self.data16
- self.associate = [{"type":"$*PAtkP","data":data}]
- return super().effect(old, new)
-
-# 三段斩 단공참
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/f2fb27162beb0b87a7cb9af7900e95f2?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill4(ActiveSkill):
- name = "三段斩"
- learnLv = 15
- masterLv = 60
- maxLv = 70
- position = 3 #TODO
- rangeLv = 2
- cd = 6
- mp = [12, 120]
- damage = False
- uuid = "f2fb27162beb0b87a7cb9af7900e95f2"
-
- data0 = [0, 889, 980, 1070, 1160, 1250, 1341, 1431, 1521, 1611, 1702, 1792, 1882, 1972, 2062, 2153, 2243, 2333, 2423, 2514, 2604, 2694, 2784, 2875, 2965, 3055, 3145, 3235, 3326, 3416, 3506, 3596, 3687, 3777, 3867, 3957, 4048, 4138, 4228, 4318, 4408, 4499, 4589, 4679, 4769, 4860, 4950, 5040, 5130, 5221, 5311, 5401, 5491, 5581, 5672, 5762, 5852, 5942, 6033, 6123, 6213, 6303, 6394, 6484, 6574, 6664, 6754, 6845, 6935, 7025, 7115]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 1669, 1838, 2007, 2176, 2346, 2515, 2684, 2853, 3023, 3192, 3361, 3530, 3700, 3869, 4038, 4208, 4377, 4546, 4715, 4885, 5054, 5223, 5392, 5562, 5731, 5900, 6070, 6239, 6408, 6577, 6747, 6916, 7085, 7254, 7424, 7593, 7762, 7931, 8101, 8270, 8439, 8609, 8778, 8947, 9116, 9286, 9455, 9624, 9793, 9963, 10132, 10301, 10471, 10640, 10809, 10978, 11148, 11317, 11486, 11655, 11825, 11994, 12163, 12333, 12502, 12671, 12840, 13010, 13179, 13348]# noqa: E501
- hit1 = 1 #TODO
-
- data2 = [0, 889, 980, 1070, 1160, 1250, 1341, 1431, 1521, 1611, 1702, 1792, 1882, 1972, 2062, 2153, 2243, 2333, 2423, 2514, 2604, 2694, 2784, 2875, 2965, 3055, 3145, 3235, 3326, 3416, 3506, 3596, 3687, 3777, 3867, 3957, 4048, 4138, 4228, 4318, 4408, 4499, 4589, 4679, 4769, 4860, 4950, 5040, 5130, 5221, 5311, 5401, 5491, 5581, 5672, 5762, 5852, 5942, 6033, 6123, 6213, 6303, 6394, 6484, 6574, 6664, 6754, 6845, 6935, 7025, 7115]# noqa: E501
- hit2 = 1 #TODO
-
- data3 = [0, 1669, 1838, 2007, 2176, 2346, 2515, 2684, 2853, 3023, 3192, 3361, 3530, 3700, 3869, 4038, 4208, 4377, 4546, 4715, 4885, 5054, 5223, 5392, 5562, 5731, 5900, 6070, 6239, 6408, 6577, 6747, 6916, 7085, 7254, 7424, 7593, 7762, 7931, 8101, 8270, 8439, 8609, 8778, 8947, 9116, 9286, 9455, 9624, 9793, 9963, 10132, 10301, 10471, 10640, 10809, 10978, 11148, 11317, 11486, 11655, 11825, 11994, 12163, 12333, 12502, 12671, 12840, 13010, 13179, 13348]# noqa: E501
- hit3 = 1 #TODO
-
- data4 = [0, 1753, 1931, 2108, 2286, 2464, 2642, 2820, 2998, 3175, 3353, 3531, 3709, 3887, 4065, 4242, 4420, 4598, 4776, 4954, 5131, 5309, 5487, 5665, 5843, 6021, 6198, 6376, 6554, 6732, 6910, 7088, 7265, 7443, 7621, 7799, 7977, 8154, 8332, 8510, 8688, 8866, 9044, 9221, 9399, 9577, 9755, 9933, 10111, 10288, 10466, 10644, 10822, 11000, 11177, 11355, 11533, 11711, 11889, 12067, 12244, 12422, 12600, 12778, 12956, 13134, 13311, 13489, 13667, 13845, 14023]# noqa: E501
- hit4 = 1 #TODO
-
-
-# 短剑精通 소검 마스터리
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/01c3a2fb793d293a25ed8dc7a0d70c1a?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill5(PassiveSkill):
- name = "短剑精通"
- learnLv = 15
- masterLv = 1
- maxLv = 40
- line = 10
- position = 0 #TODO
- rangeLv = 3
- uuid = "01c3a2fb793d293a25ed8dc7a0d70c1a"
- hasUP = False
-
- data0 = [0, 16.8, 18.3, 19.8, 21.3, 22.8, 24.3, 25.8, 27.3, 28.8, 30.3, 31.8, 33.3, 34.8, 36.3, 37.8, 39.3, 40.8, 42.3, 43.8, 45.3, 46.8, 48.3, 50.3, 52.3, 54.3, 56.3, 58.3, 60.3, 62.3, 64.3, 66.3, 68.3, 70.3, 72.3, 74.3, 76.3, 78.3, 80.3, 82.3, 84.3]# noqa: E501
-
- # [里 · 鬼剑术]剑气攻击力
- data3 = [0, 165, 192, 218, 244, 271, 297, 323, 350, 376, 402, 429, 455, 482, 508, 534, 561, 587, 613, 640, 666, 692, 719, 745, 771, 798, 824, 850, 877, 903, 930, 956, 982, 1009, 1035, 1061, 1088, 1114, 1140, 1167, 1193]# noqa: E501
-
- # 破军升龙击
- data11 = [0, 0, 0, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45]# noqa: E501
-
- # 猛龙断空斩
- data12 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25]# noqa: E501
-
-
- data13 = [0, 16.8, 18.3, 19.8, 21.3, 22.8, 24.3, 25.8, 27.3, 28.8, 30.3, 31.8, 33.3, 34.8, 36.3, 37.8, 39.3, 40.8, 42.3, 43.8, 45.3, 46.8, 48.3, 50.3, 52.3, 54.3, 56.3, 58.3, 60.3, 62.3, 64.3, 66.3, 68.3, 70.3, 72.3, 74.3, 76.3, 78.3, 80.3, 82.3, 84.3]# noqa: E501
-
-
- def effect(self, old, new):
- weapon = self.char.GetWeaponType()
- if weapon[0] != "短剑":
- return
- data = self.data0
- if weapon[1] == "传世武器":
- data = self.data13
- self.associate = [
- {"type":"$*PAtkP","data":data},
- {"type":"+dataplus0","data":self.data3,"skills":["里 · 鬼剑术"],"ratio":1},
- {"type":"*skillRation","data":self.data11,"skills":["破军升龙击"]},
- {"type":"*skillRation","data":self.data12,"skills":["猛龙断空斩"]},
- ]
- return super().effect(old, new)
-
-
-# 太刀精通 도 마스터리
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/8f73f243041c2d27739fe7696f02bf9b?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill6(ActiveSkill):
- name = "太刀精通"
- learnLv = 15
- masterLv = 1
- maxLv = 40
- line = 10
- position = 1 #TODO
- rangeLv = 3
- type = "passive"
- uuid = "8f73f243041c2d27739fe7696f02bf9b"
- hasUP = False
-
- # 物理攻击力增加
- data0 = [0, 9.2, 10.7, 12.2, 13.7, 15.2, 16.7, 18.2, 19.7, 21.2, 22.7, 24.2, 25.7, 27.2, 28.7, 30.2, 31.7, 33.2, 34.7, 36.2, 37.7, 39.2, 40.7, 42.7, 44.7, 46.7, 48.7, 50.7, 52.7, 54.7, 56.7, 58.7, 60.7, 62.7, 64.7, 66.7, 68.7, 70.7, 72.7, 74.7, 76.7]# noqa: E501
- hit0 = 0
-
- # 刺伤几率
- data4 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 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]
-
- # 刺伤爆炸伤害(下限)
- data5 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2638, 2803, 2968, 3134, 3295, 3460, 3621, 3789, 3953, 4117, 4279, 4448, 4609, 4778, 4936, 5104, 5264, 5430, 5597, 5759, 5925, 6087, 6250, 6419, 6580, 6749, 6909, 7078, 7243, 7407, 7574]# noqa: E501
-
- # 刺伤爆炸伤害(上限)
- data6 = [0, 7363, 8537, 9711, 10884, 12058, 13232, 14406, 15580, 16753, 17927, 19101, 20275, 21449, 22623, 23796, 24970, 26144, 27318, 28492, 29665, 30839, 32013, 33187, 34361, 35534, 36708, 37882, 39056, 40230, 41404, 42577, 43751, 44925, 46099, 47273, 48446, 49620, 50794, 51968, 53142]# noqa: E501
-
- # [空中连斩]附加攻击力
- data8 = [0, 63, 68, 72, 76, 79, 84, 87, 93, 96, 99, 104, 107, 111, 115, 120, 123, 127, 131, 134, 138, 143, 147, 150, 155, 159, 161, 166, 171, 174, 177, 183, 186, 190, 196, 198, 202, 204, 209, 214, 219]# noqa: E501
-
- # [空中连斩]对刺伤状态增加攻击力
- data9 = [0, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150]# noqa: E501
-
- # 传世武器物攻增加
- data10 = [0, 16.8, 18.3, 19.8, 21.3, 22.8, 24.3, 25.8, 27.3, 28.8, 30.3, 31.8, 33.3, 34.8, 36.3, 37.8, 39.3, 40.8, 42.3, 43.8, 45.3, 46.8, 48.3, 50.3, 52.3, 54.3, 56.3, 58.3, 60.3, 62.3, 64.3, 66.3, 68.3, 70.3, 72.3, 74.3, 76.3, 78.3, 80.3, 82.3, 84.3]# noqa: E501
-
- def effect(self, old, new):
- weapon = self.char.GetWeaponType()
- if weapon[0] != "太刀":
- return
- data = self.data0
- if weapon[1] == "传世武器":
- data = self.data10
- self.associate = [
- {"type":"$*PAtkP","data":data},
- {"type":"*power1","data":[i-100 if i>100 else 0 for i in self.data9],"skills":["空中连斩"]},
- ]
- return super().effect(old, new)
-
- def getSkillData(self, lv = 0):
- weapon = self.char.GetWeaponType()
- if weapon[0] != "太刀":
- return 0
- # 刺伤期望伤害 (17层引爆上限) / 17 (17层结算1次爆炸) * 刺伤触发几率
- return self.data6[lv] * 1 / 17 * self.data4[lv] / 100
-
- def getSkillCD(self,mode=None):
- return 1.0
-# 巨剑精通 대검 마스터리
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/8c2379737c5acc935c1731f67f607655?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill7(PassiveSkill):
- name = "巨剑精通"
- learnLv = 15
- masterLv = 1
- maxLv = 40
- line = 10
- position = 0 #TODO
- rangeLv = 3
- uuid = "8c2379737c5acc935c1731f67f607655"
-
- data0 = [0, 14.4, 15.9, 17.4, 18.9, 20.4, 21.9, 23.4, 24.9, 26.4, 27.9, 29.4, 30.9, 32.4, 33.9, 35.4, 36.9, 38.4, 39.9, 41.4, 42.9, 44.4, 45.9, 47.9, 49.9, 51.9, 53.9, 55.9, 57.9, 59.9, 61.9, 63.9, 65.9, 67.9, 69.9, 71.9, 73.9, 75.9, 77.9, 79.9, 81.9]# noqa: E501
-
- # [里 · 鬼剑术]额外附加
- data3 = [0, 324, 375, 427, 479, 530, 582, 633, 685, 737, 788, 840, 891, 943, 995, 1046, 1098, 1149, 1201, 1253, 1304, 1356, 1407, 1459, 1511, 1562, 1614, 1665, 1717, 1769, 1820, 1872, 1923, 1975, 2027, 2078, 2130, 2181, 2233, 2285, 2336]# noqa: E501
-
- data8 = [0, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130]
-
- data9 = [0, 16.8, 18.3, 19.8, 21.3, 22.8, 24.3, 25.8, 27.3, 28.8, 30.3, 31.8, 33.3, 34.8, 36.3, 37.8, 39.3, 40.8, 42.3, 43.8, 45.3, 46.8, 48.3, 50.3, 52.3, 54.3, 56.3, 58.3, 60.3, 62.3, 64.3, 66.3, 68.3, 70.3, 72.3, 74.3, 76.3, 78.3, 80.3, 82.3, 84.3]# noqa: E501
-
- def effect(self, old, new):
- weapon = self.char.GetWeaponType()
- if weapon[0] != "巨剑":
- return
- data = self.data0
- if weapon[1] == "传世武器":
- data = self.data9
- self.associate = [
- {"type":"$*PAtkP","data":data},
- {"type":"+dataplus0","data":self.data3,"skills":["里 · 鬼剑术"],"ratio":1},
- {"type":"+power1","data":[i - 100 if i > 100 else i for i in self.data8],"skills":["拔刀斩"]},
- ]
- return super().effect(old, new)
-
-# 钝器精通 둔기 마스터리
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/9cb6f9ed646fa87f9b7680a42ce83d1a?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill8(PassiveSkill):
- name = "钝器精通"
- learnLv = 15
- masterLv = 1
- maxLv = 40
- line = 10
- position = 1 #TODO
- rangeLv = 3
- uuid = "9cb6f9ed646fa87f9b7680a42ce83d1a"
-
- data0 = [0, 11.3, 12.8, 14.3, 15.8, 17.3, 18.8, 20.3, 21.8, 23.3, 24.8, 26.3, 27.8, 29.3, 30.8, 32.3, 33.8, 35.3, 36.8, 38.3, 39.8, 41.3, 42.8, 44.8, 46.8, 48.8, 50.8, 52.8, 54.8, 56.8, 58.8, 60.8, 62.8, 64.8, 66.8, 68.8, 70.8, 72.8, 74.8, 76.8, 78.8]# noqa: E501
- hit0 = 1 #TODO
-
- data9 = [0, 16.8, 18.3, 19.8, 21.3, 22.8, 24.3, 25.8, 27.3, 28.8, 30.3, 31.8, 33.3, 34.8, 36.3, 37.8, 39.3, 40.8, 42.3, 43.8, 45.3, 46.8, 48.3, 50.3, 52.3, 54.3, 56.3, 58.3, 60.3, 62.3, 64.3, 66.3, 68.3, 70.3, 72.3, 74.3, 76.3, 78.3, 80.3, 82.3, 84.3]# noqa: E501
-
- def effect(self, old, new):
- weapon = self.char.GetWeaponType()
- if weapon[0] != "钝器":
- return
- data = self.data0
- if weapon[1] == "传世武器":
- data = self.data9
- self.associate = [{"type":"$*PAtkP","data":data},]
- return super().effect(old, new)
-
-# 武器奥义 무기의 극의
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/8ee0099656df08a0b39225f8a21d514b?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill9(PassiveSkill):
- name = "武器奥义"
- learnLv = 15
- masterLv = 20
- maxLv = 30
- position = 1
- rangeLv = 3
- uuid = "8ee0099656df08a0b39225f8a21d514b"
-
- associate = [{"type":"+lv","data":[i + 1 if i > 0 else i for i in range(0, maxLv + 2)],"ratio":1,"skills":["光剑精通","钝器精通","太刀精通","巨剑精通","短剑精通"]}] #TODO
-
-# 光剑掌握 광검 사용 가능
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/bb34e8854a93fd250347a1c64119f7ab?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill10(PassiveSkill):
- name = "光剑掌握"
- learnLv = 15
- masterLv = 10
- maxLv = 20
- position = 9 #TODO
- rangeLv = 3
- uuid = "bb34e8854a93fd250347a1c64119f7ab"
-
- data0 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]# noqa: E501
-
- data1 = [0, 1.5, 3, 4.5, 6, 7.5, 9, 10.5, 12, 13.5, 15, 16.5, 18, 19.5, 21, 22.5, 24, 25.5, 27, 28.5, 30]# noqa: E501
-
- associate = [
- {"type":"*cdReduce","data":data0,"exceptSkills":['极 · 鬼剑术 (暴风式)', '万剑归宗', '万剑极诣·开天斩'],"weapon":["光剑"]},
- ]
-
-# 里 · 鬼剑术 리 귀검술
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/51a08fd0c90f0a5276cd552047fac93d?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill11(ActiveSkill):
- name = "里 · 鬼剑术"
- learnLv = 15
- masterLv = 1
- maxLv = 11
- position = 4 #TODO
- rangeLv = 15
- mp = [6, 140]
- uuid = "51a08fd0c90f0a5276cd552047fac93d"
- thrusthit = 8
-
- @property
- def swordnum(self):
- list = {'短剑': 3, '光剑': 3, '巨剑': 2, '钝器': 4, '太刀': 4}
- return list.get(self.char.GetWeaponType(), 3)
-
- data0 = [0] + [0] * 11
- ratio = [0, 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30]# noqa: E501
- dataplus0 = 0
-
- basic = {
- '短剑': (1 + 1 + 1) * 100,
- '光剑': (1.433 + 1.707 + 2.235)* 100,
- # 巨剑第二下蓄力5.2
- '巨剑': (3.027 + 2.301 * 5.2) * 100,
- '太刀': (1.415 + 1.688 + 1.942 + 2.225) * 2,
- # 钝器第三下眩晕率极高,眩晕了就是3倍里鬼
- '钝器': (2.301 + 2.923 + 1.801 * 3 + 4.366) * 100,
- }
-
- def getSkillData(self, lv = 0):
- if lv == 0:
- return 0
- weapon = self.char.GetWeaponType()
- basic = self.basic.get(weapon, 3)
- ratio = self.ratio[self.lv] / 100 + 1
- data = basic * ratio + self.dataplus0
- return data
-
-# 流心 류심
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/c5a2956d8ed3af1746ed2f76ca971a09?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill12(ActiveSkill):
- name = "流心"
- learnLv = 20
- masterLv = 1
- maxLv = 1
- position = 6 #TODO
- rangeLv = 2
- cd = 1
- mp = [20, 20]
- uuid = "c5a2956d8ed3af1746ed2f76ca971a09"
-
- damage = False
-
-# 流心 : 刺 류심 충
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/2a0a39184de92acf1c1375e00b77404c?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill13(ActiveSkill):
- name = "流心 : 刺"
- learnLv = 20
- masterLv = 60
- maxLv = 70
- line = 25
- position = 4 #TODO
- rangeLv = 2
- cd = 8
- mp = [30, 280]
- uuid = "2a0a39184de92acf1c1375e00b77404c"
- thrusthit = 4
-
- data0 = [0, 4325, 4762, 5204, 5642, 6081, 6523, 6956, 7395, 7837, 8282, 8719, 9158, 9600, 10039, 10477, 10914, 11349, 11791, 12230, 12667, 13109, 13544, 13986, 14425, 14867, 15307, 15747, 16181, 16616, 17054, 17498, 17938, 18377, 18817, 19254, 19686, 20125, 20567, 21005, 21447, 21891, 22328, 22763, 23203, 23639, 24079, 24519, 24958, 25396, 25835, 26274, 26714, 27152, 27591, 28028, 28465, 28905, 29345, 29784, 30224, 30665, 31103, 31538, 31979, 32419, 32858, 33296, 33733, 34170, 34610]# noqa: E501
- hit0 = 2
-
- # 地面与空中伤害已一致
- def setMode(self,mode):
- weapon = self.char.GetWeaponType()
- if weapon[0] == "光剑" or weapon[0] == "太刀":
- self.hit0 = 4
- self.power0 *= 0.63
- elif weapon[0] == "巨剑" or weapon[0] == "短剑":
- self.hit0 = 3
- elif weapon[0] == "钝器":
- self.power0 *= 1.25
-
- def getWeaponCDRatio(self):
- return 1.0
-
- # 额外刺伤概率
- data3 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87]# noqa: E501
- # 额外刺伤层数
- data4 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]# noqa: E501
-
-
-# 无我剑气 검기상인
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/c47b66efd27845ef14954928ea2f95c8?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill14(PassiveSkill):
- name = "无我剑气"
- learnLv = 20
- masterLv = 5
- maxLv = 15
- position = 9 #TODO
- rangeLv = 3
- uuid = "c47b66efd27845ef14954928ea2f95c8"
-
- data0 = [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30]# noqa: E501
- associate = [{"type":"*skillRation","data":data0}]
-
-# 破极兵刃 오버드라이브
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/762c4e6d030eaf0abbfe1fec2b298574?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill15(ActiveSkill):
- name = "破极兵刃"
- learnLv = 25
- masterLv = 10
- maxLv = 20
- position = 2 #TODO
- rangeLv = 3
- cd = 5
- mp = [271, 2570]
- uuid = "762c4e6d030eaf0abbfe1fec2b298574"
-
- damage = False
-
-# 流心 : 跃 류심 쾌
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/9dc8438e4572d39243c97da31c113acc?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill16(ActiveSkill):
- name = "流心 : 跃"
- learnLv = 25
- masterLv = 60
- maxLv = 70
- position = 5 #TODO
- rangeLv = 2
- cd = 8
- mp = [30, 350]
- uuid = "9dc8438e4572d39243c97da31c113acc"
-
- data0 = [0, 12011, 13230, 14448, 15667, 16885, 18104, 19322, 20541, 21759, 22978, 24196, 25415, 26633, 27852, 29070, 30289, 31507, 32726, 33944, 35163, 36381, 37600, 38818, 40037, 41255, 42474, 43692, 44911, 46129, 47348, 48566, 49785, 51003, 52222, 53440, 54659, 55877, 57096, 58314, 59533, 60751, 61970, 63188, 64407, 65625, 66844, 68062, 69281, 70499, 71718, 72936, 74155, 75373, 76592, 77810, 79029, 80247, 81466, 82684, 83903, 85121, 86340, 87558, 88777, 89995, 91214, 92432, 93651, 94869, 96088]# noqa: E501
- hit0 = 1 #TODO
-
- mode = ["地面","空中"]
-
- def setMode(self,mode):
- weapon = self.char.GetWeaponType()
- if weapon[0] == '钝器' and mode == "空中":
- self.skillRation *= 1.2
- else:
- pass
-
- def getWeaponCDRatio(self):
- return 1.0
-
-
- data3 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 100, 100, 100, 100]# noqa: E501
-
- data4 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]# noqa: E501
-
-
-# 逆转反击 이면 뒤집기
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/c9664191611af31142e052dfaef84530?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill17(ActiveSkill):
- name = "逆转反击"
- learnLv = 30
- masterLv = 20
- maxLv = 30
- position = 2 #TODO
- rangeLv = 3
- cd = [0,15, 14.7, 14.4, 14.2, 13.9, 13.6, 13.3, 13.1, 12.8, 12.5, 12.2, 12, 11.7, 11.4, 11.1, 10.9, 10.6, 10.3, 10, 9.8, 9.5, 9.2, 8.9, 8.7, 8.4, 8.1, 7.8, 7.6, 7.3, 7]
- uuid = "c9664191611af31142e052dfaef84530"
-
- damage = False
-
-
-# 破军升龙击 차지 크래시
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/28b583c75a49103a1d8aabf799c000a4?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill18(ActiveSkill):
- name = "破军升龙击"
- learnLv = 30
- masterLv = 60
- maxLv = 70
- position = 4 #TODO
- rangeLv = 2
- cd = 10
- mp = [70, 700]
- uuid = "28b583c75a49103a1d8aabf799c000a4"
-
- # 肩撞
- data0 = [0, 3155, 3477, 3794, 4116, 4432, 4757, 5078, 5392, 5715, 6033, 6356, 6674, 6992, 7315, 7635, 7954, 8276, 8594, 8918, 9238, 9557, 9879, 10195, 10518, 10836, 11157, 11478, 11800, 12119, 12437, 12757, 13080, 13405, 13716, 14040, 14362, 14680, 15004, 15322, 15643, 15961, 16284, 16607, 16924, 17247, 17566, 17884, 18204, 18522, 18845, 19166, 19480, 19807, 20125, 20441, 20759, 21082, 21401, 21726, 22049, 22367, 22688, 23003, 23324, 23650, 23962, 24285, 24604, 24925, 25245]# noqa: E501
- hit0 = 2
-
- # 上斩
- data1 = [0, 4872, 5362, 5855, 6350, 6844, 7339, 7830, 8325, 8820, 9313, 9812, 10304, 10793, 11293, 11784, 12279, 12774, 13269, 13758, 14253, 14749, 15244, 15737, 16225, 16728, 17219, 17714, 18210, 18703, 19190, 19689, 20184, 20677, 21172, 21661, 22156, 22654, 23149, 23644, 24138, 24633, 25123, 25614, 26110, 26605, 27098, 27589, 28086, 28577, 29079, 29573, 30061, 30554, 31051, 31547, 32042, 32530, 33024, 33521, 34015, 34510, 35003, 35494, 35989, 36485, 36980, 37475, 37968, 38463, 38956]# noqa: E501
- hit1 = 1 #TODO
-
- # 巨剑 钝器追加部分
- data2 = data1
- hit2 = 0
-
- # 75被动追加部分
- data3 = data1
- hit3 = 1
- power3 = 0
-
- def setMode(self,mode):
- weapon = self.char.GetWeaponType()
- if weapon[0] == "光剑":
- self.hit0 += 2
- # 光剑肩撞伤害减少
- self.power0 -= 0.114
- elif weapon[0] == "太刀":
- self.hit1 += 1
- elif weapon[0] == "钝器" or weapon[0] == "巨剑":
- self.hit2 = 1
-
- data5 = [0, 0, 0, 0, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97]# noqa: E501
-
- data6 = [0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]# noqa: E501
-
-
-# 流心 : 升 류심 승
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/3fb8395ae3b81bd608e0c4223a8eb534?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill19(ActiveSkill):
- name = "流心 : 升"
- learnLv = 30
- masterLv = 60
- maxLv = 70
- position = 7 #TODO
- rangeLv = 2
- cd = 8
- mp = [50, 490]
- uuid = "3fb8395ae3b81bd608e0c4223a8eb534"
-
- def getWeaponCDRatio(self):
- return 1.0
-
- data0 = [0, 7137, 7861, 8592, 9313, 10039, 10764, 11485, 12211, 12934, 13656, 14387, 15113, 15832, 16556, 17279, 18010, 18731, 19455, 20184, 20907, 21627, 22358, 23078, 23803, 24528, 25254, 25979, 26702, 27421, 28150, 28876, 29597, 30325, 31049, 31773, 32496, 33218, 33949, 34672, 35392, 36117, 36842, 37572, 38296, 39017, 39741, 40467, 41188, 41912, 42643, 43367, 44090, 44812, 45540, 46262, 46981, 47719, 48440, 49161, 49885, 50611, 51333, 52059, 52782, 53509, 54233, 54954, 55680, 56404, 57130]# noqa: E501
- hit0 = 1 #TODO
-
- def setMode(self,mode):
- weapon = self.char.GetWeaponType()
- if weapon[0] == "光剑" or weapon[0] == "太刀":
- self.hit0 = 3
- self.skillRation *= 0.8
- elif weapon[0] == "钝器" or weapon[0] == "巨剑" or weapon[0] == "短剑":
- self.skillRation *= 1 + 1.1
-
- data2 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]# noqa: E501
-
- data3 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9, 2.9]# noqa: E501
-
-
-
-
-# 流心 : 狂 류심 강
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/5806440d21e7546d50007a5ba11f8024?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill20(ActiveSkill):
- name = "流心 : 狂"
- learnLv = 30
- masterLv = 10
- maxLv = 20
- position = 6 #TODO
- rangeLv = 3
- cd = 5
- mp = [20, 168]
- uuid = "5806440d21e7546d50007a5ba11f8024"
- damage = False
-
- data2 = [0, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60]# noqa: E501
- associate = [
- {"type":"*skillRation","data":data2,"skills":['流心 : 升','流心 : 刺','流心 : 跃']}
- ]
-
-
- def getWeaponCDRatio(self):
- return 1.0
-
-# 拔刀斩 발도
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/cfacda0647b9a0f595df2c2aad30c18d?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill21(ActiveSkill):
- name = "拔刀斩"
- learnLv = 35
- masterLv = 60
- maxLv = 70
- position = 5 #TODO
- rangeLv = 2
- cube = 1
- cd = 15
- mp = [110, 924]
-
- data0 = [0, 13787, 15192, 16592, 17988, 19385, 20783, 22188, 23585, 24983, 26382, 27779, 29181, 30579, 31977, 33375, 34775, 36171, 37574, 38973, 40370, 41771, 43172, 44568, 45971, 47370, 48770, 50168, 51564, 52962, 54363, 55758, 57161, 58563, 59960, 61358, 62757, 64157, 65556, 66953, 68351, 69752, 71154, 72552, 73952, 75351, 76748, 78149, 79545, 80946, 82343, 83742, 85142, 86541, 87944, 89340, 90740, 92138, 93540, 94934, 96335, 97737, 99134, 100533, 101931, 103331, 104735, 106130, 107526, 108929, 110324]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = data0
- hit1 = 1
- power1 = 0
- uuid = "cfacda0647b9a0f595df2c2aad30c18d"
- vps = [
- {
- "name": "拔刀奥义",
- "desc": "施放时间减少
范围增加
发动[神影手]",
- "explain": "[拔刀斩]
准备动作时间 -30%
攻击范围 45%
[神影手]
[拔刀斩]攻击成功时, 获得以下效果
- 发动[神影手]效果
- 一次[拔刀斩]最多发动1次"
- },
- {
- "name": "速战速决",
- "desc": "取消僵直
施放时间减少",
- "explain": "[拔刀斩]
可以强制中断转职技能的施放后僵直并施放 (觉醒技能除外)
根据穿戴的武器, 发动时触发以下效果
- 短剑、 钝器 : 攻击后僵直 -40%
- 太刀、 光剑 : 同时发动拔刀追加攻击
- 巨剑 : 立即以最大蓄气状态施放"
- }
- ]
- def setMode(self,mode=None):
- weapon = self.char.GetWeaponType()
- if weapon[0] == "光剑" or weapon[0] == "钝器":
- self.power1 += 0.3
- elif weapon[0] == "太刀":
- self.power1 += 0.25
- elif weapon[0] == "短剑":
- self.power1 += 0.4
-
- data3 = [0, 0, 0, 0, 0, 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, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
- data4 = [0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]# noqa: E501
- data6 = [0, 0, 0, 0, 0, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
- data7 = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7]# noqa: E501
-
-
-# 猛龙断空斩 맹룡단공참
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/669f1428193f61f9d92c743b72438c4d?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill22(ActiveSkill):
- name = "猛龙断空斩"
- learnLv = 40
- masterLv = 60
- maxLv = 70
- position = 3 #TODO
- rangeLv = 2
- cube = 1
- cd = 20
- mp = [25, 420]
- uuid = "669f1428193f61f9d92c743b72438c4d"
- vps = [
- {
- "name": "猛龙过江",
- "desc": "追踪
范围增加",
- "explain": "[猛龙断空斩]
突进上斩动作结束时生成旋风
[极·神剑术]
巴恩的飓风强化
- 移动时追击周围敌人
- 大小 + 70%
- 持续时间 + 1秒
- 多段攻击次数上限 + 7次
- 总攻击力相同"
- },
- {
- "name": "破竹之势",
- "desc": "取消僵直
所受伤害减少
施放时间减少",
- "explain": "[猛龙断空斩]
突进过程中可以通过[流心]强制中断技能
突进过程中被击时, 招架敌人的攻击, 所受伤害 -90%
攻击次数上限变更为1次
- 固定施放突进上斩动作
- 总攻击力相同"
- }
- ]
- data1 = [0, 4250, 4686, 5117, 5546, 5981, 6411, 6840, 7272, 7704, 8133, 8565, 8997, 9432, 9866, 10296, 10722, 11159, 11591, 12018, 12452, 12884, 13316, 13745, 14180, 14612, 15042, 15471, 15906, 16337, 16766, 17199, 17631, 18059, 18492, 18926, 19356, 19787, 20219, 20652, 21083, 21515, 21945, 22379, 22808, 23238, 23669, 24104, 24534, 24965, 25401, 25832, 26261, 26693, 27126, 27554, 27987, 28413, 28850, 29283, 29715, 30149, 30578, 31008, 31442, 31872, 32301, 32736, 33164, 33599, 34031]# noqa: E501
- hit1 = 2
-
- data2 = [0, 6246, 6884, 7517, 8151, 8781, 9419, 10052, 10689, 11318, 11954, 12588, 13218, 13860, 14490, 15122, 15759, 16391, 17024, 17658, 18294, 18929, 19559, 20193, 20832, 21464, 22100, 22734, 23366, 24000, 24635, 25269, 25904, 26535, 27168, 27806, 28440, 29073, 29703, 30342, 30972, 31607, 32241, 32876, 33509, 34143, 34779, 35414, 36042, 36680, 37313, 37947, 38582, 39213, 39849, 40484, 41114, 41750, 42384, 43020, 43650, 44285, 44922, 45557, 46185, 46826, 47456, 48087, 48726, 49361, 49995]# noqa: E501
- hit2 = 2
-
- data3 = data1
- # 护石佩戴后变成11 * 3
- hit3 = 8
- # 护石佩戴后 * 0.43
- power3 = 0
-
-
-# 破军斩龙击 차지 버스트
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/2c9d9a36c8401bddff6cdb80fab8dc24?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill23(ActiveSkill):
- name = "破军斩龙击"
- learnLv = 40
- masterLv = 60
- maxLv = 70
- position = 4 #TODO
- rangeLv = 2
- cube = 1
- cd = 25
- mp = [30, 450]
- uuid = "2c9d9a36c8401bddff6cdb80fab8dc24"
- vps = [
- {
- "name": "心机一转",
- "desc": "变更为单次攻击
攻击力和冷却时间增加
范围增加",
- "explain": "[破军斩龙击]
变更为集中意念后上斩的技能
- 删除肩撞攻击和刺击攻击
- 总攻击力 +60%
- 基本冷却时间变更为40秒
- 上斩范围 +35%
- 浮空力 + 30%
- 删除附加眩晕效果"
- },
- {
- "name": "无足行步",
- "desc": "聚集敌人
取消僵直",
- "explain": "[破军斩龙击]
可吸附处于霸体状态及无法抓取状态的敌人
可强制中断[破军升龙击]技能的施放后僵直并发动
[破军升龙击]
肩撞攻击会将敌人击退
可强制中断[破军斩龙击]技能的施放后僵直并发动
[三段刃]
可以强制中断技能并施放[破军升龙击]和[破军斩龙击]"
- }
- ]
- data0 = [0, 7179, 7908, 8639, 9369, 10094, 10821, 11553, 12279, 13005, 13745, 14466, 15197, 15929, 16655, 17381, 18114, 18842, 19571, 20295, 21027, 21758, 22482, 23216, 23943, 24672, 25400, 26132, 26856, 27585, 28316, 29043, 29769, 30503, 31232, 31961, 32684, 33417, 34145, 34872, 35604, 36332, 37059, 37788, 38517, 39242, 39977, 40704, 41436, 42159, 42888, 43622, 44348, 45071, 45807, 46532, 47267, 47996, 48723, 49452, 50178, 50909, 51638, 52367, 53094, 53823, 54551, 55281, 56009, 56739, 57467]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 8618, 9492, 10365, 11240, 12119, 12995, 13860, 14742, 15614, 16491, 17363, 18239, 19115, 19986, 20859, 21731, 22610, 23487, 24359, 25236, 26108, 26982, 27855, 28730, 29609, 30483, 31356, 32231, 33104, 33978, 34856, 35730, 36599, 37479, 38352, 39224, 40106, 40976, 41852, 42726, 43593, 44475, 45344, 46220, 47100, 47969, 48849, 49718, 50589, 51464, 52349, 53217, 54090, 54965, 55841, 56717, 57591, 58463, 59345, 60212, 61089, 61965, 62838, 63713, 64584, 65460, 66333, 67212, 68087, 68957]# noqa: E501
- hit1 = 1 #TODO
-
- data2 = [0, 12929, 14244, 15551, 16862, 18173, 19487, 20798, 22113, 23426, 24738, 26045, 27356, 28670, 29982, 31296, 32606, 33915, 35228, 36539, 37851, 39162, 40476, 41792, 43098, 44408, 45725, 47037, 48348, 49655, 50970, 52284, 53592, 54902, 56217, 57525, 58835, 60152, 61461, 62778, 64091, 65400, 66707, 68022, 69332, 70647, 71958, 73274, 74577, 75891, 77204, 78516, 79830, 81140, 82452, 83762, 85071, 86387, 87698, 89012, 90327, 91632, 92945, 94260, 95570, 96881, 98193, 99503, 100815, 102125, 103442]# noqa: E501
- hit2 = 1 #TODO
-
- data6 = [0, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
-
- data7 = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8]# noqa: E501
-
- def vp_1(self):
- self.cd = 40
- self.skillRation *= 1.6
-
-# 幻影剑舞 환영검무
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/8510294202d0e042dd29a2422fc6770d?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill24(ActiveSkill):
- name = "幻影剑舞"
- learnLv = 45
- masterLv = 60
- maxLv = 70
- position = 6 #TODO
- rangeLv = 2
- cube = 2
- cd = 45
- mp = [360, 3024]
- uuid = "8510294202d0e042dd29a2422fc6770d"
- vps = [
- {
- "name": "无形剑舞",
- "desc": "范围增加
所受伤害减少
每个武器赋予异常状态",
- "explain": "[幻影剑舞]
攻击范围 +55%
施放过程中所受伤害 -90%
[极·神剑术]
幻影斩击多段攻击次数 +13次
- 总攻击力相同
根据所佩戴的武器, 幻影斩击赋予以下异常状态
- 短剑 : 束缚
- 太刀 : 刺伤
- 钝器 : 眩晕
- 巨剑 : 减速
- 光剑 : 感电"
- },
- {
- "name": "残影剑舞",
- "desc": "变更为召唤无形剑的技能
施放时间减少
可以在其他动作中施放
适用最高连击效果",
- "explain": "[幻影剑舞]
召唤无形剑施放[幻影剑舞]
- 可以在其他动作中施放
- 斩击速度 +20%
- 固定以连击次数上限为基准进行攻击"
- }
- ]
- # 短剑 增加剑气攻击力 剑气多端次数
- # 太刀 额外刺伤
- # 太刀 光剑 增加斩击次数 减少斩击攻击力
- # 巨剑 增加斩击攻击力
- # 钝器 删除剑气 发射冲击波 冲击波是剑气的
-
- # 斩击攻击力
- data0 = [0, 1577, 1737, 1897, 2057, 2217, 2377, 2537, 2697, 2856, 3016, 3176, 3336, 3496, 3656, 3816, 3976, 4136, 4296, 4456, 4616, 4776, 4936, 5096, 5256, 5416, 5576, 5736, 5896, 6056, 6216, 6376, 6536, 6696, 6856, 7015, 7175, 7335, 7495, 7655, 7815, 7975, 8135, 8295, 8455, 8615, 8775, 8935, 9095, 9255, 9415, 9575, 9735, 9895, 10055, 10215, 10375, 10535, 10695, 10855, 11015, 11175, 11334, 11494, 11654, 11814, 11974, 12134, 12294, 12454, 12614]# noqa: E501
- hit0 = 12 #TODO
- # 剑气攻击力
- data1 = [0, 6330, 6972, 7614, 8256, 8898, 9541, 10183, 10825, 11467, 12109, 12751, 13394, 14036, 14678, 15320, 15962, 16604, 17247, 17889, 18531, 19173, 19815, 20457, 21099, 21742, 22384, 23026, 23668, 24310, 24952, 25595, 26237, 26879, 27521, 28163, 28805, 29448, 30090, 30732, 31374, 32016, 32658, 33301, 33943, 34585, 35227, 35869, 36511, 37153, 37796, 38438, 39080, 39722, 40364, 41006, 41649, 42291, 42933, 43575, 44217, 44859, 45502, 46144, 46786, 47428, 48070, 48712, 49354, 49997, 50639]# noqa: E501
- hit1 = 3
-
- # 钝器 冲击波攻击力
- data2 = [0, 26579, 29275, 31971, 34668, 37364, 40060, 42757, 45453, 48150, 50846, 53542, 56239, 58935, 61631, 64328, 67024, 69721, 72417, 75113, 77810, 80506, 83202, 85899, 88595, 91292, 93988, 96684, 99381, 102077, 104773, 107470, 110166, 112862, 115559, 118255, 120952, 123648, 126344, 129041, 131737, 134433, 137130, 139826, 142523, 145219, 147915, 150612, 153308, 156004, 158701, 161397, 164094, 166790, 169486, 172183, 174879, 177575, 180272, 182968, 185665, 188361, 191057, 193754, 196450, 199146, 201843, 204539, 207236, 209932, 212628]# noqa: E501
- hit2 = 0
-
- # 75被动影子斩击部分
- data3 = data0
- power3 = 0
- hit3 = 4
-
- # 75被动影子剑气部分
- data4 = data1
- power4 = 0
- hit4 = 3
-
- # 75被动钝器冲击波部分
- data5 = data2
- power5 = 0
- hit5 = 1
-
- def setMode(self, mode=None):
- weapon = self.char.GetWeaponType()
- if weapon[0] == "光剑" or weapon[0] == "太刀":
- # 减少斩击攻击力 增加斩击次数
- self.hit0 = 24
- self.power0 *= 1 - 0.25
- elif weapon[0] == "短剑":
- # 减少斩击攻击力
- self.power0 *= 1 - 0.1
- # 增加剑气攻击力和次数
- self.power1 *= 1.2
- self.hit1 = self.hit4 = 4
- elif weapon[0] == "巨剑":
- # 增加斩击攻击力
- self.power0 *= 1 + 0.5
- elif weapon[0] == "钝器":
- # 不会产生剑气 变成冲击波
- self.hit2 = self.hit5 = 1
- self.hit1 = self.hit4 = 0
- pass
-
- # 太刀刺伤效果 几率
- data15 = [0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 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, 30, 30, 31, 31, 32, 32, 33, 33, 34, 34, 35, 35]# noqa: E501
- # 太刀刺伤效果数
- data16 = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]# noqa: E501
-
-
-# 极 · 鬼剑术 (斩铁式) 극 귀검술 : 참철식
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/5152480fdde81362575a488d4cec4af9?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill25(PassiveSkill):
- name = "极 · 鬼剑术 (斩铁式)"
- learnLv = 48
- masterLv = 40
- maxLv = 50
- position = 4 #TODO
- rangeLv = 3
- uuid = "5152480fdde81362575a488d4cec4af9"
-
- data0 = [0, 4.5, 6.5, 8.5, 10.5, 12.5, 14.5, 16.5, 18.5, 20.5, 22.5, 24.5, 26.5, 28.5, 30.5, 32.5, 34.5, 36.5, 38.5, 40.5, 42.5, 44.5, 46.5, 48.5, 50.5, 52.5, 54.5, 56.5, 58.5, 60.5, 62.5, 64.5, 66.5, 68.5, 70.5, 72.5, 74.5, 76.5, 78.5, 80.5, 82.5, 84.5, 86.5, 88.5, 90.5, 92.5, 94.5, 96.5, 98.5, 100.5, 102.5]# noqa: E501
-
- associate = [{"type":"*skillRation","data":data0}]
-
-
-# 极 · 鬼剑术 (暴风式) 극 귀검술 : 폭풍식
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/4f2e001e9a19eb7bae50ad1840dfb329?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill26(ActiveSkill):
- name = "极 · 鬼剑术 (暴风式)"
- learnLv = 50
- masterLv = 40
- maxLv = 50
- position = 6 #TODO
- rangeLv = 5
- cube = 5
- cd = 145
- mp = [980, 8232]
- uuid = "4f2e001e9a19eb7bae50ad1840dfb329"
-
- data0 = [0, 6010, 7401, 8795, 10189, 11584, 12977, 14372, 15766, 17160, 18552, 19949, 21341, 22735, 24130, 25526, 26920, 28310, 29704, 31099, 32491, 33884, 35278, 36674, 38070, 39461, 40855, 42252, 43643, 45037, 46433, 47826, 49222, 50612, 52004, 53398, 54795, 56187, 57578, 58975, 60366, 61763, 63157, 64552, 65946, 67338, 68732, 70127, 71521, 72913, 74306]# noqa: E501
- data0 = [int(i * 1.1 )if index > 9 else i for index, i in enumerate(data0)]
- hit0 = 1 #TODO
-
- data1 = [0, 2860, 3526, 4186, 4853, 5512, 6182, 6842, 7505, 8172, 8834, 9497, 10163, 10825, 11491, 12156, 12817, 13479, 14145, 14809, 15472, 16135, 16802, 17461, 18128, 18788, 19456, 20115, 20781, 21445, 22111, 22774, 23436, 24101, 24764, 25425, 26093, 26754, 27419, 28081, 28746, 29409, 30074, 30739, 31401, 32065, 32727, 33392, 34056, 34720, 35382]# noqa: E501
- data0 = [int(i * 1.1 )if index > 9 else i for index, i in enumerate(data1)]
- hit1 = 24
-
- data2 = [0, 11159, 13750, 16340, 18929, 21512, 24104, 26694, 29281, 31867, 34457, 37048, 39636, 42222, 44811, 47403, 49989, 52579, 55167, 57756, 60344, 62930, 65522, 68111, 70698, 73284, 75874, 78466, 81052, 83642, 86228, 88819, 91406, 93997, 96585, 99174, 101761, 104347, 106939, 109523, 112115, 114702, 117290, 119878, 122469, 125055, 127646, 130234, 132823, 135414, 137998]# noqa: E501
- data0 = [int(i * 1.1 )if index > 9 else i for index, i in enumerate(data2)]
- hit2 = 1 #TODO
-
-
-# 极 · 神剑术 (流星落) 극 귀검술 : 유성락
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/0c262dac3ec41ff79e359ada9c7a7faf?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill27(ActiveSkill):
- name = "极 · 神剑术 (流星落)"
- learnLv = 60
- masterLv = 40
- maxLv = 50
- position = 3 #TODO
- rangeLv = 2
- cube = 1
- cd = 35
- mp = [420, 1200]
- uuid = "0c262dac3ec41ff79e359ada9c7a7faf"
- vps = [
- {
- "name": "流星审判",
- "desc": "无敌强化
强制控制功能强化
范围增加",
- "explain": "[极·神剑术 (流星落)]
无敌效果强化
- 跳跃动作变更为无敌状态
- 落地后无敌时间 + 1秒
跳跃冲击波攻击可以强制控制敌人1.5秒
流星剑功能强化
- 投掷流星剑前置准备时间 -50%
- 攻击范围 55%
[极·神剑术]
流星之天剑功能强化
- 强制控制持续时间 + 60%
- 攻击范围 55%"
- },
- {
- "name": "天道瞬斩",
- "desc": "变更为投掷剑的技能
追踪",
- "explain": "[极·神剑术 (流星落)]
施放时向空中投掷流星剑和流星之天剑
- 流星剑和流星之天剑会追踪最强的敌人
- 删除跳跃冲击波及地面冲撞攻击
- 总攻击力相同"
- }
- ]
- data0 = [0, 6540, 7209, 7869, 8537, 9197, 9866, 10524, 11190, 11855, 12516, 13182, 13848, 14508, 15174, 15840, 16500, 17165, 17834, 18492, 19157, 19821, 20487, 21149, 21815, 22473, 23141, 23805, 24468, 25128, 25794, 26462, 27122, 27789, 28452, 29109, 29778, 30441, 31110, 31770, 32436, 33095, 33764, 34430, 35088, 35756, 36417, 37077, 37743, 38414, 39074]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 1200, 1325, 1449, 1571, 1691, 1817, 1938, 2060, 2184, 2304, 2432, 2547, 2676, 2798, 2918, 3041, 3162, 3282, 3401, 3530, 3650, 3767, 3899, 4020, 4139, 4263, 4383, 4506, 4628, 4752, 4872, 4998, 5118, 5240, 5361, 5483, 5604, 5729, 5855, 5975, 6099, 6219, 6339, 6464, 6584, 6702, 6831, 6950, 7074, 7199]# noqa: E501
- hit1 = 38
-
- data2 = [0, 13086, 14417, 15741, 17067, 18401, 19725, 21053, 22385, 23709, 25034, 26370, 27690, 29016, 30351, 31679, 33003, 34335, 35661, 36986, 38321, 39641, 40968, 42299, 43626, 44952, 46286, 47610, 48932, 50262, 51593, 52916, 54251, 55577, 56900, 58232, 59561, 60882, 62219, 63543, 64874, 66198, 67524, 68853, 70181, 71513, 72837, 74168, 75494, 76821, 78149]# noqa: E501
- hit2 = 1 #TODO
-
- # 75被动追加天剑部分
- dataplus0 = 0
- hitplus0 = 3
- powerplus0 = 1
- # 75被动追加冲击波部分
- dataplus1 = 0
- hitplus1 = 3
- powerplus1 = 1
-
- data5 = [0, 29, 32, 35, 38, 41, 44, 47, 50, 53, 56, 59, 62, 65, 68, 71, 74, 77, 80, 83, 86, 89, 92, 95, 98, 101, 104, 107, 110, 113, 116, 119, 122, 125, 128, 131, 134, 137, 140, 143, 146, 149, 152, 155, 158, 161, 164, 167, 170, 173, 176]# noqa: E501
-
- data6 = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]# noqa: E501
-
-
-# 破空拔刀斩 극초발도
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/2ba299855fc22192cba4f73db75e9d0e?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill28(ActiveSkill):
- name = "破空拔刀斩"
- learnLv = 70
- masterLv = 40
- maxLv = 50
- position = 5 #TODO
- rangeLv = 2
- cube = 2
- cd = 50
- mp = [800, 1680]
- uuid = "2ba299855fc22192cba4f73db75e9d0e"
- vps = [
- {
- "name": "破空一刀",
- "desc": "剑气攻击力补正
施放时间减少",
- "explain": "[破空拔刀斩]
剑气攻击力变更为与斩击攻击力相同
增加斩击速度
- 准备动作时间 -40%
- 剑气生成后僵直 -20%"
- },
- {
- "name": "流动之刃",
- "desc": "范围增加
可多次发动",
- "explain": "[破空拔刀斩]
剑气移动距离 + 500%
变更为可填充2次的技能
- 每次填充冷却时间 : 25秒
- 单次攻击力 -50%"
- }
- ]
- data0 = [0, 72104, 79419, 86734, 94049, 101364, 108678, 115993, 123308, 130623, 137938, 145253, 152568, 159883, 167198, 174513, 181827, 189142, 196457, 203772, 211087, 218402, 225717, 233032, 240347, 247662, 254976, 262291, 269606, 276921, 284236, 291551, 298866, 306181, 313496, 320811, 328125, 335440, 342755, 350070, 357385, 364700, 372015, 379330, 386645, 393960, 401274, 408589, 415904, 423219, 430534]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 64894, 71477, 78060, 84644, 91227, 97811, 104394, 110977, 117561, 124144, 130728, 137311, 143895, 150478, 157061, 163645, 170228, 176812, 183395, 189978, 196562, 203145, 209729, 216312, 222895, 229479, 236062, 242646, 249229, 255812, 262396, 268979, 275563, 282146, 288729, 295313, 301896, 308480, 315063, 321647, 328230, 334813, 341397, 347980, 354564, 361147, 367730, 374314, 380897, 387481]# noqa: E501
- hit1 = 0
-
- mode = ["斩击","剑气"]
-
- def setMode(self,mode=None):
- if mode == "剑气":
- self.hit0 = 0
- self.hit1 = 1
-
- def vp_1(self):
- self.setMode("斩击")
-
- def vp_2(self):
- self.cd = 25
- self.skillRation *= 0.5
-
- data2 = [0, 31, 35, 39, 43, 47, 51, 55, 59, 63, 67, 71, 75, 79, 83, 87, 91, 95, 99, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
-
- data3 = [0, 3, 3, 3, 5, 5, 5, 7, 7, 7, 9, 9, 9, 11, 11, 11, 13, 13, 13, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]# noqa: E501
-
-# 神影手 신기의 손놀림
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/0fc47245af1f21c3e9217d03aa9fff0a?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill29(PassiveSkill):
- name = "神影手"
- learnLv = 70
- masterLv = 1
- maxLv = 1
- position = 9
- rangeLv = 1
- uuid = "0fc47245af1f21c3e9217d03aa9fff0a"
-
- data1 = [0, 4080]# noqa: E501
- hit1 = 1 #TODO
-
-
-
-# 极 · 神剑术 (破空斩) 극 귀검술 : 심검
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/b501ae53638d33a32351904f31cb6aa3?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill30(ActiveSkill):
- name = "极 · 神剑术 (破空斩)"
- learnLv = 75
- masterLv = 40
- maxLv = 50
- position = 3
- rangeLv = 2
- cube = 3
- cd = 35
- mp = [580, 4500]
- uuid = "b501ae53638d33a32351904f31cb6aa3"
- vps = [
- {
- "name": "一合残像",
- "desc": "范围增加
无敌强化",
- "explain": "[极 · 神剑术 (破空斩)]
斩击范围增加
斩击时, 生成2个使用[极·神剑术 (破空斩)]的残影
- X轴攻击范围 + 50%
施放时, 立即无敌"
- },
- {
- "name": "破灭神剑",
- "desc": "施放时间减少
攻击失败补正
斩击攻击并入爆炸
部分技能攻击中自动生效",
- "explain": "[极 · 神剑术 (破空斩)]
施放前僵直 -40%
没有斩击目标时, 冷却时间减少至4秒
对被斩击的敌人附加在一定时间后爆炸的剑痕
- 删除多段攻击
- 总攻击力相同
[神影手]
冲击波攻击强化
- 范围 + 35%
- 冲击波发动时, 同时适用[极·神剑术(破空斩)]攻击 ([极·神剑术(破空斩)]可施放时适用)"
- }
- ]
- data0 = [0, 7692, 8472, 9253, 10033, 10813, 11594, 12374, 13154, 13935, 14715, 15495, 16276, 17056, 17837, 18617, 19397, 20178, 20958, 21738, 22519, 23299, 24079, 24860, 25640, 26420, 27201, 27981, 28761, 29542, 30322, 31102, 31883, 32663, 33443, 34224, 35004, 35785, 36565, 37345, 38126, 38906, 39686, 40467, 41247, 42027, 42808, 43588, 44368, 45149, 45929]# noqa: E501
- hit0 = 5
-
- data1 = [0, 25640, 28241, 30842, 33443, 36045, 38646, 41247, 43848, 46449, 49050, 51652, 54253, 56854, 59455, 62056, 64657, 67259, 69860, 72461, 75062, 77663, 80264, 82866, 85467, 88068, 90669, 93270, 95871, 98472, 101074, 103675, 106276, 108877, 111478, 114079, 116681, 119282, 121883, 124484, 127085, 129686, 132288, 134889, 137490, 140091, 142692, 145293, 147894, 150496, 153097]# noqa: E501
- hit1 = 1
-
- def setMode(self,mode=None):
- weapon = self.char.GetWeaponType()
- if weapon[0] == "光剑" or weapon[0] == "太刀":
- # 减少斩击攻击力 增加斩击次数
- self.hit0 = 6
- elif weapon[0] == "巨剑":
- # 增加斩击攻击力
- self.power0 *= 1 + 0.08
- self.power1 *= 1 + 0.08
-
- data4 = [0, 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]# noqa: E501
-
- data5 = [0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]# noqa: E501
-
-
-
-# 极 · 神剑术 극한의 경지
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/3af805da8505fe6234a95b535610f064?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill31(PassiveSkill):
- name = "极 · 神剑术"
- learnLv = 75
- masterLv = 40
- maxLv = 50
- position = 4 #TODO
- rangeLv = 3
- uuid = "3af805da8505fe6234a95b535610f064"
-
- data0 = [0, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122]# noqa: E501
- # 后跳斩
- data1 = [0, 737, 854, 972, 1089, 1206, 1324, 1441, 1559, 1676, 1794, 1911, 2028, 2146, 2263, 2381, 2498, 2616, 2733, 2851, 2968, 3085, 3203, 3320, 3438, 3555, 3673, 3790, 3907, 4025, 4142, 4260, 4377, 4495, 4612, 4729, 4847, 4964, 5082, 5199, 5317, 5434, 5552, 5669, 5786, 5904, 6021, 6139, 6256, 6374, 6491]# noqa: E501
- # 破军升龙击 暴风式冲击波
- data2 = [0, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 148, 152, 156, 160, 164, 168, 172, 176, 180, 184, 188, 192, 196, 200, 204, 208, 212, 216, 220, 224, 228, 232, 236]# noqa: E501
- #猛龙断空斩 飓风
- data3 = [0, 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]# noqa: E501
- # 幻影剑舞 幻影斩击
- data4 = [0, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140, 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200, 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260, 265, 270, 275, 280, 285, 290, 295, 300]# noqa: E501
- # 幻影剑舞 幻影剑气
- data5 = [0, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140, 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200, 205, 210, 215, 220, 225, 230, 235, 240, 245, 250, 255, 260, 265, 270, 275, 280, 285, 290, 295, 300]# noqa: E501
- # 幻影剑舞 幻影钝器冲击波
- data6 = [0, 41, 46, 51, 56, 61, 66, 71, 76, 81, 86, 91, 96, 101, 106, 111, 116, 121, 126, 131, 136, 141, 146, 151, 156, 161, 166, 171, 176, 181, 186, 191, 196, 201, 206, 211, 216, 221, 226, 231, 236, 241, 246, 251, 256, 261, 266, 271, 276, 281, 286]# noqa: E501
- # 流星落 流星之天剑
- data7 = [0, 4698, 5447, 6196, 6945, 7694, 8443, 9192, 9941, 10690, 11439, 12188, 12937, 13685, 14434, 15183, 15932, 16681, 17430, 18179, 18928, 19677, 20426, 21175, 21924, 22673, 23422, 24171, 24920, 25669, 26418, 27167, 27916, 28665, 29414, 30163, 30911, 31660, 32409, 33158, 33907, 34656, 35405, 36154, 36903, 37652, 38401, 39150, 39899, 40648, 41397]# noqa: E501
- # 流星落 太刀刺伤
- data12 = [0, 64, 67, 70, 73, 76, 79, 82, 85, 88, 91, 94, 97, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]# noqa: E501
- # 流星落 可附加的刺伤数量
- data13 = [0, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12]# noqa: E501
- # 流星落 光剑 地面冲击波
- data15 = [0, 1885, 2185, 2486, 2786, 3087, 3387, 3688, 3988, 4289, 4589, 4890, 5190, 5491, 5791, 6092, 6392, 6693, 6993, 7294, 7594, 7894, 8195, 8495, 8796, 9096, 9397, 9697, 9998, 10298, 10599, 10899, 11200, 11500, 11801, 12101, 12402, 12702, 13003, 13303, 13604, 13904, 14205, 14505, 14806, 15106, 15406, 15707, 16007, 16308, 16608]# noqa: E501
- # 巨剑 攻击力增加
- data19 = [0, 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, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60]# noqa: E501
- # 钝器 地面冲击波
- data20 = [0, 1944, 2253, 2563, 2873, 3183, 3493, 3803, 4112, 4422, 4732, 5042, 5352, 5662, 5972, 6281, 6591, 6901, 7211, 7521, 7831, 8140, 8450, 8760, 9070, 9380, 9690, 9999, 10309, 10619, 10929, 11239, 11549, 11859, 12168, 12478, 12788, 13098, 13408, 13718, 14027, 14337, 14647, 14957, 15267, 15577, 15887, 16196, 16506, 16816, 17126]# noqa: E501
- # 破空斩 爆炸攻击力
- data23 = [0, 60, 66, 72, 78, 84, 90, 96, 102, 108, 114, 120, 126, 132, 138, 144, 150, 156, 162, 168, 174, 180, 186, 192, 198, 204, 210, 216, 222, 228, 234, 240, 246, 252, 258, 264, 270, 276, 282, 288, 294, 300, 306, 312, 318, 324, 330, 336, 342, 348, 354]# noqa: E501
- associate = [
- {"type":"*skillRation","data":data0,"skills":['拔刀斩', '破军斩龙击', '极 · 鬼剑术 (暴风式)', '破空拔刀斩','极 · 神剑术 (瞬斩)', '万剑归宗', '极 · 神剑术 (无形斩)', '万剑极诣·开天斩']},
- {"type":"+power3","data":data2,"skills":['破军升龙击']},
- {"type":"+power3","data":data3,"skills":['猛龙断空斩']},
- {"type":"+power3","data":data4,"skills":['幻影剑舞']},
- {"type":"+power4","data":data5,"skills":['幻影剑舞']},
- {"type":"+power5","data":data6,"skills":['幻影剑舞'],"weapon":['钝器']},
- {"type":"+dataplus0","data":data7,"skills":['极 · 神剑术 (流星落)'],"ratio":1},
- {"type":"+dataplus1","data":data15,"skills":['极 · 神剑术 (流星落)'],'weapon':["光剑"],"ratio":1},
- {"type":"*powerplus0","data":data19,"skills":['极 · 神剑术 (流星落)'],'weapon':["巨剑"]},
- {"type":"+dataplus1","data":data20,"skills":['极 · 神剑术 (流星落)'],'weapon':["钝器"],"ratio":1},
- {"type":"*power1","data":data23,"skills":["极 · 神剑术 (破空斩)"]}
- ]
-
-
-
-# 极 · 神剑术 (瞬斩) 극 발검술 : 섬단
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/d8ff976e2aaa4720272a5175d1eb9126?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill32(ActiveSkill):
- name = "极 · 神剑术 (瞬斩)"
- learnLv = 80
- masterLv = 40
- maxLv = 50
- position = 5 #TODO
- rangeLv = 2
- cube = 5
- cd = 50
- mp = [800, 6000]
- uuid = "d8ff976e2aaa4720272a5175d1eb9126"
- vps = [
- {
- "name": "最后一斩",
- "desc": "施放时间减少
取消僵直",
- "explain": "[极 · 神剑术 (瞬斩)]
拔剑斩击准备时间 -40%
拔剑斩击命中时, 可强制中断施放后僵直并使用转职技能
中断施放后僵直时, 角色会转换方向并使用技能"
- },
- {
- "name": "一刃闪",
- "desc": "可以在空中施放
范围增加
攻击时间减少
变更为单次攻击",
- "explain": "[极 · 神剑术 (瞬斩)]
可以在175px以下的空中施放
拔剑斩击范围增加
- 前进距离 +60%
- Y轴攻击范围 +60%
删除拔剑斩击攻击及剑气多段攻击
- 总攻击力相同"
- }
- ]
- data0 = [0, 20101, 22139, 24178, 26217, 28256, 30295, 32338, 34374, 36416, 38454, 40492, 42531, 44571, 46610, 48648, 50687, 52726, 54765, 56806, 58846, 60883, 62923, 64962, 67002, 69041, 71083, 73117, 75162, 77195, 79238, 81277, 83316, 85355, 87395, 89432, 91471, 93514, 95549, 97592, 99630, 101671, 103705, 105748, 107786, 109823, 111864, 113903, 115940, 117980, 120023]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 3289, 3623, 3951, 4288, 4622, 4957, 5289, 5624, 5957, 6289, 6625, 6959, 7293, 7625, 7961, 8294, 8626, 8961, 9295, 9628, 9962, 10297, 10628, 10964, 11299, 11629, 11964, 12299, 12633, 12966, 13300, 13631, 13965, 14298, 14633, 14968, 15300, 15637, 15968, 16302, 16636, 16968, 17305, 17639, 17969, 18305, 18640, 18968, 19304, 19641]# noqa: E501
- hit1 = 5
-
- data3 = [0, 54818, 60381, 65941, 71503, 77065, 82628, 88188, 93750, 99310, 104872, 110435, 115995, 121555, 127117, 132680, 138241, 143802, 149362, 154925, 160491, 166050, 171612, 177173, 182734, 188297, 193853, 199418, 204979, 210542, 216103, 221666, 227227, 232788, 238350, 243912, 249471, 255033, 260592, 266156, 271719, 277280, 282839, 288404, 293961, 299524, 305087, 310648, 316207, 321772, 327331]# noqa: E501
- hit3 = 1 #TODO
-
-
-
-# 万剑归宗 이기어검술
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/0f638da961acf7958ac6070b7aaed013?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill33(ActiveSkill):
- name = "万剑归宗"
- learnLv = 85
- masterLv = 40
- maxLv = 50
- position = 4 #TODO
- rangeLv = 5
- cube = 10
- cd = 180
- mp = [2500, 5000]
- uuid = "0f638da961acf7958ac6070b7aaed013"
-
- data1 = [0, 1568, 1931, 2296, 2661, 3022, 3382, 3752, 4111, 4476, 4842, 5202, 5565, 5929, 6293, 6657, 7020, 7383, 7746, 8110, 8474, 8837, 9201, 9566, 9928, 10294, 10655, 11016, 11381, 11744, 12110, 12474, 12836, 13202, 13565, 13926, 14291, 14657, 15018, 15379, 15743, 16111, 16471, 16833, 17201, 17561, 17925, 18292, 18653, 19016, 19380]# noqa: E501
- hit1 = 1 #TODO
-
- data2 = [0, 7264, 8956, 10643, 12324, 14013, 15701, 17381, 19073, 20753, 22435, 24131, 25812, 27494, 29176, 30870, 32555, 34235, 35920, 37616, 39296, 40977, 42665, 44348, 46038, 47726, 49410, 51091, 52786, 54469, 56148, 57831, 59528, 61207, 62891, 64578, 66261, 67953, 69634, 71327, 73006, 74693, 76382, 78066, 79745, 81430, 83122, 84806, 86487, 88172, 89868]# noqa: E501
- hit2 = 14
-
- data3 = [0, 29033, 35769, 42507, 49243, 55964, 62701, 69436, 76177, 82902, 89642, 96376, 103113, 109837, 116571, 123309, 130044, 136776, 143511, 150246, 156971, 163706, 170443, 177179, 183914, 190642, 197378, 204110, 210838, 217578, 224311, 231045, 237780, 244512, 251245, 257980, 264709, 271444, 278183, 284917, 291651, 298377, 305114, 311849, 318580, 325315, 332048, 338785, 345511, 352248, 358982]# noqa: E501
- hit3 = 2
-
- mode = ["终结",'穿云剑']
-
- def setMode(self,mode=None):
- if mode == '终结':
- self.hit1 = 0
- if mode == '穿云剑':
- self.hit2 = self.hit3 = 0
-
-
-# 无形剑意 무형지경
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/7ec521d063d2190e1fcc5bd229af9bcf?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill34(PassiveSkill):
- name = "无形剑意"
- learnLv = 95
- masterLv = 40
- maxLv = 50
- position = 5 #TODO
- rangeLv = 3
- uuid = "7ec521d063d2190e1fcc5bd229af9bcf"
-
- data0 = [0, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118]# noqa: E501
-
- # 对流系技能存在技能形态变动,但是实际加成和其他技能一致,这里简单化处理
- associate = [{"type":"*skillRation","data":data0}]
-
-# 极 · 神剑术 (无形斩) 극 발검술 : 무형참
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/0113c8b1306ca76d208f83f2d093dd62?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill35(ActiveSkill):
- name = "极 · 神剑术 (无形斩)"
- learnLv = 95
- masterLv = 40
- maxLv = 50
- position = 7 #TODO
- rangeLv = 2
- cube = 7
- cd = 60
- mp = [960, 7200]
- uuid = "0113c8b1306ca76d208f83f2d093dd62"
-
- data0 = [0, 30185, 33250, 36312, 39374, 42438, 45500, 48561, 51625, 54687, 57750, 60812, 63875, 66936, 70000, 73063, 76124, 79187, 82251, 85311, 88374, 91437, 94500, 97561, 100626, 103688, 106749, 109812, 112876, 115937, 119001, 122062, 125124, 128188, 131251, 134311, 137375, 140438, 143500, 146563, 149626, 152687, 155750, 158813, 161876, 164937, 168001, 171062, 174126, 177188, 180250]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 4312, 4749, 5186, 5623, 6061, 6500, 6937, 7374, 7811, 8250, 8687, 9126, 9561, 10000, 10437, 10874, 11310, 11748, 12186, 12624, 13061, 13499, 13937, 14374, 14812, 15249, 15688, 16124, 16562, 16999, 17437, 17875, 18313, 18749, 19187, 19625, 20064, 20498, 20936, 21374, 21813, 22250, 22687, 23125, 23562, 23999, 24437, 24875, 25312, 25749]# noqa: E501
- hit1 = 13
-
- data3 = [0, 57500, 63332, 69166, 74999, 80833, 86665, 92498, 98332, 104165, 109999, 115833, 121667, 127499, 133334, 139168, 145000, 150833, 156666, 162500, 168332, 174166, 180000, 185834, 191665, 197499, 203333, 209165, 214999, 220832, 226668, 232503, 238334, 244168, 250001, 255834, 261667, 267502, 273336, 279168, 285001, 290835, 296668, 302501, 308335, 314169, 320001, 325835, 331668, 337501, 343334]# noqa: E501
- hit3 = 1 #TODO
-
-
-# 万剑极诣·开天斩 천제극섬
-# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/8b08f9504167a9c0f3a1d29d71b7943e?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
-class Skill36(ActiveSkill):
- name = "万剑极诣·开天斩"
- learnLv = 100
- masterLv = 40
- maxLv = 50
- position = 5 #TODO
- rangeLv = 5
- cube = 15
- cd = 290
- mp = [4028, 8056]
- uuid = "8b08f9504167a9c0f3a1d29d71b7943e"
-
- data0 = [0, 68275, 84108, 99940, 115772, 131603, 147435, 163267, 179099, 194930, 210763, 226594, 242427, 258257, 274089, 289923, 305755, 321587, 337420, 353251, 369081, 384914, 400746, 416579, 432409, 448243, 464075, 479905, 495737, 511570, 527401, 543233, 559066, 574899, 590726, 606560, 622390, 638223, 654056, 669888, 685719, 701552, 717384, 733215, 749049, 764879, 780711, 796542, 812376, 828208, 844038]# noqa: E501
- hit0 = 1 #TODO
-
- data1 = [0, 89283, 109985, 130689, 151394, 172097, 192799, 213502, 234207, 254909, 275612, 296315, 317019, 337723, 358427, 379129, 399832, 420538, 441242, 461945, 482645, 503350, 524055, 544757, 565461, 586164, 606865, 627569, 648274, 668975, 689680, 710382, 731087, 751789, 772490, 793197, 813899, 834602, 855308, 876009, 896709, 917416, 938120, 958821, 979526, 1000230, 1020932, 1041636, 1062340, 1083042, 1103746]# noqa: E501
- hit1 = 1 #TODO
-
- data2 = [0, 12253, 15095, 17937, 20777, 23621, 26461, 29304, 32145, 34989, 37830, 40669, 43512, 46354, 49196, 52037, 54879, 57720, 60562, 63404, 66243, 69085, 71929, 74772, 77610, 80454, 83295, 86136, 88976, 91821, 94659, 97501, 100342, 103183, 106026, 108869, 111712, 114553, 117395, 120235, 123075, 125918, 128760, 131602, 134444, 137285, 140127, 142969, 145809, 148651, 151493]# noqa: E501
- hit2 = 6
-
- data4 = [0, 16805, 20704, 24598, 28497, 32394, 36291, 40189, 44085, 47983, 51880, 55775, 59674, 63570, 67466, 71365, 75262, 79160, 83057, 86954, 90850, 94746, 98644, 102540, 106439, 110336, 114234, 118131, 122030, 125923, 129822, 133719, 137613, 141514, 145409, 149303, 153204, 157100, 160996, 164896, 168792, 172689, 176586, 180484, 184379, 188278, 192174, 196071, 199968, 203866, 207763]# noqa: E501
- hit4 = 5
-
- data6 = [0, 210078, 258790, 307505, 356218, 404933, 453646, 502360, 551075, 599788, 648503, 697216, 745931, 794644, 843358, 892070, 940786, 989499, 1038213, 1086924, 1135639, 1184353, 1233067, 1281781, 1330496, 1379208, 1427923, 1476636, 1525351, 1574064, 1622778, 1671490, 1720205, 1768920, 1817632, 1866348, 1915061, 1963772, 2012490, 2061203, 2109915, 2158630, 2207344, 2256058, 2304772, 2353484, 2402197, 2450911, 2499625, 2548339, 2597053]# noqa: E501
- hit6 = 1 #TODO
-
-class classChange(Character):
- def __init__(self, equVersion):
-
- self.name = 'weapon_master'
- self.nameCN = '极诣·剑魂'
- self.role = 'swordman_male'
-
- self.武器选项 = ['光剑','太刀', '钝器', '巨剑', '短剑']
- self.输出类型选项 = ['物理百分比']
- self.输出类型 = '物理百分比'
- self.防具精通属性 = ['力量']
- self.防具类型 = '轻甲'
- self.buff = 1.86
-
- self.角色 = '鬼剑士(男)'
-
- self.职业 = '剑魂'
-
- super().__init__(equVersion, __name__)
-
- def AddSkillLv(self, min: int, max: int, lv: int, type=-1, exceptSkills:list[str]=[]) -> None:
- """
- 增加技能等级
- type: -1 全部, 0 被动, 1 主动
- """
- for skill in self.skills:
- # 四个武器精通不享受技能范围等级加成
- if min <= skill.learnLv <= max and skill.name not in ['太刀精通', '巨剑精通', '短剑精通', '钝器精通', '光剑精通'] + exceptSkills:
- skillType = 'all' if type == -1 else ('active' if type == 1 else 'passive')
- if (skillType == 'all' or skill.type == skillType) and skill.lv > 0:
- skill.lv += lv
+#41f1cdc2ff58bb5fdc287be0db2a8df3
+from core.basic.skill import PassiveSkill, ActiveSkill, get_data,characterLv
+from core.basic.character import Character
+prefix = "swordman_male/weapon_master/cn/skillDetail"
+
+
+class ActiveSkill(ActiveSkill):
+ totalhit = 0
+ """总hit"""
+ thrustcount = 0
+ """刺伤层数"""
+ swordnum = 0
+ """穿云刺落剑数"""
+
+ def skillInfo(self, mode = None):
+ return super().skillInfo(mode) + (self.swordnum,self.totalhit,self.thrustcount,)
+
+# 疾影手
+# swordman_male/weapon_master/dcd536f1674630f01fc9667bb202b851
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/dcd536f1674630f01fc9667bb202b851
+class Skill0(PassiveSkill):
+ """
+ 减少切换武器的冷却时间, 并且在切换其它系列武器时, 可以增加攻击速度和移动速度, 效果持续一定时间。
+ """
+ name = "疾影手"
+ learnLv = 1
+ masterLv = 1
+ maxLv = 1
+ position = 0 #TODO
+ rangeLv = 1
+ uuid = "dcd536f1674630f01fc9667bb202b851"
+ hasVP = False
+ hasUP = False
+
+ # 武器切换冷却时间减少量 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 攻击速度和移动速度增加量 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 增益效果持续时间 : {value2}秒
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+
+
+# 基础精通
+# swordman_male/weapon_master/5a56514f35cf0270ae8d6c65f8fefd78
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/5a56514f35cf0270ae8d6c65f8fefd78
+class Skill1(PassiveSkill):
+ """
+ 增加基本攻击、 前冲攻击、 跳跃攻击、 [上挑]、 [连突刺]的攻击力。\n
+ 在决斗场中, 增益/减益技能、 被动技能的技能攻击力增加效果对[基础精通]无影响。
+ """
+ name = "基础精通"
+ icon = "$common/$name"
+ learnLv = 1
+ masterLv = characterLv
+ maxLv = 200
+ position = 1
+ rangeLv = 1
+ damage = False
+ type = "passive"
+ uuid = "5a56514f35cf0270ae8d6c65f8fefd78"
+ icon = "$common/$uuid"
+ # 基本攻击力变化率 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ associate = [{"type":"*skillRation","data":[i-100 if i>0 else 0 for i in data0],"skills":["里 · 鬼剑术","空之连刃"]}]
+
+# 空之连刃
+# swordman_male/weapon_master/78bd107acd474518b606be1e4fd38239
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/78bd107acd474518b606be1e4fd38239
+class Skill2(ActiveSkill):
+ """
+ 在空中向敌人发出强威力的连续斩击。\n
+ 但需从第二斩击开始, 才能适用空之连刃技能的攻击力。\n
+ 转职为狂战士后, 施放[狂暴之力]时变更为独立攻击力。\n
+ 会根据[基础精通]增加伤害。
+ """
+ name = "空之连刃"
+ learnLv = 5
+ masterLv = 1
+ maxLv = 1
+ position = 10 #todo
+ rangeLv = 1
+ mp = [5, 7]
+ uuid = "78bd107acd474518b606be1e4fd38239"
+
+ hasVP = False
+ hasUP = False
+
+ # 攻击力 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 2
+ power0 = 0.5
+
+ # 太刀
+ data1 = [i - 100 if i > 100 else i for i in data0]
+ hit1 = 2
+ power1 = 1
+
+ def skillInfo(self, mode = None):
+ if self.char.GetWeaponType() == "太刀":
+ self.hit0 = 0
+ else:
+ self.hit1 = 0
+ return super().skillInfo(mode)
+
+# 光剑精通
+# swordman_male/weapon_master/717f1e2104fe4b796f800352fa143ecc
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/717f1e2104fe4b796f800352fa143ecc
+class Skill3(PassiveSkill):
+ """
+ 装备光剑系武器时, 增加攻击力和命中率。\n
+ [转职为剑魂后]\n
+ - 3级 : 使用[连突刺]则可以出现光剑气; 使用[里 · 鬼剑术]和光剑气攻击时, 追加感电状态\n
+ - 5级 : [三段刃]增加攻击次数, 最后一击还可以浮空敌人\n
+ - 7级 : 使用[拔刀斩]时, 可以追加攻击, 并有一定几率使敌人进入感电状态; 使用[幻影剑舞]可以增加斩击次数和速度, 减少斩击攻击力\n
+ - 9级 : 使用[猛龙断空斩]时, 有一定几率使敌人进入感电状态\n
+ [装备传世武器后]\n
+ 适用独立的攻击力/命中率增加数值。
+ """
+ name = "光剑精通"
+ learnLv = 15
+ masterLv = 1
+ maxLv = 40
+ position = 2
+ rangeLv = 3
+ uuid = "717f1e2104fe4b796f800352fa143ecc"
+
+ # 物理攻击力增加率 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 魔法攻击力增加率 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 命中率增加 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # [剑魂特殊附加效果]
+ # [里 · 鬼剑术]感电几率 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # [连突刺]光剑气感电几率 : {value4}%
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # [里 · 鬼剑术]感电持续时间 : {value5}秒
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # [连突刺]光剑气感电持续时间 : {value6}秒
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 感电攻击力 : {value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # [连突刺]光剑气攻击力 : {value8}%
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # [三段刃]最后一击浮空力 : {value9}
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # [猛龙断空斩]感电几率 : {value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # [猛龙断空斩]感电持续时间 : {value11}秒
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+ # [猛龙断空斩]感电攻击力 : {value12}%
+ data12 = get_data(f"{prefix}/{uuid}", 12, lambda x = None: x)
+ # [拔刀斩]追击时感电几率 : {value13}%
+ data13 = get_data(f"{prefix}/{uuid}", 13, lambda x = None: x)
+ # [拔刀斩]追击时感电持续时间 : {value14}秒
+ data14 = get_data(f"{prefix}/{uuid}", 14, lambda x = None: x)
+ # [拔刀斩]追击时感电攻击力 : {value15}%
+ data15 = get_data(f"{prefix}/{uuid}", 15, lambda x = None: x)
+ # [装备传世武器后]
+ # 物理攻击力增加率 : {value16}%
+ data16 = get_data(f"{prefix}/{uuid}", 16, lambda x = None: x)
+ # 魔法攻击力增加率 : {value17}%
+ data17 = get_data(f"{prefix}/{uuid}", 17, lambda x = None: x)
+ # 命中率增加 : {value18}%
+ data18 = get_data(f"{prefix}/{uuid}", 18, lambda x = None: x)
+
+ def effect(self, old, new):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] != "光剑":
+ return
+ data = self.data0
+ if weapon[1] == "传世武器":
+ data = self.data16
+ self.associate = [{"type":"$*PAtkP","data":data}]
+ return super().effect(old, new)
+
+# 三段刃 단공참
+# https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/f2fb27162beb0b87a7cb9af7900e95f2?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0
+class Skill4(ActiveSkill):
+ name = "三段刃"
+ learnLv = 15
+ masterLv = 60
+ maxLv = 70
+ position = 3 #TODO
+ rangeLv = 2
+ cd = 6
+ mp = [12, 120]
+ damage = False
+ uuid = "f2fb27162beb0b87a7cb9af7900e95f2"
+
+ # [5次连续攻击的攻击力]
+ # 第1击~第4击 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 第5击 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # [7次连续攻击的攻击力]
+ # 第1击~第5击 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # 第6击 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 第7击 : {value4}%
+ # data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ data4 = [0, 1753, 1931, 2108, 2286, 2464, 2642, 2820, 2998, 3175, 3353, 3531, 3709, 3887, 4065, 4242, 4420, 4598, 4776, 4954, 5131, 5309, 5487, 5665, 5843, 6021, 6198, 6376, 6554, 6732, 6910, 7088, 7265, 7443, 7621, 7799, 7977, 8154, 8332, 8510, 8688, 8866, 9044, 9221, 9399, 9577, 9755, 9933, 10111, 10288, 10466, 10644, 10822, 11000, 11177, 11355, 11533, 11711, 11889, 12067, 12244, 12422, 12600, 12778, 12956, 13134, 13311, 13489, 13667, 13845, 14023]# noqa: E501
+
+
+# 短剑精通
+# swordman_male/weapon_master/01c3a2fb793d293a25ed8dc7a0d70c1a
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/01c3a2fb793d293a25ed8dc7a0d70c1a
+class Skill5(PassiveSkill):
+ """
+ 装备短剑系武器时, 增加攻击力和命中率。\n
+ [转职为剑魂后]\n
+ - 3级 : 使用[上挑]后可以追加一次攻击; 且使用[上挑]时会出现剑气\n
+ - 5级 : [格挡]成功时, 对敌人生成冲击波, 并有一定几率使其进入眩晕状态\n
+ - 6级 : 增加[破军升龙击]的攻击力\n
+ - 7级 : 施放[拔刀斩]时会出现剑气; 施放[幻影剑舞]时增加剑气的攻击次数\n
+ - 9级 : 增加[猛龙断空斩]的攻击力\n
+ [装备传世武器后]\n
+ 适用独立的攻击力/命中率增加数值。
+ """
+ name = "短剑精通"
+ learnLv = 15
+ masterLv = 1
+ maxLv = 40
+ line = 10
+ position = 0 #TODO
+ rangeLv = 3
+ uuid = "01c3a2fb793d293a25ed8dc7a0d70c1a"
+ hasUP = False
+
+ # 物理攻击力增加率 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 魔法攻击力增加率 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 命中率增加 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # [剑魂特殊附加效果]
+ # [里 · 鬼剑术]剑气攻击力 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # [格挡]冲击波攻击力 : {value4}%
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # [格挡]冲击波眩晕几率 : {value5}%
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # [格挡]冲击波眩晕持续时间 : {value6}秒
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # [上挑]第1击攻击力增加率 : {value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # [上挑]第2击攻击力增加率 : {value8}%
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # [上挑]浮空力 : {value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # [三段刃]攻击力增加率 : {value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # [破军升龙击]攻击力增加率 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+ # [猛龙断空斩]攻击力增加率 : {value12}%
+ data12 = get_data(f"{prefix}/{uuid}", 12, lambda x = None: x)
+ # [装备传世武器后]
+ # 物理攻击力增加率 : {value13}%
+ data13 = get_data(f"{prefix}/{uuid}", 13, lambda x = None: x)
+ # 魔法攻击力增加率 : {value14}%
+ data14 = get_data(f"{prefix}/{uuid}", 14, lambda x = None: x)
+ # 命中率增加 : {value15}%
+ data15 = get_data(f"{prefix}/{uuid}", 15, lambda x = None: x)
+
+
+ def effect(self, old, new):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] != "短剑":
+ return
+ data = self.data0
+ if weapon[1] == "传世武器":
+ data = self.data13
+ self.associate = [
+ {"type":"$*PAtkP","data":data},
+ {"type":"+dataplus0","data":self.data3,"skills":["里 · 鬼剑术"],"ratio":1},
+ {"type":"*skillRation","data":self.data11,"skills":["破军升龙击"]},
+ {"type":"*skillRation","data":self.data12,"skills":["猛龙断空斩"]},
+ ]
+ return super().effect(old, new)
+
+
+# 太刀精通
+# swordman_male/weapon_master/8f73f243041c2d27739fe7696f02bf9b
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/8f73f243041c2d27739fe7696f02bf9b
+class Skill6(ActiveSkill):
+ """
+ 装备太刀系武器时, 增加攻击力和命中率。\n
+ [转职为剑魂后]\n
+ - 5级 : [三段刃]增加攻击次数, 最后一击还可以浮空敌人\n
+ - 7级 :使用[拔刀斩]可以发动追加攻击; 使用[幻影剑舞]可以增加斩击次数和速度, 减少斩击攻击力\n
+ - 10级 : 攻击时会附加刺伤效果, 使用[空之连刃]时, 对刺伤状态的敌人增加攻击力\n
+ 刺伤效果最多可以叠加17次, 达到叠加上限时, 会消耗所有刺伤效果并引爆敌人造成伤害; 刺伤效果叠加3次开始, 接下来的3秒内可以持续叠加, 若没达到叠加上限, 3秒后也会引发爆炸。\n
+ [装备传世武器后]\n
+ 适用独立的攻击力/命中率增加数值。
+ """
+ name = "太刀精通"
+ learnLv = 15
+ masterLv = 1
+ maxLv = 40
+ line = 10
+ position = 1 #TODO
+ rangeLv = 3
+ type = "passive"
+ uuid = "8f73f243041c2d27739fe7696f02bf9b"
+ hasUP = False
+
+ # 物理攻击力增加率 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 魔法攻击力增加率 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 命中率增加 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # [剑魂特殊附加效果]
+ # 刺伤几率 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 刺伤持续时间 : {value4}秒
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 刺伤爆炸攻击力 : {value5}% ~ {value6}%
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 刺伤持续攻击力 : {value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # [空之连刃]附加攻击力 : {value8}%
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # [空之连刃]对刺伤状态的敌人的攻击力增加率 : {value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # [装备传世武器后]
+ # 物理攻击力增加率 : {value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # 魔法攻击力增加率 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+ # 命中率增加 : {value12}%
+ data12 = get_data(f"{prefix}/{uuid}", 12, lambda x = None: x)
+
+ def effect(self, old, new):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] != "太刀":
+ return
+ data = self.data0
+ if weapon[1] == "传世武器":
+ data = self.data10
+ self.associate = [
+ {"type":"$*PAtkP","data":data},
+ {"type":"*power1","data":[i-100 if i>100 else 0 for i in self.data9],"skills":["空中连斩"]},
+ ]
+ return super().effect(old, new)
+
+ def getSkillData(self, lv = 0):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] != "太刀":
+ return 0
+ # 刺伤期望伤害 (17层引爆上限) / 17 (17层结算1次爆炸) * 刺伤触发几率
+ return self.data6[lv] * 1 / 17 * self.data4[lv] / 100
+
+ def getSkillCD(self,mode=None):
+ return 1.0
+
+# 巨剑精通
+# swordman_male/weapon_master/8c2379737c5acc935c1731f67f607655
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/8c2379737c5acc935c1731f67f607655
+class Skill7(PassiveSkill):
+ """
+ 装备巨剑系武器时, 增加攻击力和命中率。\n
+ [转职为剑魂后]\n
+ - 3级 : 使用[银光落刃]时可以使自身进入霸体状态, 并对敌人进行多段攻击; 使用[里 · 鬼剑术]时, 第1次斩击会出现飓风, 按住技能键可以蓄气进行第2次斩击; 使用[拔刀斩]时, 按住技能键可以进行蓄气攻击\n
+ - 5级 : [格挡]成功时, 对敌人生成冲击波, 并有一定几率使其进入眩晕状态\n
+ - 7级 : 使用[破军升龙击]后还可以追加捶击攻击\n
+ [装备传世武器后]\n
+ 适用独立的攻击力/命中率增加数值。
+ """
+ name = "巨剑精通"
+ learnLv = 15
+ masterLv = 1
+ maxLv = 40
+ line = 10
+ position = 0 #TODO
+ rangeLv = 3
+ uuid = "8c2379737c5acc935c1731f67f607655"
+
+ # 物理攻击力增加率 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 魔法攻击力增加率 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 命中率增加 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # [剑魂特殊附加效果]
+ # [格挡]冲击波攻击力 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # [格挡]冲击波眩晕几率 : {value4}%
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # [格挡]冲击波眩晕持续时间 : {value5}秒
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # [银光落刃]多段攻击力 : {value6}%
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # [里 · 鬼剑术]达蓄气上限时攻击力增加率 : {value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # [拔刀斩]达蓄气上限时攻击力增加率 : {value8}%
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # [装备传世武器后]
+ # 物理攻击力增加率 : {value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # 魔法攻击力增加率 : {value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # 命中率增加 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+
+ def effect(self, old, new):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] != "巨剑":
+ return
+ data = self.data0
+ if weapon[1] == "传世武器":
+ data = self.data9
+ self.associate = [
+ {"type":"$*PAtkP","data":data},
+ {"type":"+dataplus0","data":self.data3,"skills":["里 · 鬼剑术"],"ratio":1},
+ {"type":"+power12","data":[i - 100 if i > 100 else i for i in self.data8],"skills":["拔刀斩"]},
+ ]
+ return super().effect(old, new)
+
+# 钝器精通
+# swordman_male/weapon_master/9cb6f9ed646fa87f9b7680a42ce83d1a
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/9cb6f9ed646fa87f9b7680a42ce83d1a
+class Skill8(PassiveSkill):
+ """
+ 装备钝器系武器时, 增加攻击力和命中率。\n
+ [转职为剑魂后]\n
+ - 3级 : 使用[后跳斩]时可以生成物理冲击波使敌人浮空; 使用[里 · 鬼剑术]时, 增加对眩晕状态下的敌人的攻击力。\n
+ - 5级 : 进行跳跃攻击并命中敌人时可以生成物理冲击波。\n
+ - 7级 : 使用[破军升龙击]后还可以追加蓄气型捶击攻击, 并生成冲击波; [幻影剑舞]最后一击由剑气变为冲击波; 通过[银光落刃]技能升级, 可以增加冲击波范围。\n
+ [装备传世武器后]\n
+ 适用独立的攻击力/命中率增加数值。
+ """
+ name = "钝器精通"
+ learnLv = 15
+ masterLv = 1
+ maxLv = 40
+ line = 10
+ position = 1 #TODO
+ rangeLv = 3
+ uuid = "9cb6f9ed646fa87f9b7680a42ce83d1a"
+
+ # 物理攻击力增加率 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 魔法攻击力增加率 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 命中率增加 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # [剑魂特殊附加效果]
+ # [后跳斩]浮空力 : {value3}
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # [后跳斩]冲击波攻击力 : {value4}%
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 对眩晕状态的敌人造成的[里 · 鬼剑术]攻击力增加率 : {value5}%
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # 跳跃攻击时的浮空力 : {value6}
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 跳跃攻击时的冲击波攻击力 : {value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # [后跳斩]攻击力增加率 : {value8}%
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # [装备传世武器后]
+ # 物理攻击力增加率 : {value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # 魔法攻击力增加率 : {value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # 命中率增加 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+
+ def effect(self, old, new):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] != "钝器":
+ return
+ data = self.data0
+ if weapon[1] == "传世武器":
+ data = self.data9
+ self.associate = [{"type":"$*PAtkP","data":data},]
+ return super().effect(old, new)
+
+# 武器奥义
+# swordman_male/weapon_master/8ee0099656df08a0b39225f8a21d514b
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/8ee0099656df08a0b39225f8a21d514b
+class Skill9(PassiveSkill):
+ """
+ 领悟武器奥义, 学习后, 可增加所有武器的精通等级。\n
+ 1级时, 可使所有武器精通各提升2级; 以后技能每提升1级时, 武器精通提升1级。
+ """
+ name = "武器奥义"
+ learnLv = 15
+ masterLv = 20
+ maxLv = 30
+ position = 1
+ rangeLv = 3
+ uuid = "8ee0099656df08a0b39225f8a21d514b"
+
+ associate = [{"type":"+lv","data":[i + 1 if i > 0 else i for i in range(0, maxLv + 2)],"ratio":1,"skills":["光剑精通","钝器精通","太刀精通","巨剑精通","短剑精通"]}]
+
+# 光剑掌握
+# swordman_male/weapon_master/bb34e8854a93fd250347a1c64119f7ab
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/bb34e8854a93fd250347a1c64119f7ab
+class Skill10(PassiveSkill):
+ """
+ 可以使用光剑系武器攻击敌人, 使用光剑系武器时, 可以增加攻击速度, 减少除[极 · 鬼剑术 (暴风式)]、 [万剑归宗]、 [万剑极诣·开天斩]以外技能的冷却时间。
+ """
+ name = "光剑掌握"
+ learnLv = 15
+ masterLv = 10
+ maxLv = 20
+ position = 9 #TODO
+ rangeLv = 3
+ uuid = "bb34e8854a93fd250347a1c64119f7ab"
+
+ # 使用光剑时, 技能冷却时间减少率 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 使用光剑时, 攻击速度增加率 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+
+ associate = [
+ {"type":"*cdReduce","data":data0,"exceptSkills":["极 · 鬼剑术 (暴风式)", "万剑归宗", "万剑极诣·开天斩"],"weapon":["光剑"]},
+ ]
+
+# 里 · 鬼剑术
+# swordman_male/weapon_master/51a08fd0c90f0a5276cd552047fac93d
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/51a08fd0c90f0a5276cd552047fac93d
+class Skill11(ActiveSkill):
+ """
+ 剑魂特有的鬼剑术; 施放技能时, 使用的武器不同, 出现的攻击效果也不同。\n
+ 可以与基本攻击形成连击, 但无法连接[里 · 鬼剑术]的最后一击。\n
+ 可强制中断[里·鬼剑术], 并施放其它的转职技能。
+ """
+ name = "里 · 鬼剑术"
+ learnLv = 15
+ masterLv = 1
+ maxLv = 11
+ position = 4 #TODO
+ rangeLv = 15
+ mp = [6, 140]
+ uuid = "51a08fd0c90f0a5276cd552047fac93d"
+ thrusthit = 8
+
+ @property
+ def swordnum(self):
+ list = {"短剑": 3, "光剑": 3, "巨剑": 2, "钝器": 4, "太刀": 4}
+ return list.get(self.char.GetWeaponType(), 3)
+
+ data0 = [0] + [0] * 11
+ # get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ ratio = [0, 0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30]# noqa: E501
+ dataplus0 = 0
+
+ basic = {
+ "短剑": (1 + 1 + 1) * 100,
+ "光剑": (1.433 + 1.707 + 2.235)* 100,
+ # 巨剑第二下蓄力5.2
+ "巨剑": (3.027 + 2.301 * 5.2) * 100,
+ "太刀": (1.415 + 1.688 + 1.942 + 2.225) * 2,
+ # 钝器第三下眩晕率极高,眩晕了就是3倍里鬼
+ "钝器": (2.301 + 2.923 + 1.801 * 3 + 4.366) * 100,
+ }
+
+ def getSkillData(self, lv = 0):
+ if lv == 0:
+ return 0
+ weapon = self.char.GetWeaponType()
+ basic = self.basic.get(weapon, 3)
+ ratio = self.ratio[self.lv] / 100 + 1
+ data = basic * ratio + self.dataplus0
+ return data
+
+# 流心
+# swordman_male/weapon_master/c5a2956d8ed3af1746ed2f76ca971a09
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/c5a2956d8ed3af1746ed2f76ca971a09
+class Skill12(ActiveSkill):
+ """
+ 施放后, 进入[流心]状态。\n
+ 可以强制中断基本攻击、 [里 · 鬼剑术]、 [逆转反击]、 [三段刃], 并立即施放[流心]。\n
+ [流心 : 狂]只能在施放[流心]后才能使用; 可以通过ON/OFF控制[流心 : 狂]连击状态的效果。\n
+ [流心]状态和[流心 : 跃]施放过程中, 无法用[强化 - 后跳]强制中断。\n
+ 学习[极 · 神剑术]后, 施放过程中进入霸体状态。
+ """
+ name = "流心"
+ learnLv = 20
+ masterLv = 1
+ maxLv = 1
+ position = 6 #TODO
+ rangeLv = 2
+ cd = 1
+ mp = [20, 20]
+ uuid = "c5a2956d8ed3af1746ed2f76ca971a09"
+
+ damage = False
+# 流心 : 刺
+# swordman_male/weapon_master/2a0a39184de92acf1c1375e00b77404c
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/2a0a39184de92acf1c1375e00b77404c
+class Skill13(ActiveSkill):
+ """
+ 对前方敌人发动强威力的突刺。\n
+ 未施放[流心]技能时, 也可使用[流心 : 刺]。 使用[流心 : 刺]后, 可以立即施放[连突刺]或[三段刃]。 使用除钝器以外的武器时, 在空中按流心键可以发动空中形态。\n
+ 若已掌握[极 · 神剑术]则在施放过程中进入霸体状态。\n
+ 学习[无形剑意]后, 装备短剑、 巨剑、 钝器时附加特殊效果。\n
+ [武器附加效果]\n
+ 太刀、 光剑 : 增加多段攻击次数\n
+ 钝器 : 增加攻击力; 附加眩晕效果\n
+ 巨剑、 短剑 : 突刺后按技能键追加下斩\n
+ 技能达到20级后, 装备太刀时可以增加刺伤数量
+ """
+ name = "流心 : 刺"
+ learnLv = 20
+ masterLv = 60
+ maxLv = 70
+ line = 25
+ position = 4 #TODO
+ rangeLv = 2
+ cd = 8
+ mp = [30, 280]
+ uuid = "2a0a39184de92acf1c1375e00b77404c"
+ thrusthit = 4
+
+ # 基本攻击力 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ hit0 = 2
+ # 多段攻击次数 : {value1}
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 短剑 - 在空中施放时, 多段攻击次数增加量 : 1
+ # 短剑、 巨剑 - 追加下斩攻击力 : 基本攻击力的{value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value4}个
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value5}秒
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # 太刀、 光剑 - 多段攻击次数 : {value6}
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 太刀、 光剑 - 多段攻击力 : 基本攻击力的{value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # 钝器 - 攻击力增加率 : {value8}%
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # 钝器 - 眩晕几率 : {value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # 钝器 - 眩晕时间 : {value10}秒
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+
+ # 地面与空中伤害已一致
+ def setMode(self,mode):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] == "光剑" or weapon[0] == "太刀":
+ self.hit0 = 4
+ self.power0 *= 0.63
+ elif weapon[0] == "巨剑" or weapon[0] == "短剑":
+ self.hit0 = 3
+ elif weapon[0] == "钝器":
+ self.power0 *= 1.25
+
+ def getWeaponCDRatio(self):
+ return 1.0
+
+
+# 无我剑气
+# swordman_male/weapon_master/c47b66efd27845ef14954928ea2f95c8
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/c47b66efd27845ef14954928ea2f95c8
+class Skill14(PassiveSkill):
+ """
+ 达到无我境界, 增加基本攻击力和技能攻击力。
+ """
+ name = "无我剑气"
+ learnLv = 20
+ masterLv = 5
+ maxLv = 15
+ position = 9 #TODO
+ rangeLv = 3
+ uuid = "c47b66efd27845ef14954928ea2f95c8"
+
+ # 基本攻击力和技能攻击力增加率 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ associate = [{"type":"*skillRation","data":data0}]
+
+# 破极兵刃
+# swordman_male/weapon_master/762c4e6d030eaf0abbfe1fec2b298574
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/762c4e6d030eaf0abbfe1fec2b298574
+class Skill15(ActiveSkill):
+ """
+ 使武器突破极限, 增加物理暴击率、 基本攻击力和技能攻击力, 效果持续一定时间。
+ """
+ name = "破极兵刃"
+ learnLv = 25
+ masterLv = 10
+ maxLv = 20
+ position = 2 #TODO
+ rangeLv = 3
+ cd = 5
+ mp = [271, 2570]
+ uuid = "762c4e6d030eaf0abbfe1fec2b298574"
+ # 持续时间 : {value0}秒
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 增加基本攻击力和技能攻击力 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 增加物理暴击率 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ damage = False
+
+# 流心 : 跃
+# swordman_male/weapon_master/9dc8438e4572d39243c97da31c113acc
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/9dc8438e4572d39243c97da31c113acc
+class Skill16(ActiveSkill):
+ """
+ 向前轻轻跳跃, 发出斩击。\n
+ 在施放[流心]技能状态下, 向前轻轻跳跃, 在跳跃状态下可通过追加操作向敌人发出砍击。\n
+ 使用方向键可以进行Y轴移动; 如果不进行追加操作, 则跳跃后会回到[流心]技能初始状态。\n
+ 学习[极 · 神剑术]后, 施放时进入霸体状态。\n
+ 学习[无形剑意]后, 使用短剑、 太刀、 光剑、 钝器时, 附加特殊效果。\n
+ [各武器效果]\n
+ 光剑 : 附加感电效果\n
+ 短剑 : 施放横向砍击\n
+ 太刀 : 施放横向砍击, 附加刺伤效果\n
+ 钝器 : 生成冲击波; 在空中按流心键和攻击键, 可以在空中发动[流心 : 跃]; 在空中施放时, 增加攻击力。
+ """
+ name = "流心 : 跃"
+ learnLv = 25
+ masterLv = 60
+ maxLv = 70
+ position = 5 #TODO
+ rangeLv = 2
+ cd = 8
+ mp = [30, 350]
+ uuid = "9dc8438e4572d39243c97da31c113acc"
+
+ # 基本攻击力 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ hit0 = 1
+ # 短剑、 太刀 - 多段攻击次数 : {value1}次
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 短剑、 太刀 - 多段攻击力 : 基本攻击力的{value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value4}个
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value5}秒
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # 光剑 - 感电攻击力 : {value6}%
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 光剑 - 感电几率 : {value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # 光剑 - 感电持续时间 : {value8}秒
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # 钝器 - 冲击波攻击力 : {value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # 钝器 - 空中发动[流心 : 跃]时, 攻击力增加率 : {value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # 钝器 - 冲击波大小比率 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value12}%
+ data12 = get_data(f"{prefix}/{uuid}", 12, lambda x = None: x)
+
+ mode = ["地面","空中"]
+
+ def setMode(self,mode):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] == "钝器" and mode == "空中":
+ self.skillRation *= 1.2
+ else:
+ pass
+
+ def getWeaponCDRatio(self):
+ return 1.0
+
+
+# 逆转反击
+# swordman_male/weapon_master/c9664191611af31142e052dfaef84530
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/c9664191611af31142e052dfaef84530
+class Skill17(ActiveSkill):
+ """
+ 自身背后遭受攻击时, 可以进行反击; 每隔一段时间反击时不会受到伤害。
+ """
+ name = "逆转反击"
+ learnLv = 30
+ masterLv = 20
+ maxLv = 30
+ position = 2 #TODO
+ rangeLv = 3
+ cd = [0, 15, 14.7, 14.4, 14.2, 13.9, 13.6, 13.3, 13.1, 12.8, 12.5, 12.2, 12, 11.7, 11.4, 11.1, 10.9, 10.6, 10.3, 10, 9.8, 9.5, 9.2, 8.9, 8.7, 8.4, 8.1, 7.8, 7.6, 7.3, 7]
+ uuid = "c9664191611af31142e052dfaef84530"
+
+ damage = False
+ # 攻击力 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 保护冷却时间 : {value1}秒
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+
+# 破军升龙击
+# swordman_male/weapon_master/28b583c75a49103a1d8aabf799c000a4
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/28b583c75a49103a1d8aabf799c000a4
+class Skill18(ActiveSkill):
+ """
+ 以冲撞击退敌人的同时向敌人发出单手上斩, 可以使敌人浮空。\n
+ 若已掌握[极 · 神剑术]则会发动阿甘左的暴风式。\n
+ [武器附加效果]\n
+ 太刀 : 增加上斩攻击次数; 技能达到4级以上时, 附加刺伤效果\n
+ 光剑 : 增加冲撞攻击次数, 减少冲撞攻击力\n
+ 巨剑 : 上斩后可以追加攻击\n
+ 钝器 : 上斩后可以追加攻击, 追加攻击会生成冲击波 (被追加攻击命中的敌人, 不会受到冲击波的伤害)
+ """
+ name = "破军升龙击"
+ learnLv = 30
+ masterLv = 60
+ maxLv = 70
+ position = 4 #TODO
+ rangeLv = 2
+ cd = 10
+ mp = [70, 700]
+ uuid = "28b583c75a49103a1d8aabf799c000a4"
+
+ # 肩撞攻击力 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ hit0 = 2
+ # 上斩攻击力 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ hit1 = 1
+ # 太刀 - 上斩额外攻击次数 : {value2}
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # 太刀 - 附加刺伤几率 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 太刀 - 附加刺伤层数 : {value4}层
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value5}秒
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # 光剑 - 肩撞额外攻击次数 : {value6}次
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 光剑 - 肩撞攻击力减少率 : {value7}%
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # 巨剑、 钝器 - 下锤的蓄气时间上限 : {value8}秒
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # 巨剑、 钝器 - 下锤攻击力 : 上斩攻击力的{value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # 钝器 - 下锤冲击波攻击力 : 上斩攻击力的{value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+
+ # 巨剑 钝器追加部分
+ data12 = data1
+ hit12 = 0
+ # 75被动追加部分
+ data13 = data1
+ hit13 = 1
+ power13 = 0
+
+ def setMode(self,mode):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] == "光剑":
+ self.hit0 += 2
+ # 光剑肩撞伤害减少
+ self.power0 -= 0.114
+ elif weapon[0] == "太刀":
+ self.hit1 += 1
+ elif weapon[0] == "钝器" or weapon[0] == "巨剑":
+ self.hit12 = 1
+
+
+# 流心 : 升
+# swordman_male/weapon_master/3fb8395ae3b81bd608e0c4223a8eb534
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/3fb8395ae3b81bd608e0c4223a8eb534
+class Skill19(ActiveSkill):
+ """
+ 向上跳跃的同时对敌人发出上挑攻击。\n
+ 若已掌握[极 · 神剑术]则在施放过程中进入霸体状态。\n
+ 学习[无形剑意]后, 装备太刀、 光剑、 巨剑时附加特殊效果。\n
+ [武器附加效果]\n
+ 太刀 : 可以进行多段攻击, 但减少多段攻击力; 技能达到15级以上时, 造成额外刺伤效果\n
+ 光剑 : 可以进行多段攻击, 但减少多段攻击力\n
+ 短剑、 巨剑、 钝器 : 对浮空的敌人或者霸体状态、 没有浮空的敌人造成更高的攻击力\n
+ 巨剑 : 减少攻击时的跳跃力
+ """
+ name = "流心 : 升"
+ learnLv = 30
+ masterLv = 60
+ maxLv = 70
+ position = 7 #TODO
+ rangeLv = 2
+ cd = 8
+ mp = [50, 490]
+ uuid = "3fb8395ae3b81bd608e0c4223a8eb534"
+
+ def getWeaponCDRatio(self):
+ return 1.0
+
+ # 基本攻击力 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value2}个
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value3}秒
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 光剑、 太刀 - 多段攻击次数 : {value4}次
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 装备光剑、 太刀时, 攻击力比率 : 80%
+ # 钝器、 短剑和巨剑 - 对浮空的敌人、 霸体状态的敌人、 没有浮空的敌人攻击力增加率 : {value5}%
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value6}%
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+
+ def setMode(self,mode):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] == "光剑" or weapon[0] == "太刀":
+ self.hit0 = 3
+ self.skillRation *= 0.8
+ elif weapon[0] == "钝器" or weapon[0] == "巨剑" or weapon[0] == "短剑":
+ self.skillRation *= 1 + 1.1
+
+
+# 流心 : 狂
+# swordman_male/weapon_master/5806440d21e7546d50007a5ba11f8024
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/5806440d21e7546d50007a5ba11f8024
+class Skill20(ActiveSkill):
+ """
+ 施放[流心]技能后可以使用; 施放时, 增加[流心 : 刺]、 [流心 : 跃]、 [流心 : 升]的攻击力和物理暴击率。\n
+ [流心 : 狂]连击状态\n
+ 学习[极 · 神剑术]后, 施放[流心 : 狂]后可以连接施放[流心 : 刺]、 [流心 : 跃]、 [流心 : 升]。(流心技能可以使用开启/关闭进行设置)\n
+ 连接施放[流心 : 刺]、 [流心 : 跃]、 [流心 : 升]时, 增加各技能的施放速度。\n
+ [连接施放快捷键]\n
+ [流心 : 刺] : X\n
+ [流心 : 跃] : C + C 或 C + X\n
+ [流心 : 升] : Z
+ """
+ name = "流心 : 狂"
+ learnLv = 30
+ masterLv = 10
+ maxLv = 20
+ position = 6 #TODO
+ rangeLv = 3
+ cd = 5
+ mp = [20, 168]
+ uuid = "5806440d21e7546d50007a5ba11f8024"
+ damage = False
+
+ # 持续时间 : {value0}秒
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 可蓄气时间上限 : {value1}秒
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # [流心 : 刺/跃/升] - 攻击力增加率 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # 物理暴击率增加 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+
+ associate = [
+ {"type":"*skillRation","data":data2,"skills":["流心 : 升","流心 : 刺","流心 : 跃"]}
+ ]
+
+
+ def getWeaponCDRatio(self):
+ return 1.0
+
+# 拔刀斩
+# swordman_male/weapon_master/cfacda0647b9a0f595df2c2aad30c18d
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/cfacda0647b9a0f595df2c2aad30c18d
+class Skill21(ActiveSkill):
+ """
+ 拔刀并快速向周围敌人发出强威力的斩击。\n
+ [武器附加效果]\n
+ 短剑 : [短剑精通]达到7级时, 生成剑气\n
+ 太刀、 光剑 : [太刀精通]或[光剑精通]达到7级时, 再次按技能键发动追加攻击\n
+ 太刀 : 技能达到5级以上时, 造成额外刺伤效果\n
+ 巨剑 : [巨剑精通]达到3级时, 长按技能键可以蓄气, 最大蓄气时增加攻击力\n
+ 钝器 : 可以使敌人倒地并对倒地敌人追加伤害
+ """
+ name = "拔刀斩"
+ learnLv = 35
+ masterLv = 60
+ maxLv = 70
+ position = 5 #TODO
+ rangeLv = 2
+ cube = 1
+ cd = 15
+ mp = [110, 924]
+ uuid = "cfacda0647b9a0f595df2c2aad30c18d"
+ vps = [{"name": "拔刀奥义", "desc": "施放时间减少
范围增加
发动[神影手]
强化[神影手]速度增益"}, {"name": "冲击之刃", "desc": "取消僵直
施放时间减少"}] # noqa: E501
+ # [拔刀斩]攻击力 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ hit0 = 1
+ # 短剑 - 剑气攻击力 : 拔刀斩的{value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ # 太刀 - 追加斩击攻击力 : 拔刀斩的{value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value4}个
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value5}秒
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # 太刀 - 追加斩击刺伤效果触发几率 : {value6}%
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 太刀 - 追加斩击刺伤效果触发层数 : {value7}层
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # 太刀 - 追加斩击刺伤持续时间 : {value8}秒
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # 光剑 - 追加斩击攻击力 : 拔刀斩的{value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+ # 钝器 - 对倒地敌人和无法倒地敌人的追加攻击力 : 拔刀斩的{value10}%
+ data10 = get_data(f"{prefix}/{uuid}", 10, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value11}%
+ data11 = get_data(f"{prefix}/{uuid}", 11, lambda x = None: x)
+
+ data12 = data0
+ hit12 = 1
+ power12 = 0
+
+ def setMode(self,mode=None):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] == "光剑" or weapon[0] == "钝器":
+ self.power12 += 0.3
+ elif weapon[0] == "太刀":
+ self.power12 += 0.25
+ elif weapon[0] == "短剑":
+ self.power12 += 0.4
+
+ def vp_1(self):
+ """
+ [拔刀斩]\n
+ 准备动作时间 -30%\n
+ 攻击范围 +45%\n
+ [神影手]\n
+ [拔刀斩]命中时, 获得以下效果\n
+ - 发动[神影手]效果\n
+ - 每次拔刀最多发动1次\n
+ 攻击速度和移动速度增加量 +70%
+ """
+ ...
+
+ def vp_2(self):
+ """
+ [拔刀斩]\n
+ 可以强制中断转职技能的施放后僵直并施放 (觉醒技能除外)\n
+ 根据穿戴的武器, 发动时触发以下效果\n
+ - 短剑、 钝器 : 攻击后僵直 -40%\n
+ - 太刀、 光剑 : 同时发动拔刀追加攻击\n
+ - 巨剑 : 立即以最大蓄气状态施放
+ """
+ ...
+
+# 猛龙断空斩
+# swordman_male/weapon_master/669f1428193f61f9d92c743b72438c4d
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/669f1428193f61f9d92c743b72438c4d
+class Skill42(ActiveSkill):
+ """
+ 向前方快速移动并斩击敌人。\n
+ 可以上下左右移动着斩击敌人; 起始斩击后可以通过再次按技能键追加斩击。\n
+ 最后一击为可以使敌人浮空的单手上斩。\n
+ 若已掌握[极 · 神剑术], 则会出现巴恩的飓风\n
+ 若已学9级以上的[光剑精通]并使用光剑系武器, 则可以使敌人进入感电状态。
+ """
+ name = "猛龙断空斩"
+ learnLv = 40
+ masterLv = 60
+ maxLv = 70
+ position = 3
+ rangeLv = 2
+ cube = 1
+ cd = 20
+ mp = [25, 420]
+ uuid = "669f1428193f61f9d92c743b72438c4d"
+ hasVP = True
+ hasUP = True
+ vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
+ # 斩击次数上限 : {value0}次
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ # 突进斩击攻击力 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ hit1 = 2
+ # 突进上斩攻击力 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ hit2 = 2
+ # [范围信息]
+ # 范围比率 : {value3}%
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+
+ data4 = data1
+ hit4 = 8
+ power4 = 0
+
+ def vp_1(self):
+ """
+ [猛龙断空斩]\n
+ 突进上斩动作结束时生成旋风\n
+ [极·神剑术]\n
+ 巴恩的飓风强化\n
+ - 移动时追击周围敌人\n
+ - 大小 +70%\n
+ - 持续时间 +1秒\n
+ - 多段攻击次数上限 +7次\n
+ - 总攻击力相同
+ """
+ ...
+
+ def vp_2(self):
+ """
+ [猛龙断空斩]\n
+ 突进过程中可以通过[流心]强制中断技能\n
+ 突进过程中被击时, 招架敌人的攻击, 所受伤害 -90%\n
+ 攻击次数上限变更为1次\n
+ - 固定施放突进上斩动作\n
+ - 总攻击力相同
+ """
+ ...
+
+# 破军斩龙击
+# swordman_male/weapon_master/2c9d9a36c8401bddff6cdb80fab8dc24
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/2c9d9a36c8401bddff6cdb80fab8dc24
+class Skill23(ActiveSkill):
+ """
+ 向前进并把周围敌人推向前方, 然后转身继续前进, 把敌人聚到一处后, 上挑攻击使敌人浮空。\n
+ 第一击可以使敌人眩晕。\n
+ 使用太刀时, 可以同时叠加多个刺伤效果。
+ """
+ name = "破军斩龙击"
+ learnLv = 40
+ masterLv = 60
+ maxLv = 70
+ position = 4 #TODO
+ rangeLv = 2
+ cube = 1
+ cd = 25
+ mp = [30, 450]
+ uuid = "2c9d9a36c8401bddff6cdb80fab8dc24"
+ hasVP = True
+ hasUP = True
+ vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
+
+ # 肩撞攻击力 : {value0}%
+ data0 = get_data(f"{prefix}/{uuid}", 0, lambda x = None: x)
+ hit0 = 1
+ # 刺击物理攻击力 : {value1}%
+ data1 = get_data(f"{prefix}/{uuid}", 1, lambda x = None: x)
+ hit1 = 1
+ # 上斩攻击力 : {value2}%
+ data2 = get_data(f"{prefix}/{uuid}", 2, lambda x = None: x)
+ hit2 = 1
+ # 上斩浮空力 : {value3}
+ data3 = get_data(f"{prefix}/{uuid}", 3, lambda x = None: x)
+ # 眩晕几率 : {value4}%
+ data4 = get_data(f"{prefix}/{uuid}", 4, lambda x = None: x)
+ # 眩晕持续时间 : {value5}秒
+ data5 = get_data(f"{prefix}/{uuid}", 5, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value6}%
+ data6 = get_data(f"{prefix}/{uuid}", 6, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value7}个
+ data7 = get_data(f"{prefix}/{uuid}", 7, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value8}秒
+ data8 = get_data(f"{prefix}/{uuid}", 8, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value9}%
+ data9 = get_data(f"{prefix}/{uuid}", 9, lambda x = None: x)
+
+ def vp_1(self):
+ """
+ [破军斩龙击]\n
+ 变更为集中意念后上斩的技能\n
+ - 删除肩撞攻击和刺击攻击\n
+ - 总攻击力 +60%\n
+ - 基本冷却时间变更为40秒\n
+ - 上斩范围 +35%\n
+ - 浮空力 +30%\n
+ - 删除附加眩晕效果
+ """
+ self.cd = 40
+ self.skillRation *= 1.6
+ ...
+
+ def vp_2(self):
+ """
+ [破军斩龙击]\n
+ 可以吸附处于霸体状态及无法抓取状态的敌人\n
+ 可以强制中断[破军升龙击]技能的施放后僵直并发动\n
+ [破军升龙击]\n
+ 肩撞攻击会将敌人击退\n
+ 可以强制中断[破军斩龙击]技能的施放后僵直并发动\n
+ [三段刃]\n
+ 可以在施放过程中强制中断技能, 并施放[破军升龙击]和[破军斩龙击]
+ """
+ ...
+
+# 幻影剑舞
+# swordman_male/weapon_master/8510294202d0e042dd29a2422fc6770d
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/8510294202d0e042dd29a2422fc6770d
+class Skill24(ActiveSkill):
+ """
+ 在原地向敌人发出迅猛的连续斩击, 每次斩击时发出剑气, 飞向前方后消失。\n
+ 斩击过程中连按技能键或攻击键时, 可以增加斩击速度。\n
+ 可以按上下方向键控制剑气的方向。\n
+ 若已掌握[极 · 神剑术]则会触发索德罗斯的幻影攻击效果。 (钝器系武器的最后一击不会发出剑气, 但会生成冲击波)\n
+ [武器附加效果]\n
+ 短剑 : 增加剑气攻击力; [短剑精通]达到7级时, 增加剑气多段攻击次数\n
+ 太刀 : 造成额外刺伤效果\n
+ 太刀、 光剑 : [太刀精通]或[光剑精通]达到7级时, 增加斩击次数和攻击速度, 减少攻击力\n
+ 巨剑 : 增加斩击攻击力\n
+ 钝器 : [钝器精通]达到7级时, 不会发出剑气, 但会生成冲击波
+ """
+ name = "幻影剑舞"
+ learnLv = 45
+ masterLv = 60
+ maxLv = 70
+ position = 6
+ rangeLv = 2
+ cube = 2
+ cd = 45
+ mp = [360, 3024]
+ uuid = "8510294202d0e042dd29a2422fc6770d"
+ hasVP = True
+ hasUP = True
+ vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
+
+ # 斩击攻击力 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 12
+ # 基础斩击次数 : {value1}次
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 3
+ # 剑气攻击力 : {value2}%
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ hit2 = 0
+ # 剑气多段攻击次数 : {value3}次
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ # 短剑 - 斩击攻击力减少率 : {value4}%
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+ # 短剑 - 剑气攻击力 : {value5}%
+ data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
+ # 短剑 - 剑气的多段攻击次数 : {value6}次
+ data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
+ # [太刀精通]、 [光剑精通]达到7级后, 斩击次数 : {value7}次
+ data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
+ # [太刀精通]、 [光剑精通]达到7级后, 斩击攻击力减少率 : {value8}%
+ data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value9}%
+ data9 = get_data(f'{prefix}/{uuid}', 9, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value10}个
+ data10 = get_data(f'{prefix}/{uuid}', 10, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value11}秒
+ data11 = get_data(f'{prefix}/{uuid}', 11, lambda x = None: x)
+ # 光剑 - 感电几率 : {value12}%
+ data12 = get_data(f'{prefix}/{uuid}', 12, lambda x = None: x)
+ # 光剑 - 感电攻击力 : {value13}%
+ data13 = get_data(f'{prefix}/{uuid}', 13, lambda x = None: x)
+ # 巨剑 - 斩击攻击力增加率 : {value14}%
+ data14 = get_data(f'{prefix}/{uuid}', 14, lambda x = None: x)
+ # 钝器 - 冲击波攻击力 : {value15}%
+ data15 = get_data(f'{prefix}/{uuid}', 15, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value16}%
+ data16 = get_data(f'{prefix}/{uuid}', 16, lambda x = None: x)
+ # 75被动影子斩击部分
+ data17 = data0
+ power17 = 0
+ hit17 = 4
+
+ # 75被动影子剑气部分
+ data18 = data1
+ power18 = 0
+ hit18 = 3
+
+ # 75被动钝器冲击波部分
+ data19 = data2
+ power19 = 0
+ hit19 = 1
+
+ def setMode(self, mode=None):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] == "光剑" or weapon[0] == "太刀":
+ # 减少斩击攻击力 增加斩击次数
+ self.hit0 = 24
+ self.power0 *= 1 - 0.25
+ elif weapon[0] == "短剑":
+ # 减少斩击攻击力
+ self.power0 *= 1 - 0.1
+ # 增加剑气攻击力和次数
+ self.power1 *= 1.2
+ self.hit1 = self.hit4 = 4
+ elif weapon[0] == "巨剑":
+ # 增加斩击攻击力
+ self.power0 *= 1 + 0.5
+ elif weapon[0] == "钝器":
+ # 不会产生剑气 变成冲击波
+ self.hit2 = self.hit5 = 1
+ self.hit1 = self.hit4 = 0
+ pass
+
+# 极 · 鬼剑术 (斩铁式)
+# swordman_male/weapon_master/5152480fdde81362575a488d4cec4af9
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/5152480fdde81362575a488d4cec4af9
+class Skill25(PassiveSkill):
+ """
+ 将鬼剑术修炼至极致, 增加基本攻击力和技能攻击力。
+ """
+ name = "极 · 鬼剑术 (斩铁式)"
+ learnLv = 48
+ masterLv = 40
+ maxLv = 50
+ position = 4
+ rangeLv = 3
+ uuid = "5152480fdde81362575a488d4cec4af9"
+ hasVP = False
+ hasUP = False
+
+ # 基本攻击力和技能攻击力增加率 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+
+ associate = [{"type":"*skillRation","data":data0}]
+
+
+# 极 · 鬼剑术 (暴风式)
+# swordman_male/weapon_master/4f2e001e9a19eb7bae50ad1840dfb329
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/4f2e001e9a19eb7bae50ad1840dfb329
+class Skill26(ActiveSkill):
+ """
+ 抛出24把剑形成剑阵, 依次抓取剑进行乱舞后, 最后一击发动上斩。\n
+ 形成剑阵时, 会将敌人击飞并强制控制, 乱舞攻击时, 会将敌人吸引到剑阵中心。\n
+ 在乱舞攻击中连续按技能键和攻击键, 可增加乱舞速度。\n
+ 在[流心]状态下也可以发动, 此时不强控敌人, 直接发动攻击。
+ """
+ name = "极 · 鬼剑术 (暴风式)"
+ learnLv = 50
+ masterLv = 40
+ maxLv = 50
+ position = 6
+ rangeLv = 5
+ cube = 5
+ cd = 145
+ mp = [980, 8232]
+ uuid = "4f2e001e9a19eb7bae50ad1840dfb329"
+ hasVP = False
+ hasUP = False
+
+ # 形成剑阵攻击力 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 1 #TODO
+ # 乱舞攻击力 : {value1}%
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 24
+ # 最后一击上斩攻击力 : {value2}%
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ hit2 = 1 #TODO
+ # 攻击力增加率 : {value3}%
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ associate = [
+ {"type":"*skillRation","data":data3,"skills":["极 · 鬼剑术 (暴风式)"]}
+ ]
+
+# 极 · 神剑术 (流星落)
+# swordman_male/weapon_master/0c262dac3ec41ff79e359ada9c7a7faf
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/0c262dac3ec41ff79e359ada9c7a7faf
+class Skill27(ActiveSkill):
+ """
+ 高高跃起并在空中向目标地点投掷数十把流星剑。\n
+ 跃起后一定时间内, 可以利用方向键指定流星剑的投掷位置。\n
+ 学习[极 · 神剑术]后, 投掷流星剑的过程中按攻击键, 可以投掷流星之天剑强控敌人; 可以利用左右方向键控制流星之天剑的投掷位置, 并会根据装备的武器类型附加特殊效果。\n
+ [武器附加效果]\n
+ 短剑 : 束缚敌人\n
+ 太刀 : 附加刺伤效果\n
+ 光剑 : 追加地面冲击波攻击及附加感电效果\n
+ 巨剑 : 增加攻击力\n
+ 钝器 : 追加地面冲击波攻击及附加眩晕效果
+ """
+ name = "极 · 神剑术 (流星落)"
+ learnLv = 60
+ masterLv = 40
+ maxLv = 50
+ position = 3
+ rangeLv = 2
+ cube = 1
+ cd = 35
+ mp = [420, 1200]
+ uuid = "0c262dac3ec41ff79e359ada9c7a7faf"
+ hasVP = True
+ hasUP = True
+ vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
+
+ # 跳跃冲击波攻击力 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 1
+ # 流星剑投掷攻击力 : {value1}%
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 38
+ # 流星剑投掷数量 : {value2}把
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ # 流星剑投掷间隔 : {value3}秒
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ # 地面冲击波攻击力 : {value4}%
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+ hit4 = 1
+ # 太刀 - 刺伤效果几率 : {value5}%
+ data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value6}个
+ data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value7}秒
+ data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value8}%
+ data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
+
+ # 75被动追加天剑部分
+ dataplus0 = 0
+ hitplus0 = 3
+ powerplus0 = 1
+ # 75被动追加冲击波部分
+ dataplus1 = 0
+ hitplus1 = 3
+ powerplus1 = 1
+
+ def vp_1(self):
+ """
+ [极 · 神剑术 (流星落)]\n
+ 无敌效果强化\n
+ - 跳跃动作变更为无敌状态\n
+ - 落地后无敌时间 +1秒\n
+ 跳跃冲击波攻击可以强制控制敌人1.5秒\n
+ 流星剑功能强化\n
+ - 投掷流星剑前置准备时间 -50%\n
+ - 攻击范围 +55%\n
+ [极·神剑术]\n
+ 流星之天剑功能强化\n
+ - 强制控制持续时间 +60%\n
+ - 攻击范围 +55%
+ """
+ ...
+
+ def vp_2(self):
+ """
+ [极 · 神剑术 (流星落)]\n
+ 施放时向空中投掷流星剑和流星之天剑\n
+ - 流星剑和流星之天剑会追踪最强的敌人\n
+ - 删除跳跃冲击波及地面冲击波攻击\n
+ - 总攻击力相同
+ """
+ ...
+
+# 破空拔刀斩
+# swordman_male/weapon_master/2ba299855fc22192cba4f73db75e9d0e
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/2ba299855fc22192cba4f73db75e9d0e
+class Skill28(ActiveSkill):
+ """
+ 拔刀对大范围进行斩击,并向前方发动剑气攻击。\n
+ 施放时, 按住技能键一定时间可以集气, 被斩击攻击命中的敌人不会受到剑气攻击。\n
+ [武器附加效果]\n
+ 太刀 : 附加刺伤\n
+ 光剑 : 附加感电效果
+ """
+ name = "破空拔刀斩"
+ learnLv = 70
+ masterLv = 40
+ maxLv = 50
+ position = 5
+ rangeLv = 2
+ cube = 2
+ cd = 50
+ mp = [800, 1680]
+ uuid = "2ba299855fc22192cba4f73db75e9d0e"
+ hasVP = True
+ hasUP = True
+ vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
+
+ # 斩击攻击力 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 1
+ # 剑气攻击力 : {value1}%
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 0
+ # 太刀 - 刺伤效果几率 : {value2}%
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value3}个
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value4}秒
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+ # 光剑 - 感电几率 : {value5}%
+ data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
+ # 光剑 - 感电持续时间 : {value6}秒
+ data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
+ # 光剑 - 感电攻击力 : {value7}%
+ data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value8}%
+ data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
+ # 剑气移动距离 : {value9}px
+ data9 = get_data(f'{prefix}/{uuid}', 9, lambda x = None: x)
+
+ mode = ["斩击","剑气"]
+
+ def setMode(self,mode=None):
+ if mode == "剑气":
+ self.hit0 = 0
+ self.hit1 = 1
+
+ def vp_1(self):
+ """
+ [破空拔刀斩]\n
+ 剑气攻击力变更为与斩击攻击力相同\n
+ 准备动作时间 -40%\n
+ 可以强制中断剑气生成后僵直, 并施放转职技能
+ """
+ self.setMode("斩击")
+
+ def vp_2(self):
+ """
+ [破空拔刀斩]\n
+ 剑气移动距离 +600%\n
+ 变更为可填充2次的技能\n
+ - 每次填充冷却时间 : 25秒\n
+ - 单次攻击力 -50%
+ """
+ self.cd = 25
+ self.skillRation *= 0.5
+
+
+# 神影手
+# swordman_male/weapon_master/0fc47245af1f21c3e9217d03aa9fff0a
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/0fc47245af1f21c3e9217d03aa9fff0a
+class Skill29(PassiveSkill):
+ """
+ 减少切换武器的冷却时间, 在切换其它系列武器时, 在前方发动冲击波, 并且增加攻击速度和移动速度, 效果持续一定时间。\n
+ 无法在被击时使用[神影手]。(被击时切换武器, 发动[疾影手])
+ """
+ name = "神影手"
+ learnLv = 70
+ masterLv = 1
+ maxLv = 1
+ position = 9
+ rangeLv = 1
+ uuid = "0fc47245af1f21c3e9217d03aa9fff0a"
+ hasVP = False
+ hasUP = False
+
+ # 切换武器的冷却时间比率 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ # 冲击波攻击力 : {value1}%
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 1
+ # 攻击速度、 移动速度增加 : {value2}%
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ # 增益效果持续时间 : {value3}秒
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+
+
+# 极 · 神剑术 (破空斩)
+# swordman_male/weapon_master/b501ae53638d33a32351904f31cb6aa3
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/b501ae53638d33a32351904f31cb6aa3
+class Skill30(ActiveSkill):
+ """
+ 标记前方的敌人, 以极快的速度对敌人发动斩击。\n
+ 记录敌人之前会先进入准备动作, 按住技能键可控制施放时机。\n
+ 学习[极 · 神剑术]后, 对斩击目标中生命值最高的敌人发动极限之十字刃。\n
+ [武器附加效果]\n
+ 短剑 : 准备动作中, 可以吸附敌人\n
+ 太刀 : 增加斩击次数, 附加刺伤效果\n
+ 光剑 : 增加斩击次数, 并附加感电效果\n
+ 巨剑 : 可追加蓄气, 并增加攻击力\n
+ 钝器 : 附加眩晕效果
+ """
+ name = "极 · 神剑术 (破空斩)"
+ learnLv = 75
+ masterLv = 40
+ maxLv = 50
+ position = 3
+ rangeLv = 2
+ cube = 3
+ cd = 35
+ mp = [580, 4500]
+ uuid = "b501ae53638d33a32351904f31cb6aa3"
+ hasVP = True
+ hasUP = True
+ vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
+
+ # 斩击攻击力 : {value0}% x {value1}
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 5
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ # 爆炸攻击力 : {value2}%
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ hit2 = 1
+ # 太刀、 光剑 - 斩击次数增加 : {value3}
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value4}%
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value5}
+ data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value6}秒
+ data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
+ # 光剑 - 感电攻击力 : {value7}%
+ data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
+ # 光剑 - 感电几率 : {value8}%
+ data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
+ # 光剑 - 感电持续时间 : {value9}秒
+ data9 = get_data(f'{prefix}/{uuid}', 9, lambda x = None: x)
+ # 巨剑 - 额外蓄气时间 : {value10}秒
+ data10 = get_data(f'{prefix}/{uuid}', 10, lambda x = None: x)
+ # 巨剑 - 额外蓄气时攻击力增加率 : {value11}%
+ data11 = get_data(f'{prefix}/{uuid}', 11, lambda x = None: x)
+ # 钝器 - 眩晕几率 : {value12}%
+ data12 = get_data(f'{prefix}/{uuid}', 12, lambda x = None: x)
+ # 钝器 - 眩晕持续时间 : {value13}秒
+ data13 = get_data(f'{prefix}/{uuid}', 13, lambda x = None: x)
+ # [范围信息]
+ # 范围比率 : {value14}%
+ data14 = get_data(f'{prefix}/{uuid}', 14, lambda x = None: x)
+
+
+ def setMode(self,mode=None):
+ weapon = self.char.GetWeaponType()
+ if weapon[0] == "光剑" or weapon[0] == "太刀":
+ # 减少斩击攻击力 增加斩击次数
+ self.hit0 = 6
+ elif weapon[0] == "巨剑":
+ # 增加斩击攻击力
+ self.power0 *= 1 + 0.08
+ self.power1 *= 1 + 0.08
+
+ def vp_1(self):
+ """
+ [极 · 神剑术 (破空斩)]\n
+ 斩击范围增加\n
+ - 斩击时, 生成2个使用[极 · 神剑术 (破空斩)]的残影\n
+ - X轴攻击范围 +50%\n
+ 施放时立即进入无敌状态\n
+ 准备动作可持续时间上限 +1.5秒
+ """
+ ...
+
+ def vp_2(self):
+ """
+ [极 · 神剑术 (破空斩)]\n
+ 施放前僵直 -40%\n
+ 没有斩击目标时, 冷却时间缩短为4秒\n
+ 对被斩击的敌人附加在一定时间后爆炸的剑痕\n
+ - 删除多段攻击\n
+ - 总攻击力相同\n
+ [神影手]\n
+ 冲击波攻击强化\n
+ - 范围 +35%\n
+ - 冲击波发动时, 同时适用[极 · 神剑术 (破空斩)]攻击 ([极 · 神剑术 (破空斩)]可施放时适用)
+ """
+ ...
+
+# 极 · 神剑术
+# swordman_male/weapon_master/3af805da8505fe6234a95b535610f064
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/3af805da8505fe6234a95b535610f064
+class Skill31(PassiveSkill):
+ """
+ 剑术学习达到极致, 可以将其他知名剑士的技能融会贯通, 掌握特定技能的秘传招式。\n
+ [知名剑士的技能]\n
+ 施放流心系列技能时, 会发动布万加的[霸体护甲];\n
+ 施放[后跳斩]时, 会出现西岚的剑气;\n
+ 施放[破军升龙击]时, 会发动阿甘左的暴风式冲击波;\n
+ 施放[猛龙断空斩]时, 会出现巴恩的飓风;\n
+ 施放[幻影剑舞]时, 会触发索德罗斯的幻影攻击效果。\n
+ [学习极 · 神剑术后]\n
+ 施放[极 · 神剑术 (流星落)]时, 按攻击键可以投掷流星之天剑, 最多可以强制控制10个敌人。 可使用左右方向键控制流星之天剑的掉落方向, 并根据使用的武器获得附加效果\n
+ - 短剑 : 束缚敌人\n
+ - 太刀 : 附加刺伤效果\n
+ - 光剑 : 增加地面电击波攻击和感电效果\n
+ - 巨剑 : 增加攻击力\n
+ - 钝器 : 增加地面冲击波攻击和使敌人进入眩晕状态\n
+ 施放[极 · 神剑术 (破空斩)]时, 优先锁定生命值最高的敌人后, 以那个敌人为中心, 发动大范围的十字形斩击。
+ """
+ name = "极 · 神剑术"
+ learnLv = 75
+ masterLv = 40
+ maxLv = 50
+ position = 4
+ rangeLv = 3
+ uuid = "3af805da8505fe6234a95b535610f064"
+ hasVP = False
+ hasUP = False
+
+ # [拔刀斩]、 [破军斩龙击]、 [极 · 鬼剑术 (暴风式)]、 [破空拔刀斩]、 [极 · 神剑术 (瞬斩)]、 [万剑归宗]、 [极 · 神剑术 (无形斩)]、 [万剑极诣·开天斩]攻击力增加率 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ # [后跳斩 - 西岚的剑气]
+ # 攻击力 : {value1}%
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ # [破军升龙击 - 暴风式冲击波]
+ # 攻击力 : [破军升龙击]上斩攻击力的{value2}%
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ # [猛龙断空斩 - 巴恩的飓风]
+ # 攻击力 : [猛龙断空斩]突进斩击攻击力的{value3}%
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ # [幻影剑舞 - 索德罗斯的幻影攻击]
+ # 斩击攻击力 : [幻影剑舞]斩击攻击力的{value4}%
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+ # 剑气攻击力 : [幻影剑舞]剑气攻击力的{value5}%
+ data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
+ # 钝器冲击波攻击力 : [幻影剑舞]钝器冲击波攻击力的{value6}%
+ data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
+ # [极 · 神剑术 (流星落) - 流星之天剑]
+ # 攻击力 : {value7}%
+ data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
+ # 投掷数量上限 : {value8}把
+ data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
+ # 强制控制持续时间 : {value9}秒
+ data9 = get_data(f'{prefix}/{uuid}', 9, lambda x = None: x)
+ # 短剑 - 束缚几率 : {value10}%
+ data10 = get_data(f'{prefix}/{uuid}', 10, lambda x = None: x)
+ # 短剑 - 束缚持续时间 : {value11}秒
+ data11 = get_data(f'{prefix}/{uuid}', 11, lambda x = None: x)
+ # 太刀 - 刺伤效果几率 : {value12}%
+ data12 = get_data(f'{prefix}/{uuid}', 12, lambda x = None: x)
+ # 太刀 - 刺伤效果数 : {value13}个
+ data13 = get_data(f'{prefix}/{uuid}', 13, lambda x = None: x)
+ # 太刀 - 刺伤持续时间 : {value14}秒
+ data14 = get_data(f'{prefix}/{uuid}', 14, lambda x = None: x)
+ # 光剑 - 地面冲击波攻击力 : {value15}%
+ data15 = get_data(f'{prefix}/{uuid}', 15, lambda x = None: x)
+ # 光剑 - 感电几率 : {value16}%
+ data16 = get_data(f'{prefix}/{uuid}', 16, lambda x = None: x)
+ # 光剑 - 感电持续时间 : {value17}秒
+ data17 = get_data(f'{prefix}/{uuid}', 17, lambda x = None: x)
+ # 光剑 - 感电攻击力 : {value18}%
+ data18 = get_data(f'{prefix}/{uuid}', 18, lambda x = None: x)
+ # 巨剑 - 攻击力增加率 : {value19}%
+ data19 = get_data(f'{prefix}/{uuid}', 19, lambda x = None: x)
+ # 钝器 - 地面冲击波攻击力 : {value20}%
+ data20 = get_data(f'{prefix}/{uuid}', 20, lambda x = None: x)
+ # 钝器 - 眩晕几率 : {value21}%
+ data21 = get_data(f'{prefix}/{uuid}', 21, lambda x = None: x)
+ # 钝器 - 眩晕持续时间 : {value22}秒
+ data22 = get_data(f'{prefix}/{uuid}', 22, lambda x = None: x)
+ # [极·神剑术(破空斩) - 极限之十字刃]
+ # 攻击力 : [极 · 神剑术 (破空斩)]爆炸攻击力的{value23}%
+ data23 = get_data(f'{prefix}/{uuid}', 23, lambda x = None: x)
+
+ associate = [
+ {"type":"*skillRation","data":data0,"skills":["拔刀斩", "破军斩龙击", "极 · 鬼剑术 (暴风式)", "破空拔刀斩","极 · 神剑术 (瞬斩)", "万剑归宗", "极 · 神剑术 (无形斩)", "万剑极诣·开天斩"]},
+ {"type":"+power13","data":data2,"skills":["破军升龙击"]},
+ {"type":"+power4","data":data3,"skills":["猛龙断空斩"]},
+ {"type":"+power17","data":data4,"skills":["幻影剑舞"]},
+ {"type":"+power18","data":data5,"skills":["幻影剑舞"]},
+ {"type":"+power19","data":data6,"skills":["幻影剑舞"],"weapon":["钝器"]},
+ {"type":"+dataplus0","data":data7,"skills":["极 · 神剑术 (流星落)"],"ratio":1},
+ {"type":"+dataplus1","data":data15,"skills":["极 · 神剑术 (流星落)"],"weapon":["光剑"],"ratio":1},
+ {"type":"*powerplus0","data":data19,"skills":["极 · 神剑术 (流星落)"],"weapon":["巨剑"]},
+ {"type":"+dataplus1","data":data20,"skills":["极 · 神剑术 (流星落)"],"weapon":["钝器"],"ratio":1},
+ {"type":"*power1","data":data23,"skills":["极 · 神剑术 (破空斩)"]}
+ ]
+
+
+
+# 极 · 神剑术 (瞬斩)
+# swordman_male/weapon_master/d8ff976e2aaa4720272a5175d1eb9126
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/d8ff976e2aaa4720272a5175d1eb9126
+class Skill32(ActiveSkill):
+ """
+ 使用神剑术专用的飞剑斩击前方的敌人。\n
+ 被飞剑击中的敌人受到剑气的影响, 会受到额外的剑气伤害。
+ """
+ name = "极 · 神剑术 (瞬斩)"
+ learnLv = 80
+ masterLv = 40
+ maxLv = 50
+ position = 5
+ rangeLv = 2
+ cube = 5
+ cd = 50
+ mp = [800, 6000]
+ uuid = "d8ff976e2aaa4720272a5175d1eb9126"
+ hasVP = True
+ hasUP = True
+ vps = get_data(f'{prefix}/{uuid}', "vps") # noqa: E501
+
+ # 驭剑术攻击力 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 1
+ # 剑气打击攻击力 : {value1}% X {value2}
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 5
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ # 剑气打击最后一击攻击力 : {value3}%
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ hit3 = 1
+ # [范围信息]
+ # 范围比率 : {value4}%
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+
+ def vp_1(self):
+ """
+ [极 · 神剑术 (瞬斩)]\n
+ 拔剑斩击准备时间 -60%\n
+ 拔剑斩击命中时, 可强制中断施放后僵直并施放转职技能\n
+ - 强制中断施放后僵直时, 角色会转换方向并施放技能
+ """
+ ...
+
+ def vp_2(self):
+ """
+ [极 · 神剑术 (瞬斩)]\n
+ 可以在175px以下的空中施放\n
+ 拔剑斩击范围增加\n
+ - 前进距离 +60%\n
+ - Y轴攻击范围 +60%\n
+ 删除拔剑斩击攻击及剑气多段攻击\n
+ - 总攻击力相同
+ """
+ ...
+
+# 万剑归宗
+# swordman_male/weapon_master/0f638da961acf7958ac6070b7aaed013
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/0f638da961acf7958ac6070b7aaed013
+class Skill33(ActiveSkill):
+ """
+ 只有登顶剑神之境, 才可施展的最高级剑术。 在特定条件下, 可随心所欲地操纵武器攻击敌人。\n
+ 施放[万剑归宗]时, 角色进入无敌状态, 召唤的[万剑归宗]会持续一段时间。\n
+ [万剑归宗]持续期间, 基本攻击和转职技能可发动[穿云刺]。 再次按技能键或持续时间结束时, 可追击并强制控制最强的敌人, 发动最后一击。
+ """
+ name = "万剑归宗"
+ learnLv = 85
+ masterLv = 40
+ maxLv = 50
+ position = 4
+ rangeLv = 5
+ cube = 10
+ cd = 180
+ mp = [2500, 5000]
+ uuid = "0f638da961acf7958ac6070b7aaed013"
+ hasVP = False
+ hasUP = False
+
+ # 飞剑持续时间 : {value0}秒
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ # [穿云刺]攻击力 : {value1}%
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 1
+ # 最后多段攻击力 : {value2}% X {value3}
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ hit2 = 14
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ hit3 = 2
+ # 最后爆炸攻击力 : {value4}% X {value5}
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+ data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
+ # - [穿云刺]落剑数 -
+ # 基本攻击、 前冲攻击、 跳跃攻击、 [上挑]、 [银光落刃]、 [三段刃]、 [逆转反击] : 1把
+ # [流心 : 刺]、 [流心 : 跃]、 [流心 : 升]、 [破军升龙击]、 [拔刀斩] : 2把
+ # [猛龙断空斩]、 [破军斩龙击]、 [幻影剑舞]、 [极 · 神剑术 (流星落)]、 [破空拔刀斩] : 3把
+ # [极 · 神剑术 (破空斩)]、 [极 · 神剑术 (瞬斩)]、 [极 · 神剑术 (无形斩)] : 4把
+ # [极 · 鬼剑术 (暴风式)] : 12把
+ # [万剑极诣·开天斩] : 16把
+
+ mode = ["终结","穿云剑"]
+
+ def setMode(self,mode=None):
+ if mode == "终结":
+ self.hit1 = 0
+ if mode == "穿云剑":
+ self.hit2 = self.hit3 = 0
+
+# 无形剑意
+# swordman_male/weapon_master/7ec521d063d2190e1fcc5bd229af9bcf
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/7ec521d063d2190e1fcc5bd229af9bcf
+class Skill34(PassiveSkill):
+ """
+ 剑意进一步强化, 增加基本攻击力和转职技能攻击力。 不同类型的武器分别对[流心 : 刺]、 [流心 : 跃]、 [流心 : 升]其中2个技能附加特殊效果。 (不同类型的武器分别对流心技能产生的特殊效果不增加技能攻击力)\n
+ [不同类型武器的特殊附加效果]\n
+ 短剑 : [流心 : 刺] - 发动无形剑-短剑斩击\n
+ 短剑 : [流心 : 跃] : 发动无形剑-短剑斩击\n
+ 太刀 : [流心 : 跃] - 发动无形剑-太刀连续斩击\n
+ 太刀 : [流心 : 升] - 发动无形剑-太刀连续斩击\n
+ [流心 : 跃] - 用无形剑-光剑发动强化攻击\n
+ 光剑 : [流心 : 升] - 发动无形剑-光剑斩击\n
+ 巨剑 : [流心 : 刺] - 用无形剑-巨剑发动强化攻击; 追加下斩时生成旋风\n
+ [流心 : 升] - 用无形剑-巨剑发动强化攻击\n
+ 钝器 : [流心 : 刺] - 发动无形剑-钝器下锤\n
+ 钝器 : [流心 : 跃] - 产生无形剑-钝器下锤
+ """
+ name = "无形剑意"
+ learnLv = 95
+ masterLv = 40
+ maxLv = 50
+ position = 5
+ rangeLv = 3
+ uuid = "7ec521d063d2190e1fcc5bd229af9bcf"
+ hasVP = False
+ hasUP = False
+
+ # 基本攻击力和转职技能攻击力增加率 (不同类型的武器分别对流心技能产生的特殊效果不增加技能攻击力) : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ # [不同类型武器的特殊附加效果]
+ # (各附加效果的攻击力为[流心 : 刺]、 [流心 : 跃]、 [流心 : 升]中施放技能的基础攻击力的一定比例)
+ # 短剑 : [流心 : 刺] - 无形剑斩击攻击力 : {value1}%
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ # 短剑 : [流心 : 刺] - 空中施放时无形剑连续斩击攻击力 : {value2}% X {value3}
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ # 短剑 : [流心 : 跃] - 无形剑斩击攻击力 : {value4}%
+ data4 = get_data(f'{prefix}/{uuid}', 4, lambda x = None: x)
+ # 太刀 : [流心 : 跃] - 无形剑连续斩击攻击力 : {value5}% X {value6}
+ data5 = get_data(f'{prefix}/{uuid}', 5, lambda x = None: x)
+ data6 = get_data(f'{prefix}/{uuid}', 6, lambda x = None: x)
+ # 太刀 : [流心 : 升] - 无形剑连续斩击攻击力 : {value7}% X {value8}
+ data7 = get_data(f'{prefix}/{uuid}', 7, lambda x = None: x)
+ data8 = get_data(f'{prefix}/{uuid}', 8, lambda x = None: x)
+ # 光剑 : [流心 : 跃] - 无形剑强化攻击力 : {value9}%
+ data9 = get_data(f'{prefix}/{uuid}', 9, lambda x = None: x)
+ # 光剑 : [流心 : 升] - 无形剑斩击攻击力 : {value10}%
+ data10 = get_data(f'{prefix}/{uuid}', 10, lambda x = None: x)
+ # 巨剑 : [流心 : 刺] - 攻击力 : {value11}%
+ data11 = get_data(f'{prefix}/{uuid}', 11, lambda x = None: x)
+ # 巨剑 : [流心 : 刺] - 追加下斩攻击力 : {value12}%
+ data12 = get_data(f'{prefix}/{uuid}', 12, lambda x = None: x)
+ # 巨剑 : [流心 : 刺] - 旋风攻击力比率 : {value13}% X {value14}
+ data13 = get_data(f'{prefix}/{uuid}', 13, lambda x = None: x)
+ data14 = get_data(f'{prefix}/{uuid}', 14, lambda x = None: x)
+ # 巨剑 : [流心 : 刺] - 空中施放时攻击力 : {value15}%
+ data15 = get_data(f'{prefix}/{uuid}', 15, lambda x = None: x)
+ # 巨剑 : [流心 : 升] - 无形剑强化攻击力 : {value16}%
+ data16 = get_data(f'{prefix}/{uuid}', 16, lambda x = None: x)
+ # 钝器 : [流心 : 刺] - 无形剑下锤攻击力 : {value17}%
+ data17 = get_data(f'{prefix}/{uuid}', 17, lambda x = None: x)
+ # 钝器 : [流心 : 跃] - 无形剑下锤攻击力 : {value18}%
+ data18 = get_data(f'{prefix}/{uuid}', 18, lambda x = None: x)
+
+ # 对流系技能存在技能形态变动,但是实际加成和其他技能一致,这里简单化处理
+ associate = [{"type":"*skillRation","data":data0}]
+
+# 极 · 神剑术 (无形斩)
+# swordman_male/weapon_master/0113c8b1306ca76d208f83f2d093dd62
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/0113c8b1306ca76d208f83f2d093dd62
+class Skill35(ActiveSkill):
+ """
+ 拔剑斩击的同时乱舞无形剑; 无形剑可在连续斩击后引发爆炸。\n
+ 被拔剑斩击命中的敌人离开无形剑斩击区域时, 无形剑会对该敌人发动追击。
+ """
+ name = "极 · 神剑术 (无形斩)"
+ learnLv = 95
+ masterLv = 40
+ maxLv = 50
+ position = 7
+ rangeLv = 2
+ cube = 7
+ cd = 60
+ mp = [960, 7200]
+ uuid = "0113c8b1306ca76d208f83f2d093dd62"
+ hasVP = False
+ hasUP = False
+
+ # 剑魂斩击攻击力 : {value0}%
+ data0 = get_data(f'{prefix}/{uuid}', 0, lambda x = None: x)
+ hit0 = 1
+ # 无形剑斩击攻击力 : {value1}% X {value2}
+ data1 = get_data(f'{prefix}/{uuid}', 1, lambda x = None: x)
+ hit1 = 13
+ data2 = get_data(f'{prefix}/{uuid}', 2, lambda x = None: x)
+ # 无形剑爆炸攻击力 : {value3}%
+ data3 = get_data(f'{prefix}/{uuid}', 3, lambda x = None: x)
+ hit3 = 1
+
+
+# 万剑极诣·开天斩
+# swordman_male/weapon_master/8b08f9504167a9c0f3a1d29d71b7943e
+# 41f1cdc2ff58bb5fdc287be0db2a8df3/8b08f9504167a9c0f3a1d29d71b7943e
+class Skill36(ActiveSkill):
+ """
+ 将无形剑变换为五种武器, 发动连续攻击。\n
+ 使用钝器下劈, 再用巨剑发动强力斩击。 然后跳起使用短剑和太刀释放出剑气, 落地后发动多次斩击, 最后集中所有力量凝聚出光剑, 发动终结攻击。\n
+ [三次觉醒技能]\n
+ 选择[极 · 鬼剑术 (暴风式)]使用三次觉醒技能时, 与[极 · 鬼剑术 (暴风式)]共享冷却时间。 若[极 · 鬼剑术 (暴风式)]在冷却中, 则无法使用三次觉醒技能。\n
+ 选择[万剑归宗]使用三次觉醒技能时, 可以用三次觉醒技能代替[万剑归宗]的终结攻击。 三次觉醒技能在冷却中或[万剑归宗]召唤未激活的状态下, 无法使用三次觉醒技能。
+ """
+ name = "万剑极诣·开天斩"
+ learnLv = 100
+ masterLv = 40
+ maxLv = 50
+ position = 5
+ rangeLv = 5
+ cube = 15
+ cd = 290
+ mp = [4028, 8056]
+ uuid = "8b08f9504167a9c0f3a1d29d71b7943e"
+ hasVP = False
+ hasUP = False
+
+ data0 = [0, 68275, 84108, 99940, 115772, 131603, 147435, 163267, 179099, 194930, 210763, 226594, 242427, 258257, 274089, 289923, 305755, 321587, 337420, 353251, 369081, 384914, 400746, 416579, 432409, 448243, 464075, 479905, 495737, 511570, 527401, 543233, 559066, 574899, 590726, 606560, 622390, 638223, 654056, 669888, 685719, 701552, 717384, 733215, 749049, 764879, 780711, 796542, 812376, 828208, 844038]# noqa: E501
+ hit0 = 1 #TODO
+
+ data1 = [0, 89283, 109985, 130689, 151394, 172097, 192799, 213502, 234207, 254909, 275612, 296315, 317019, 337723, 358427, 379129, 399832, 420538, 441242, 461945, 482645, 503350, 524055, 544757, 565461, 586164, 606865, 627569, 648274, 668975, 689680, 710382, 731087, 751789, 772490, 793197, 813899, 834602, 855308, 876009, 896709, 917416, 938120, 958821, 979526, 1000230, 1020932, 1041636, 1062340, 1083042, 1103746]# noqa: E501
+ hit1 = 1 #TODO
+
+ data2 = [0, 12253, 15095, 17937, 20777, 23621, 26461, 29304, 32145, 34989, 37830, 40669, 43512, 46354, 49196, 52037, 54879, 57720, 60562, 63404, 66243, 69085, 71929, 74772, 77610, 80454, 83295, 86136, 88976, 91821, 94659, 97501, 100342, 103183, 106026, 108869, 111712, 114553, 117395, 120235, 123075, 125918, 128760, 131602, 134444, 137285, 140127, 142969, 145809, 148651, 151493]# noqa: E501
+ hit2 = 6
+
+ data4 = [0, 16805, 20704, 24598, 28497, 32394, 36291, 40189, 44085, 47983, 51880, 55775, 59674, 63570, 67466, 71365, 75262, 79160, 83057, 86954, 90850, 94746, 98644, 102540, 106439, 110336, 114234, 118131, 122030, 125923, 129822, 133719, 137613, 141514, 145409, 149303, 153204, 157100, 160996, 164896, 168792, 172689, 176586, 180484, 184379, 188278, 192174, 196071, 199968, 203866, 207763]# noqa: E501
+ hit4 = 5
+
+ data6 = [0, 210078, 258790, 307505, 356218, 404933, 453646, 502360, 551075, 599788, 648503, 697216, 745931, 794644, 843358, 892070, 940786, 989499, 1038213, 1086924, 1135639, 1184353, 1233067, 1281781, 1330496, 1379208, 1427923, 1476636, 1525351, 1574064, 1622778, 1671490, 1720205, 1768920, 1817632, 1866348, 1915061, 1963772, 2012490, 2061203, 2109915, 2158630, 2207344, 2256058, 2304772, 2353484, 2402197, 2450911, 2499625, 2548339, 2597053]# noqa: E501
+ hit6 = 1 #TODO
+
+class classChange(Character):
+ def __init__(self, equVersion):
+
+ self.name = 'weapon_master'
+ self.nameCN = '极诣·剑魂'
+ self.role = 'swordman_male'
+ self.角色 = '鬼剑士(男)'
+ self.职业 = '剑魂'
+ self.jobId = '41f1cdc2ff58bb5fdc287be0db2a8df3'
+ self.jobGrowId = '37495b941da3b1661bc900e68ef3b2c6'
+
+ self.武器选项 = ["光剑","太刀", "钝器", "巨剑", "短剑"]
+ self.输出类型选项 = ["物理百分比"]
+ self.输出类型 = "物理百分比"
+ self.防具精通属性 = ["力量"]
+ self.防具类型 = "轻甲"
+ self.buff = 1.86
+
+ super().__init__(equVersion, __name__)
+
+ def AddSkillLv(self, min: int, max: int, lv: int, type=-1, exceptSkills:list[str]=[]) -> None:
+ """
+ 增加技能等级
+ type: -1 全部, 0 被动, 1 主动
+ """
+ for skill in self.skills:
+ # 四个武器精通不享受技能范围等级加成
+ if min <= skill.learnLv <= max and skill.name not in ["太刀精通", "巨剑精通", "短剑精通", "钝器精通", "光剑精通"] + exceptSkills:
+ skillType = "all" if type == -1 else ("active" if type == 1 else "passive")
+ if (skillType == "all" or skill.type == skillType) and skill.lv > 0:
+ skill.lv += lv
diff --git a/backend/openapi b/backend/openapi
index f861c337..c1b990ea 160000
--- a/backend/openapi
+++ b/backend/openapi
@@ -1 +1 @@
-Subproject commit f861c337ffbb8d5dc57f0fe0bc8fa313d58e0dfb
+Subproject commit c1b990ea5fd0ad82dcac7037158f9cdf5ad8ee5a