diff --git a/backend/core/basic/skill.py b/backend/core/basic/skill.py index 8606da63..37f5f49b 100644 --- a/backend/core/basic/skill.py +++ b/backend/core/basic/skill.py @@ -219,7 +219,7 @@ class ActiveSkill(Skill): basic.setMode(mode) basic.setVP() date = basic.getSkillData(self.lv) - cd = basic.getSkillCD() + cd = basic.getSkillCD(mode) return date * basic.skillRation , basic.skillDamage ,cd def setMode(self, mode: str): @@ -286,7 +286,7 @@ class ActiveSkill(Skill): cdr = 0.05 return 1 - cdr - def getSkillCD(self): + def getSkillCD(self,mode=None): return max(0,round(max( self.cd * 0.3, self.cd * self.cdReduce / self.cdRecover * self.getWeaponCDRatio() * self.getQuickCDRatio()) * self.cdRatio @@ -342,7 +342,7 @@ class BuffSkill(Skill): CarryRatio: list[float] = [] """对C的额外增伤倍率""" - def getSkillCD(self): + def getSkillCD(self,mode=None): return '-' def skillInfo(self, mode: str | None = None): @@ -363,7 +363,7 @@ class BuffSkill(Skill): value = 0 if lv > len(self.Vitality) else self.Vitality[lv] elif self.char.适用属性 == '精神': value = 0 if lv > len(self.Spirit) else self.Spirit[lv] - return value,[value1,self.ATKRatio,self.ATKPLUS],[value2,self.STRINTRatio,self.STRINTPLUS],value3,self.getSkillCD() + return value,[value1,self.ATKRatio,self.ATKPLUS],[value2,self.STRINTRatio,self.STRINTPLUS],value3,self.getSkillCD(mode) class PassiveBufferSkill(BuffSkill): type: str = 'passive' @@ -393,7 +393,7 @@ class ActiveBufferSkill(BuffSkill): cdr = 0.05 return 1 - cdr - def getSkillCD(self): + def getSkillCD(self,mode=None): return max(0,round(max( self.cd * 0.3, self.cd * self.cdReduce / self.cdRecover * self.getWeaponCDRatio() * self.getQuickCDRatio(),1) diff --git a/backend/core/character/GF/fighter_female/nenmaster_female.py b/backend/core/character/GF/fighter_female/nenmaster_female.py index ced0716b..4bcf47f8 100644 --- a/backend/core/character/GF/fighter_female/nenmaster_female.py +++ b/backend/core/character/GF/fighter_female/nenmaster_female.py @@ -239,7 +239,7 @@ class Skill12(ActiveSkill): {"type":"*skillRation","data":data1,"ratio":100/2} ] - def getSkillCD(self): + def getSkillCD(self,mode=None): # 攻击间隔时间 return 0.5 diff --git a/backend/core/character/GF/fighter_male/nenmaster_male.py b/backend/core/character/GF/fighter_male/nenmaster_male.py index 75729333..f29c8144 100644 --- a/backend/core/character/GF/fighter_male/nenmaster_male.py +++ b/backend/core/character/GF/fighter_male/nenmaster_male.py @@ -196,7 +196,7 @@ class Skill23(ActiveSkill): self.hit3 = 10 self.hit2 = 0 - def getSkillCD(self): + def getSkillCD(self,mode=None): return 1.0 # 蓄念炮 축염포 diff --git a/backend/core/character/GF/gunner_female/ranger_female.py b/backend/core/character/GF/gunner_female/ranger_female.py index ba7bcf77..5a400c4b 100755 --- a/backend/core/character/GF/gunner_female/ranger_female.py +++ b/backend/core/character/GF/gunner_female/ranger_female.py @@ -292,9 +292,9 @@ class Skill24(ActiveSkill): damage = False - def getSkillCD(self): + def getSkillCD(self,mode=None): self.cd = self.cds[self.lv] - return super().getSkillCD() + return super().getSkillCD(mode) # 花式枪术 스타일리쉬 diff --git a/backend/core/character/GF/gunner_female/spitfire_female.py b/backend/core/character/GF/gunner_female/spitfire_female.py index b2dd80ec..a9dcc144 100644 --- a/backend/core/character/GF/gunner_female/spitfire_female.py +++ b/backend/core/character/GF/gunner_female/spitfire_female.py @@ -201,7 +201,7 @@ class Skill9(ActiveSkill): data0 = [0, 1034, 1200, 1364, 1528, 1693, 1857, 2021, 2187, 2352, 2516, 2682, 2846, 3010, 3175, 3339, 3505, 3671, 3835, 4000, 4164]# noqa: E501 hit0 = 1 - def getSkillCD(self): + def getSkillCD(self,mode=None): if self.char.charEquipInfo['武器'].equInfo is None: return 0.14 if self.char.charEquipInfo['武器'].equInfo.itemDetailType == '手弩': diff --git a/backend/core/character/GF/gunner_male/mechanic_male.py b/backend/core/character/GF/gunner_male/mechanic_male.py index 3d41b289..b1bebd24 100644 --- a/backend/core/character/GF/gunner_male/mechanic_male.py +++ b/backend/core/character/GF/gunner_male/mechanic_male.py @@ -145,7 +145,7 @@ class Skill10(ActiveSkill): associate = [{"data":data7,"type":"+power0","skills":["改装 : G-2旋雷者","改装 : G-3捕食者"]}] - def getSkillCD(self): + def getSkillCD(self,mode=None): return 1.0 # 快速拔枪 패스티스트 건 @@ -193,7 +193,7 @@ class Skill14(ActiveSkill): data4 = [0, 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, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120]# noqa: E501 - def getSkillCD(self): + def getSkillCD(self,mode=None): return 1.0 associate = [{"data":data4,"type":"+power0","skills":["G-1科罗纳","改装 : G-3捕食者"]}] diff --git a/backend/core/character/GF/gunner_male/ranger_male.py b/backend/core/character/GF/gunner_male/ranger_male.py index 7b5275e9..d6feb7fa 100644 --- a/backend/core/character/GF/gunner_male/ranger_male.py +++ b/backend/core/character/GF/gunner_male/ranger_male.py @@ -284,9 +284,9 @@ class Skill17(ActiveSkill): damage = False - def getSkillCD(self): + def getSkillCD(self,mode=None): self.cd = self.cds[self.lv] - return super().getSkillCD() + return super().getSkillCD(mode) # 花式枪术 스타일리쉬 diff --git a/backend/core/character/GF/knight/dragon_knight.py b/backend/core/character/GF/knight/dragon_knight.py index d94325e1..729be0d1 100644 --- a/backend/core/character/GF/knight/dragon_knight.py +++ b/backend/core/character/GF/knight/dragon_knight.py @@ -499,7 +499,7 @@ class Skill34(ActiveSkill): associate = [{"data":data0}] - def getSkillCD(self): + def getSkillCD(self,mode=None): return 3.0 diff --git a/backend/core/character/GF/priest_female/crusader_female.py b/backend/core/character/GF/priest_female/crusader_female.py index c286a65b..3668844c 100644 --- a/backend/core/character/GF/priest_female/crusader_female.py +++ b/backend/core/character/GF/priest_female/crusader_female.py @@ -363,7 +363,7 @@ class Skill18(ActiveSkill): mp = [200, 1680] uuid = "a6c8f69107f8c4f5d1a0c7a57d000290" - def getSkillCD(self): + def getSkillCD(self,mode=None): return 0 # 神光十字 그랜드 크로스 크래쉬 diff --git a/backend/core/character/GF/swordman_female/sword_master.py b/backend/core/character/GF/swordman_female/sword_master.py index 8493dcb3..ded384c9 100644 --- a/backend/core/character/GF/swordman_female/sword_master.py +++ b/backend/core/character/GF/swordman_female/sword_master.py @@ -84,7 +84,7 @@ class Skill3(ActiveSkill): damage = False - def getSkillCD(self): + def getSkillCD(self,mode=None): self.cd = self.cdList[self.lv] return super().getSkillCD() @@ -154,7 +154,7 @@ class Skill6(ActiveSkill): elif mode == "暗": self.hit7 = 4 - def getSkillCD(self): + def getSkillCD(self,mode=None): return 1.0 # 魔性之短剑精通 속성의 소검 마스터리 diff --git a/backend/core/character/GF/swordman_male/asura.py b/backend/core/character/GF/swordman_male/asura.py index 7954c432..8637d67a 100644 --- a/backend/core/character/GF/swordman_male/asura.py +++ b/backend/core/character/GF/swordman_male/asura.py @@ -209,7 +209,7 @@ class Skill11(ActiveSkill): data0 = [0, 436, 506, 575, 645, 714, 784, 853, 923, 992, 1062, 1132, 1201, 1271, 1340, 1410, 1479, 1549, 1618, 1688, 1757]# noqa: E501 hit0 = 1 #TODO - def getSkillCD(self): + def getSkillCD(self,mode=None): return 1.0 @@ -435,20 +435,20 @@ class Skill17(ActiveSkill): self.hit6 = 7 self.cd = 4.9 - def getSkillCD(self): + def getSkillCD(self,mode=None): if self.currentMode == "光翼": pre = self.char.GetSkillByName("地裂 · 波动剑") - return 1.2 * pre.getSkillCD() / pre.cd + return 1.2 * pre.getSkillCD(mode) / pre.cd elif self.currentMode == "天照": pre = self.char.GetSkillByName("冰刃 · 波动剑") - return 2 * pre.getSkillCD() / pre.cd + return 2 * pre.getSkillCD(mode) / pre.cd elif self.currentMode == "闪枪": pre = self.char.GetSkillByName("爆炎 · 波动剑") - return 4.9 * pre.getSkillCD() / pre.cd + return 4.9 * pre.getSkillCD(mode) / pre.cd elif self.currentMode == "平X": return 1.0 else: - return super().getSkillCD() + return super().getSkillCD(mode) # 极冰 · 裂波剑 극파동검 빙인 # https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/7cf17936a039b418660424125dc968d7?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0 class Skill18(ActiveSkill): @@ -547,7 +547,7 @@ class Skill20(ActiveSkill): associate = [{"type":"*skillRation","data":data1}] - def getSkillCD(self): + def getSkillCD(self,mode=None): return 2.5 diff --git a/backend/core/character/GF/swordman_male/ghostblade.py b/backend/core/character/GF/swordman_male/ghostblade.py index 3061a68b..200169cf 100644 --- a/backend/core/character/GF/swordman_male/ghostblade.py +++ b/backend/core/character/GF/swordman_male/ghostblade.py @@ -202,8 +202,8 @@ class Skill10(ActiveSkill): data0 = [0, 2011, 2217, 2421, 2627, 2829, 3033, 3237, 3441, 3647, 3851, 4056, 4259, 4463, 4667, 4871, 5076, 5280, 5486, 5688, 5892, 6096, 6302, 6506, 6710, 6914, 7118, 7322, 7526, 7732, 7934, 8140, 8344, 8548, 8752, 8956, 9160, 9364, 9569, 9773, 9979, 10181, 10384, 10589, 10793, 10999, 11203, 11409, 11611, 11815, 12019, 12225, 12429, 12633, 12837, 13041, 13245, 13449, 13654, 13858, 14062, 14266, 14470, 14674, 14878, 15084, 15286, 15492, 15696, 15902, 16104]# noqa: E501 hit0 = 3 - def getSkillCD(self): - return self.char.GetSkillByName("鬼连斩").getSkillCD() + def getSkillCD(self,mode=None): + return self.char.GetSkillByName("鬼连斩").getSkillCD(mode) # 魂破斩 혼백참 # https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/87a918bb22cfc959a16e0bf939bb6c24?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0 diff --git a/backend/core/character/GF/swordman_male/weapon_master.py b/backend/core/character/GF/swordman_male/weapon_master.py index 386b468a..e519481b 100644 --- a/backend/core/character/GF/swordman_male/weapon_master.py +++ b/backend/core/character/GF/swordman_male/weapon_master.py @@ -237,7 +237,7 @@ class Skill6(ActiveSkill): # 刺伤期望伤害 (17层引爆上限) / 17 (17层结算1次爆炸) * 刺伤触发几率 return self.data6[lv] * 1 / 17 * self.data4[lv] / 100 - def getSkillCD(self): + def getSkillCD(self,mode=None): return 1.0 # 巨剑精通 대검 마스터리 # https://api.neople.co.kr/df/skills/41f1cdc2ff58bb5fdc287be0db2a8df3/8c2379737c5acc935c1731f67f607655?apikey=fdvit1Kj64EAJm0qfB3JEAD8FLExLDD0 diff --git a/backend/core/equipment/version_0/equ.py b/backend/core/equipment/version_0/equ.py index 99b41423..bde3f533 100644 --- a/backend/core/equipment/version_0/equ.py +++ b/backend/core/equipment/version_0/equ.py @@ -12609,6 +12609,7 @@ def equ_2000(char: CharacterProperty): skillAttack = 0.1 * point - (point // 25) * 0.1 + (0.5 if point >= 25 else 0) + (0.6 if point >=50 else 0) + (0.6 if point >=75 else 0) + (1.8 if point >=100 else 0) buffer = 30 * point - (point // 25) * 30 + (390 if point >= 25 else 0) + (420 if point >=50 else 0) + (420 if point >=75 else 0) + (540 if point >=100 else 0) char.SetStatus(SkillAttack=skillAttack/100,Buffer=buffer) + char.SetSkillCD(cd=0.15) effect = (point // 25) * 0.5 if effect > 0: char.equ_effect.append(EquEffect(name='地震波', icon='/equipment/icon/special/magicstone/00417.png', cd=30, data=45900*effect)) @@ -12654,6 +12655,7 @@ def equ_2001(char: CharacterProperty): skillAttack = 0.1 * point - (point // 25) * 0.1 + (0.5 if point >= 25 else 0) + (0.6 if point >=50 else 0) + (0.6 if point >=75 else 0) + (1.8 if point >=100 else 0) buffer = 30 * point - (point // 25) * 30 + (390 if point >= 25 else 0) + (420 if point >=50 else 0) + (420 if point >=75 else 0) + (540 if point >=100 else 0) char.SetStatus(SkillAttack=skillAttack/100,Buffer=buffer) + char.SetSkillCD(cd=0.15) char.SetSkillCD(cd=0.04) cd = (point // 25) * 0.04 if cd > 0: