diff --git a/backend/core/basic/enum/skill.py b/backend/core/basic/enum/skill.py index 112ff55f..aff2d57d 100644 --- a/backend/core/basic/enum/skill.py +++ b/backend/core/basic/enum/skill.py @@ -12,4 +12,5 @@ class EnumDamageType(Enum): """灼烧伤害""" POISON = 'poison' """中毒伤害""" - + ENCHANTPOISON = 'enchantpoison' + """涂毒伤害""" diff --git a/backend/core/basic/skill.py b/backend/core/basic/skill.py index f5775b9f..e3be96ce 100644 --- a/backend/core/basic/skill.py +++ b/backend/core/basic/skill.py @@ -38,7 +38,7 @@ def _get_skill_data_suffixes(skill_class: type) -> tuple[str, ...]: @cache def _get_skill_damage_suffixes(skill_class: type) -> tuple[str, ...]: - return tuple(key.replace('data', '') for key in dir(skill_class) if key.startswith('data') and not key.startswith('dataplus')) + return tuple(key.replace('data', '') for key in dir(skill_class) if key.startswith('data') and not key.startswith('dataplus') and not key.startswith('dataType')) @cache diff --git a/backend/core/character/GF/fighter_female/brawler_female.py b/backend/core/character/GF/fighter_female/brawler_female.py index 6a4c69c0..806a8ddb 100644 --- a/backend/core/character/GF/fighter_female/brawler_female.py +++ b/backend/core/character/GF/fighter_female/brawler_female.py @@ -1,19 +1,10 @@ #a7a059ebe9e6054c0644b40ef316d6e9 -from core.basic.skill import ( - PassiveSkill, - ActiveSkill, - get_data, - _get_skill_damage_suffixes, - _get_skill_dataplus_suffixes, -) +from core.basic.skill import PassiveSkill, ActiveSkill, get_data, _get_skill_damage_suffixes, _get_skill_dataplus_suffixes from core.basic.character import Character from core.basic.enum.skill import EnumDamageType prefix = "fighter_female/brawler_female/cn/skillDetail" -class EnumDamageType(EnumDamageType): - ENCHANTPOISON = 'enchantpoison' - class ActiveSkill(ActiveSkill): enchantPoisonRatio = 1.0 """涂毒伤害系数""" @@ -78,12 +69,12 @@ class Skill1(PassiveSkill): 通过对毒的修炼,减少自身受到的中毒伤害。\n """ name = "剧毒抵抗" - learnLv = None + learnLv = 15 masterLv = 1 maxLv = 1 cellPos = (7,1) position = 7 - rangeLv = None + rangeLv = 1 uuid = "03bb5314ffd41e9458d67ef924fef38f" hasVP = False hasUP = False @@ -510,10 +501,10 @@ class Skill15(ActiveSkill): # 沙尘命中时中毒攻击力 : {value5}% data5 = get_data(f'{prefix}/{uuid}', 5) hit5 = 2 + dataType5 = EnumDamageType.ENCHANTPOISON # [范围信息] # 沙尘大小比率 : {value6}% data6 = get_data(f'{prefix}/{uuid}', 6) - dataType5 = EnumDamageType.ENCHANTPOISON # 鹰踏 # fighter_female/brawler_female/78bd107acd474518b606be1e4fd38239 @@ -700,18 +691,15 @@ class Skill21(ActiveSkill): # 摆拳攻击力 : {value0}% data0 = get_data(f'{prefix}/{uuid}', 0) hit0 = 1 - power0 = 1.6 #TODO:CHECK # 爆炸攻击力 : {value1}% data1 = get_data(f'{prefix}/{uuid}', 1) hit1 = 1 - power1 = 1.6 #TODO:CHECK # 每个异常状态附加攻击力 : {value2}% data2 = get_data(f'{prefix}/{uuid}', 2) # [灼伤效果] # 灼伤攻击力 : {value3}% data3 = get_data(f'{prefix}/{uuid}', 3) hit3 = 1 - power3 = 1.6 #TODO:CHECK # 灼伤几率 : {value4}% data4 = get_data(f'{prefix}/{uuid}', 4) # 灼伤持续时间 : {value5}秒 @@ -720,61 +708,59 @@ class Skill21(ActiveSkill): # 摆拳攻击时中毒攻击力 : {value6}% data6 = get_data(f'{prefix}/{uuid}', 6) hit6 = 1 - power6 = 1.6 #TODO:CHECK dataType6 = EnumDamageType.ENCHANTPOISON # 爆炸攻击时中毒攻击力 : {value7}% data7 = get_data(f'{prefix}/{uuid}', 7) hit7 = 1 - power7 = 1.6 #TODO:CHECK dataType7 = EnumDamageType.ENCHANTPOISON # [范围信息] # 爆炸范围比率 : {value8}% data8 = get_data(f'{prefix}/{uuid}', 8) # 每个异常增伤20%,最高60%增伤 - skillDamage = 1.0 + skillDamage = 1.6 # 念气波 # fighter_female/brawler_female/01c3a2fb793d293a25ed8dc7a0d70c1a # a7a059ebe9e6054c0644b40ef316d6e9/01c3a2fb793d293a25ed8dc7a0d70c1a -class Skill22(ActiveSkill): - """ - 使念气实体化后向前方敌人发射。\n - 念气波对周围敌人具有诱导性,在命中时爆炸,对附近的敌人造成光属性伤害并进入感电状态。\n - 转职为气功师后,可以强制中断基本攻击动作施放,并大幅度减少冷却时间。\n - """ - name = "念气波" - learnLv = 15 - masterLv = 60 - maxLv = 70 - cellPos = (10,4) - position = 10 - rangeLv = 2 - cd = 1 - mp = [15, 154] - uuid = "01c3a2fb793d293a25ed8dc7a0d70c1a" - hasVP = False - hasUP = True - custom = get_data(f'{prefix}/{uuid}', "custom") # noqa: E501 +# class Skill22(ActiveSkill): +# """ +# 使念气实体化后向前方敌人发射。\n +# 念气波对周围敌人具有诱导性,在命中时爆炸,对附近的敌人造成光属性伤害并进入感电状态。\n +# 转职为气功师后,可以强制中断基本攻击动作施放,并大幅度减少冷却时间。\n +# """ +# name = "念气波" +# learnLv = 15 +# masterLv = 60 +# maxLv = 70 +# cellPos = (10,4) +# position = 10 +# rangeLv = 2 +# cd = 1 +# mp = [15, 154] +# uuid = "01c3a2fb793d293a25ed8dc7a0d70c1a" +# hasVP = False +# hasUP = True +# custom = get_data(f'{prefix}/{uuid}', "custom") # noqa: E501 - # 攻击力 : {value0}% - data0 = get_data(f'{prefix}/{uuid}', 0) - # 诱导性比率 : {value1}% - data1 = get_data(f'{prefix}/{uuid}', 1) - # 感电几率 : {value2}% - data2 = get_data(f'{prefix}/{uuid}', 2) - # 感电持续时间 : {value3}秒 - data3 = get_data(f'{prefix}/{uuid}', 3) - # 感电攻击力 : {value4}% - data4 = get_data(f'{prefix}/{uuid}', 4) - # [转职为气功师后] - # 念气波冷却时间减少率 : {value5}% - data5 = get_data(f'{prefix}/{uuid}', 5) - # [范围信息] - # 念气波大小比率 : {value6}% - data6 = get_data(f'{prefix}/{uuid}', 6) - # 射程距离 : {value7}px - data7 = get_data(f'{prefix}/{uuid}', 7) +# # 攻击力 : {value0}% +# data0 = get_data(f'{prefix}/{uuid}', 0) +# # 诱导性比率 : {value1}% +# data1 = get_data(f'{prefix}/{uuid}', 1) +# # 感电几率 : {value2}% +# data2 = get_data(f'{prefix}/{uuid}', 2) +# # 感电持续时间 : {value3}秒 +# data3 = get_data(f'{prefix}/{uuid}', 3) +# # 感电攻击力 : {value4}% +# data4 = get_data(f'{prefix}/{uuid}', 4) +# # [转职为气功师后] +# # 念气波冷却时间减少率 : {value5}% +# data5 = get_data(f'{prefix}/{uuid}', 5) +# # [范围信息] +# # 念气波大小比率 : {value6}% +# data6 = get_data(f'{prefix}/{uuid}', 6) +# # 射程距离 : {value7}px +# data7 = get_data(f'{prefix}/{uuid}', 7) # 涂毒 # fighter_female/brawler_female/762c4e6d030eaf0abbfe1fec2b298574 @@ -981,8 +967,7 @@ class Skill27(PassiveSkill): maxLv = 1 cellPos = (9,5) position = 9 - rangeLv = None - cd = [] + rangeLv = 1 uuid = "8572675ec6a1f50b6eff6a867376c2de" hasVP = False hasUP = False @@ -992,24 +977,24 @@ class Skill27(PassiveSkill): # 暴击 # fighter_female/brawler_female/fc1262c19f3d0477ee8eda47b8db8696 # a7a059ebe9e6054c0644b40ef316d6e9/fc1262c19f3d0477ee8eda47b8db8696 -class Skill28(PassiveSkill): - """ - 集中精神,提升物理/魔法暴击率。\n - """ - name = "暴击" - learnLv = 20 - masterLv = 10 - maxLv = 20 - cellPos = (5,0) - position = 5 - rangeLv = 3 - uuid = "fc1262c19f3d0477ee8eda47b8db8696" - hasVP = False - hasUP = False - custom = get_data(f'{prefix}/{uuid}', "custom") # noqa: E501 +# class Skill28(PassiveSkill): +# """ +# 集中精神,提升物理/魔法暴击率。\n +# """ +# name = "暴击" +# learnLv = 20 +# masterLv = 10 +# maxLv = 20 +# cellPos = (5,0) +# position = 5 +# rangeLv = 3 +# uuid = "fc1262c19f3d0477ee8eda47b8db8696" +# hasVP = False +# hasUP = False +# custom = get_data(f'{prefix}/{uuid}', "custom") # noqa: E501 - # 物理/魔法暴击率增加 : {value0}% - data0 = get_data(f'{prefix}/{uuid}', 0) +# # 物理/魔法暴击率增加 : {value0}% +# data0 = get_data(f'{prefix}/{uuid}', 0) # 爪精通 # fighter_female/brawler_female/e4c354a89c337310aeb7041d5e742828 @@ -1048,6 +1033,8 @@ class Skill29(PassiveSkill): # 出血持续时间 : {value6}秒 data6 = get_data(f'{prefix}/{uuid}', 6) + associate = [{"data":data0,"type":"$*PAtkP"},{"data":data1,"type":"$*PAtkM"}] + # 砖袭 # fighter_female/brawler_female/bc11d28c04e01923a093d65752c55516 # a7a059ebe9e6054c0644b40ef316d6e9/bc11d28c04e01923a093d65752c55516 @@ -1128,25 +1115,22 @@ class Skill31(ActiveSkill): data0 = get_data(f'{prefix}/{uuid}', 0) # 连击攻击力 : {value1}% data1 = get_data(f'{prefix}/{uuid}', 1) - hit1 = 0 # 最后一击攻击力 : {value2}% data2 = get_data(f'{prefix}/{uuid}', 2) - hit2 = 1 - power2 = 29.728 #TODO:CHECK # 抓取失败时,冲击波攻击力 : {value3}% data3 = get_data(f'{prefix}/{uuid}', 3) + hit3 = 1 # [发动涂毒时附加中毒攻击力] # 连击时,中毒攻击力 : {value4}% data4 = get_data(f'{prefix}/{uuid}', 4) - hit4 = 0 dataType4 = EnumDamageType.ENCHANTPOISON # 最后一击时,中毒攻击力 : {value5}% data5 = get_data(f'{prefix}/{uuid}', 5) - hit5 = 1 - power5 = 29.728 #TODO:CHECK dataType5 = EnumDamageType.ENCHANTPOISON # 抓取失败时,冲击波中毒攻击力 : {value6}% data6 = get_data(f'{prefix}/{uuid}', 6) + hit6 = 1 + dataType6 = EnumDamageType.ENCHANTPOISON # [范围信息] # 冲击波范围比率 : {value7}% data7 = get_data(f'{prefix}/{uuid}', 7) @@ -1176,6 +1160,7 @@ class Skill32(ActiveSkill): # 回旋踢攻击力 : {value0}% data0 = get_data(f'{prefix}/{uuid}', 0) + hit0 = 4 # 攻击次数 : {value1}次 data1 = get_data(f'{prefix}/{uuid}', 1) @@ -1220,6 +1205,8 @@ class Skill33(ActiveSkill): # 控制型异常状态抗性减少范围 : {value5}px data5 = get_data(f'{prefix}/{uuid}', 5) + associate = [{"data":data1}] + # 天罗地网 # fighter_female/brawler_female/d0cdaca82892e54097f22a1f60817048 # a7a059ebe9e6054c0644b40ef316d6e9/d0cdaca82892e54097f22a1f60817048 @@ -1257,13 +1244,13 @@ class Skill34(ActiveSkill): # [束缚效果] # 束缚几率 : {value4}% data4 = get_data(f'{prefix}/{uuid}', 4) - hit4 = 1 - dataType4 = EnumDamageType.ENCHANTPOISON # 束缚持续时间 : {value5}秒 data5 = get_data(f'{prefix}/{uuid}', 5) # [发动涂毒时附加中毒攻击力] # 罗网攻击时中毒攻击力 : {value6}% data6 = get_data(f'{prefix}/{uuid}', 6) + hit6 = 1 + dataType6 = EnumDamageType.ENCHANTPOISON def vp_1(self): """ @@ -1278,8 +1265,8 @@ class Skill34(ActiveSkill): 基本冷却时间变更为5.5秒\n - 总攻击力 -50%\n """ - self.power0 *= 0.5 - self.power4 *= 0.5 + self.cd = 5.5 + self.skillRation *= 0.5 def vp_2(self): """ @@ -1318,7 +1305,6 @@ class Skill35(ActiveSkill): # 踢击攻击力 : {value0}% data0 = get_data(f'{prefix}/{uuid}', 0) hit0 = 1 - power0 = 1.2 #TODO:CHECK # 对无法抓取的敌人攻击力增加率 : {value1}% data1 = get_data(f'{prefix}/{uuid}', 1) # [失明效果] @@ -1344,11 +1330,7 @@ class Skill35(ActiveSkill): def setMode(self, mode): if mode == '不可抓取': - self.power0 = 1.2 #TODO:CHECK - self.power6 = 1.2 #TODO:CHECK - elif mode == '可抓取': - self.power0 = 1.0 #TODO:CHECK - self.power6 = 1.0 #TODO:CHECK + self.skillDamage *= 1.2 def vp_1(self): """ @@ -1366,8 +1348,7 @@ class Skill35(ActiveSkill): 攻击范围 +50%\n """ self.cd = 40 - self.power0 *= 2 - self.power6 *= 2 + self.skillRation *= 1.5 # 狂 · 霸王拳 # fighter_female/brawler_female/b3659936a9a74c4ed6f7faf07cca1f9e @@ -1418,29 +1399,8 @@ class Skill36(PassiveSkill): data10 = get_data(f'{prefix}/{uuid}', 10) data11 = get_data(f'{prefix}/{uuid}', 11) - def effect(self, old, new): - super().effect(old, new) - skill = self.char.GetSkillByName('伏虎霸王拳') - if skill is None: - return - if getattr(self, 'vp', 0) == 2: - skill.hit1 = 6 - skill.power1 = 4.672 #TODO:CHECK - skill.hit2 = 1 - skill.power2 = 2.336 #TODO:CHECK - skill.hit4 = 6 - skill.power4 = 4.672 #TODO:CHECK - skill.hit5 = 1 - skill.power5 = 2.336 #TODO:CHECK - else: - skill.hit1 = 0 - skill.power1 = 1 #TODO:CHECK - skill.hit2 = 1 - skill.power2 = 29.728 #TODO:CHECK - skill.hit4 = 0 - skill.power4 = 1 #TODO:CHECK - skill.hit5 = 1 - skill.power5 = 29.728 #TODO:CHECK + + associate = [{'data':data2, 'type': '*power3', 'skills': ['伏虎霸王拳']},{'data': [i * 3 for i in data3], 'skills': ['伏虎霸王拳']},{'data':data9, 'type': '*power6', 'skills': ['伏虎霸王拳']}] def vp_1(self): """ @@ -1464,6 +1424,7 @@ class Skill36(PassiveSkill): - [毒影针] : 中毒/出血\n - [砖袭] : 眩晕\n """ + # TODO : 每次连击攻击均合算[万毒噬心诀]基本攻击第1击的攻击力 ... # 毒雷引爆 @@ -1521,9 +1482,9 @@ class Skill37(ActiveSkill): - 单次攻击力 -50%\n 毒气柱爆炸范围 +40%\n """ - self.power1 *= 0.5 - self.power2 *= 0.5 - self.power5 *= 0.5 + self.cd = 12 + self.skillRation *= 0.5 + ... def vp_2(self): """ @@ -1563,7 +1524,7 @@ class Skill38(ActiveSkill): # 生活用品攻击力 : {value0}% data0 = get_data(f'{prefix}/{uuid}', 0) - hit0 = 50 + hit0 = 25 # 生活用品多段攻击次数 : {value1}次 data1 = get_data(f'{prefix}/{uuid}', 1) # 炸药爆炸攻击力 : {value2}% @@ -1571,24 +1532,24 @@ class Skill38(ActiveSkill): hit2 = 1 # 压制力 (4人队伍) : {value3}秒 ({value4}秒) data3 = get_data(f'{prefix}/{uuid}', 3) - hit3 = 1 data4 = get_data(f'{prefix}/{uuid}', 4) # [灼伤效果] # 灼伤攻击力 : {value5}% data5 = get_data(f'{prefix}/{uuid}', 5) + hit5 = 1 # 灼伤几率 : {value6}% data6 = get_data(f'{prefix}/{uuid}', 6) - hit6 = 50 - dataType6 = EnumDamageType.ENCHANTPOISON # 灼伤持续时间 : {value7}秒 data7 = get_data(f'{prefix}/{uuid}', 7) - hit7 = 1 - dataType7 = EnumDamageType.ENCHANTPOISON # - [发动涂毒时附加中毒攻击力] - # 生活用品攻击时中毒攻击力 : {value8}% data8 = get_data(f'{prefix}/{uuid}', 8) + hit8 = 25 + dataType8 = EnumDamageType.ENCHANTPOISON # 炸药爆炸攻击时中毒攻击力 : {value9}% data9 = get_data(f'{prefix}/{uuid}', 9) + hit9 = 1 + dataType9 = EnumDamageType.ENCHANTPOISON # [范围信息] # 生活用品大小比率 : {value10}% data10 = get_data(f'{prefix}/{uuid}', 10) @@ -1612,11 +1573,7 @@ class Skill38(ActiveSkill): 施放时进入无敌状态\n 施放时引发风暴,吸附敌人\n """ - self.power0 *= 0.5 - self.power2 *= 0.5 - self.power3 *= 0.5 - self.power6 *= 0.5 - self.power7 *= 0.5 + ... # 猛毒之血 # fighter_female/brawler_female/6e33d47e6622ce03b6defdd912140270 @@ -1656,6 +1613,8 @@ class Skill39(PassiveSkill): # 中毒生成持续时间 : {value6}秒 data6 = get_data(f'{prefix}/{uuid}', 6) + associate = [{'data':data0}] + # 死亡毒雾 # fighter_female/brawler_female/ca75c965f20a150f99f54155a37400df # a7a059ebe9e6054c0644b40ef316d6e9/ca75c965f20a150f99f54155a37400df @@ -1688,7 +1647,7 @@ class Skill40(ActiveSkill): # 毒雾中毒攻击力 : {value1}% data1 = get_data(f'{prefix}/{uuid}', 1) hit1 = 33 - power1 = 0.125 #TODO:CHECK + power1 = 1/3 # 毒雾中毒持续时间 : {value2}秒 data2 = get_data(f'{prefix}/{uuid}', 2) # 毒雾爆炸攻击力 : {value3}% @@ -1739,18 +1698,15 @@ class Skill41(ActiveSkill): # 摆拳攻击力 : {value0}% data0 = get_data(f'{prefix}/{uuid}', 0) hit0 = 1 - power0 = 1.6 #TODO:CHECK # 爆炸攻击力 : {value1}% data1 = get_data(f'{prefix}/{uuid}', 1) hit1 = 1 - power1 = 1.6 #TODO:CHECK # 每个异常状态攻击力增加率 : {value2}% data2 = get_data(f'{prefix}/{uuid}', 2) # [中毒效果] # 中毒攻击力 : {value3}% data3 = get_data(f'{prefix}/{uuid}', 3) hit3 = 1 - power3 = 1.6 #TODO:CHECK # 中毒几率 : {value4}% data4 = get_data(f'{prefix}/{uuid}', 4) # 中毒持续时间 : {value5}秒 @@ -1768,17 +1724,17 @@ class Skill41(ActiveSkill): # 摆拳攻击时中毒攻击力 : {value10}% data10 = get_data(f'{prefix}/{uuid}', 10) hit10 = 1 - power10 = 1.6 #TODO:CHECK dataType10 = EnumDamageType.ENCHANTPOISON # 爆炸攻击时中毒攻击力 : {value11}% data11 = get_data(f'{prefix}/{uuid}', 11) hit11 = 1 - power11 = 1.6 #TODO:CHECK dataType11 = EnumDamageType.ENCHANTPOISON # [范围信息] # 爆炸范围比率 : {value12}% data12 = get_data(f'{prefix}/{uuid}', 12) + skillDamage = 1.6 + def vp_1(self): """ [猛毒擒月炎]\n @@ -1840,20 +1796,20 @@ class Skill42(ActiveSkill): data4 = get_data(f'{prefix}/{uuid}', 4) # 压制力 (4人队伍) : {value5}秒 ({value6}秒) data5 = get_data(f'{prefix}/{uuid}', 5) - hit5 = 1 - dataType5 = EnumDamageType.ENCHANTPOISON data6 = get_data(f'{prefix}/{uuid}', 6) - hit6 = 1 - dataType6 = EnumDamageType.ENCHANTPOISON # [发动涂毒时附加中毒攻击力] # 冲击波中毒攻击力 : {value7}% data7 = get_data(f'{prefix}/{uuid}', 7) - hit7 = 5 + hit7 = 1 dataType7 = EnumDamageType.ENCHANTPOISON # 砖块攻击时中毒攻击力 : {value8}% data8 = get_data(f'{prefix}/{uuid}', 8) + hit8 = 1 + dataType8 = EnumDamageType.ENCHANTPOISON # 砖块爆炸时中毒攻击力 : {value9}% data9 = get_data(f'{prefix}/{uuid}', 9) + hit9 = 5 + dataType9 = EnumDamageType.ENCHANTPOISON # [范围信息] # 砖块爆炸大小比率 : {value10}% data10 = get_data(f'{prefix}/{uuid}', 10) @@ -1868,12 +1824,8 @@ class Skill42(ActiveSkill): - 每次攻击力 -50%\n 可以在空中施放\n """ - self.power0 *= 0.5 - self.power1 *= 0.5 - self.power2 *= 0.5 - self.power5 *= 0.5 - self.power6 *= 0.5 - self.power7 *= 0.5 + self.cd = 25 + self.skillRation *= 0.5 def vp_2(self): """ @@ -1917,6 +1869,8 @@ class Skill43(PassiveSkill): # 基本攻击力和技能攻击力增加率 : {value2}% data2 = get_data(f'{prefix}/{uuid}', 2) + associate = [{'data':data2}] + # 连环毒爆弹 # fighter_female/brawler_female/faf9cd66281078b51be2ee0b0f6c5530 # a7a059ebe9e6054c0644b40ef316d6e9/faf9cd66281078b51be2ee0b0f6c5530 @@ -1947,11 +1901,9 @@ class Skill44(ActiveSkill): # 踢击攻击力 : {value0}% data0 = get_data(f'{prefix}/{uuid}', 0) hit0 = 1 - power0 = 1.5 #TODO:CHECK # 毒爆弹爆炸攻击力 : {value1}% data1 = get_data(f'{prefix}/{uuid}', 1) hit1 = 1 - power1 = 1.4 #TODO:CHECK # 毒爆弹第1次转移人数上限 : {value2}个 data2 = get_data(f'{prefix}/{uuid}', 2) # 第1次转移时,攻击力减少率 : {value3}% @@ -1966,36 +1918,32 @@ class Skill44(ActiveSkill): data7 = get_data(f'{prefix}/{uuid}', 7) # 压制力 (4人队伍) : {value8}秒 ({value9}秒) data8 = get_data(f'{prefix}/{uuid}', 8) - hit8 = 1 - power8 = 1.4 #TODO:CHECK data9 = get_data(f'{prefix}/{uuid}', 9) # [中毒效果] # 中毒攻击力 : {value10}% data10 = get_data(f'{prefix}/{uuid}', 10) + hit10 = 1 # 中毒几率 : {value11}% data11 = get_data(f'{prefix}/{uuid}', 11) - hit11 = 1 - power11 = 1.4 #TODO:CHECK # 中毒持续时间 : {value12}秒 data12 = get_data(f'{prefix}/{uuid}', 12) # [灼伤效果] # 灼伤攻击力 : {value13}% data13 = get_data(f'{prefix}/{uuid}', 13) + hit13 = 1 # 灼伤几率 : {value14}% data14 = get_data(f'{prefix}/{uuid}', 14) - hit14 = 1 - power14 = 1.4 #TODO:CHECK - dataType14 = EnumDamageType.ENCHANTPOISON # 灼伤持续时间 : {value15}秒 data15 = get_data(f'{prefix}/{uuid}', 15) - hit15 = 1 - power15 = 1.4 #TODO:CHECK - dataType15 = EnumDamageType.ENCHANTPOISON # [发动涂毒时附加中毒攻击力] # 踢击时中毒攻击力 : {value16}% data16 = get_data(f'{prefix}/{uuid}', 16) + hit16 = 1 + dataType16 = EnumDamageType.ENCHANTPOISON # 毒爆弹爆炸时中毒攻击力 : {value17}% data17 = get_data(f'{prefix}/{uuid}', 17) + hit17 = 1 + dataType17 = EnumDamageType.ENCHANTPOISON # [范围信息] # 爆炸范围比率 : {value18}% data18 = get_data(f'{prefix}/{uuid}', 18) @@ -2134,6 +2082,15 @@ class Skill46(PassiveSkill): # 毒爆弹爆炸攻击时中毒攻击力变化率 : {value2}% data2 = get_data(f'{prefix}/{uuid}', 2) + associate = [ + {'data':data0,'type':'*power0', 'skills':['连环毒爆弹']}, + {'data':data1,'type':'*power1', 'skills':['连环毒爆弹']}, + {'data':data1,'type':'*power10', 'skills':['连环毒爆弹']}, + {'data':data1,'type':'*power13', 'skills':['连环毒爆弹']}, + {'data':data2,'type':'*power16', 'skills':['连环毒爆弹']}, + {'data':data2,'type':'*power17', 'skills':['连环毒爆弹']} + ] + # 万毒噬心诀 # fighter_female/brawler_female/2a3c96b88d02372505692da0a8b54743 # a7a059ebe9e6054c0644b40ef316d6e9/2a3c96b88d02372505692da0a8b54743 @@ -2213,17 +2170,14 @@ class Skill47(ActiveSkill): # 跳跃攻击攻击时中毒攻击力 : {value17}% data17 = get_data(f'{prefix}/{uuid}', 17) - mode = ['平x一轮', '第一击'] + mode = ['平x一轮'] + + associate = [{"data":data10 }] def setMode(self, mode): if mode == '平x一轮': self.hit3 = self.hit4 = self.hit5 = self.hit6 = self.hit7 = 1 self.hit11 = self.hit12 = self.hit13 = self.hit14 = self.hit15 = 1 - elif mode == '第一击': - self.hit3 = 6 - self.hit4 = self.hit5 = self.hit6 = self.hit7 = 0 - self.hit11 = 6 - self.hit12 = self.hit13 = self.hit14 = self.hit15 = 0 # 禁技 : 万毒蛇窟 # fighter_female/brawler_female/8b08f9504167a9c0f3a1d29d71b7943e @@ -2291,6 +2245,8 @@ class Skill49(PassiveSkill): # [擒月炎]攻击可抓取敌人时的控制持续时间 : {value1}秒 data1 = get_data(f'{prefix}/{uuid}', 1) + associate = [{"data":data0 }] + # 钻心毒爆 # fighter_female/brawler_female/f4a561e272cc434a4905b3aa0c0de090 # a7a059ebe9e6054c0644b40ef316d6e9/f4a561e272cc434a4905b3aa0c0de090 @@ -2430,11 +2386,11 @@ class Skill51(ActiveSkill): hit6 = 1 # 压制力 (4人队伍) : {value7}秒 ({value8}秒) data7 = get_data(f'{prefix}/{uuid}', 7) - hit7 = 1 data8 = get_data(f'{prefix}/{uuid}', 8) # [中毒效果] # 中毒攻击力 : {value9}% data9 = get_data(f'{prefix}/{uuid}', 9) + hit9 = 1 # 中毒持续时间 : {value10}秒 data10 = get_data(f'{prefix}/{uuid}', 10) # 中毒几率 : {value11}% @@ -2442,20 +2398,20 @@ class Skill51(ActiveSkill): # [发动涂毒时附加中毒攻击力] # 对可抓取敌人的膝踢攻击时中毒攻击力 : {value12}% data12 = get_data(f'{prefix}/{uuid}', 12) - hit12 = 1 - dataType12 = EnumDamageType.ENCHANTPOISON # 对可抓取敌人的下劈攻击时中毒攻击力 : {value13}% data13 = get_data(f'{prefix}/{uuid}', 13) - hit13 = 8 - dataType13 = EnumDamageType.ENCHANTPOISON # 对无法抓取敌人的下劈攻击时中毒攻击力 : {value14}% data14 = get_data(f'{prefix}/{uuid}', 14) hit14 = 1 dataType14 = EnumDamageType.ENCHANTPOISON # 毒蛇群多段攻击中毒攻击力 : {value15}% data15 = get_data(f'{prefix}/{uuid}', 15) + hit15 = 8 + dataType15 = EnumDamageType.ENCHANTPOISON # 最后一击毒龙攻击时中毒攻击力 : {value16}% data16 = get_data(f'{prefix}/{uuid}', 16) + hit16 = 1 + dataType16 = EnumDamageType.ENCHANTPOISON class classChange(Character): def __init__(self, equVersion): @@ -2468,11 +2424,11 @@ class classChange(Character): self.jobId = 'a7a059ebe9e6054c0644b40ef316d6e9' self.jobGrowId = '6d459bc74ba73ee4fe5cdc4655400193' - self.武器选项 = [] # TODO - self.输出类型选项 = [] # TODO - self.输出类型 = '' # TODO - self.防具精通属性 = [''] # TODO - self.防具类型 = '' + self.武器选项 = ['手套', '臂铠', '爪', '东方棍'] + self.输出类型选项 = ['魔法百分比', '物理百分比'] + self.输出类型 = '物理百分比' + self.防具精通属性 = ['力量', '智力'] + self.防具类型 = '重甲' # 涂毒单独处理 self.buff = 1.0 diff --git a/backend/core/character/GF/thief/shadow_dancer.py b/backend/core/character/GF/thief/shadow_dancer.py index 0e703c1e..6832db2e 100644 --- a/backend/core/character/GF/thief/shadow_dancer.py +++ b/backend/core/character/GF/thief/shadow_dancer.py @@ -1367,7 +1367,7 @@ class Skill36(ActiveSkill): # 连续斩击攻击力 : {value0}% X {value1} data0 = get_data(f'{prefix}/{uuid}', 0) - hit0 = 12 + hit0 = 21 data1 = get_data(f'{prefix}/{uuid}', 1) # 最终一击攻击力 : {value2}% data2 = get_data(f'{prefix}/{uuid}', 2) diff --git a/backend/core/character/adventure.py b/backend/core/character/adventure.py index c005f5aa..3fadb4c5 100644 --- a/backend/core/character/adventure.py +++ b/backend/core/character/adventure.py @@ -46,7 +46,7 @@ adv = [ 'children': [ {'id': 0, 'name': 'nenmaster_female', 'title': '归元·气功师', 'open': True, 'class': 'GF.fighter_female.nenmaster_female'}, {'id': 1, 'name': 'striker_female', 'title': '归元·散打', 'open': True, 'class': 'GF.fighter_female.striker_female'}, - {'id': 2, 'name': 'brawler_female', 'title': '归元·街霸', 'open': False}, + {'id': 2, 'name': 'brawler_female', 'title': '归元·街霸', 'open': True, 'class': 'GF.fighter_female.brawler_female'}, {'id': 3, 'name': 'grappler_female', 'title': '归元·柔道家', 'open': True, 'class': 'GF.fighter_female.grappler_female'}, {'name': 'sponsor', 'url': 'https://bbs.colg.cn', 'title': '', 'open': True}, ],