diff --git a/backend/core/basic/character/calc_equip.py b/backend/core/basic/character/calc_equip.py index ffad0ee8..1154c87d 100644 --- a/backend/core/basic/character/calc_equip.py +++ b/backend/core/basic/character/calc_equip.py @@ -158,6 +158,10 @@ class CalcEquipMixin(CharacterBase): self.charOathSkillId = '1' oathSkillEffect = [] self.max_point = 0 if res['suit'] is None else res.get('suit', {}).get('point', 0) + try: + self.oath_max_point = oathSuitInfo.get(max_point_oath_suit, {}).get('point', 0) + except: + self.oath_max_point = 0 self.oathSuitInfo = [] self.oathSkillInfo = [] # 当套装点数达到太初时,誓约技能生效 @@ -193,10 +197,16 @@ class CalcEquipMixin(CharacterBase): if func is not None: # print(f'誓约技能 {skill.id} 生效') func(self) + # 太初积分以上,每超过70点数增加1%技能攻击力 if self.max_point >= 2550: - skillAttack = (self.max_point - 2550) // 70 * 0.01 - buffer = (self.max_point - 2550) // 70 * 100 + skillAttack = (self.max_point - 2550) // 70 * 0.02 + buffer = (self.max_point - 2550) // 70 * 200 self.SetStatus(SkillAttack=skillAttack, Buffer=buffer) + # 誓约积分 + if self.oath_max_point >= 1200: + self.SetSkillCD(1, 100, 0.185) + SkillAttack, Buffer = equs.funs.oathPointEffect(self.oath_max_point) + self.SetStatus(SkillAttack=SkillAttack, Buffer=Buffer) return res def calc_equs(self): @@ -347,14 +357,14 @@ class CalcEquipMixin(CharacterBase): def calc_sundry(self, sundry: dict): """计算杂项效果""" funs = get_equipment(self.equVersion).funs - funs.execture('sundry_0')( - self, - sundry.get('medal_rarity', 0), - sundry.get('medal_reinforce', 0), - [sundry.get('medal_gem_0', 0), sundry.get('medal_gem_1', 0), sundry.get('medal_gem_2', 0), sundry.get('medal_gem_3', 0)], - ) + # funs.execture('sundry_0')( + # self, + # sundry.get('medal_rarity', 0), + # sundry.get('medal_reinforce', 0), + # [sundry.get('medal_gem_0', 0), sundry.get('medal_gem_1', 0), sundry.get('medal_gem_2', 0), sundry.get('medal_gem_3', 0)], + # ) funs.execture('sundry_6')(self, sundry.get('adventure', 1)) - funs.execture('sundry_5')(self, sundry.get('fog', 1)) + # funs.execture('sundry_5')(self, sundry.get('fog', 1)) funs.execture('sundry_7')(self, sundry.get('marriage_house', 0), sundry.get('marriage_ring', 0)) funs.execture('sundry_9')(self, sundry.get('contract', 0)) funs.execture('sundry_10')( diff --git a/backend/core/equipment/version_0/__init__.py b/backend/core/equipment/version_0/__init__.py index 2563b452..40957e22 100644 --- a/backend/core/equipment/version_0/__init__.py +++ b/backend/core/equipment/version_0/__init__.py @@ -62,3 +62,297 @@ def get_reinforce_sum(char): reinforce_2 += num reinforce = reinforce_0 + reinforce_1 + reinforce_2 + reinforce_3 return reinforce + + +def oathPointEffect(point): + """誓约积分效果""" + SkillAttackList = [ + 0.0, + 0.5, + 1.0, + 1.5, + 2.0, + 2.5, + 3.0, + 3.5, + 4.0, + 4.5, + 5.0, + 5.5, + 6.0, + 6.5, + 7.0, + 7.5, + 8.0, + 8.5, + 9.0, + 9.5, + 10.0, + 10.5, + 11.0, + 11.5, + 12.0, + 12.5, + 13.0, + 13.5, + 14.0, + 14.5, + 17.0, + 17.5, + 18.0, + 18.5, + 19.0, + 19.5, + 20.0, + 20.5, + 21.0, + 21.5, + 22.0, + 22.5, + 23.0, + 23.5, + 24.0, + 24.5, + 25.0, + 25.5, + 28.0, + 28.5, + 29.0, + 29.5, + 30.0, + 30.5, + 31.0, + 31.5, + 32.0, + 32.5, + 33.0, + 33.5, + 34.0, + 34.5, + 35.0, + 35.5, + 36.0, + 36.5, + 39.0, + 39.5, + 40.0, + 40.5, + 41.0, + 41.5, + 42.0, + 42.5, + 43.0, + 43.5, + 44.0, + 44.5, + 45.0, + 45.5, + 46.0, + 46.5, + 47.0, + 47.5, + 50.0, + 50.5, + 51.0, + 51.5, + 52.0, + 52.5, + 53.0, + 53.5, + 54.0, + 54.5, + 55.0, + 55.5, + 56.0, + 56.5, + 57.0, + 57.5, + 58.0, + 58.5, + 62.0, + 63.0, + 64.0, + 65.0, + 66.0, + 67.0, + 68.0, + 69.0, + 70.0, + 71.0, + 72.0, + 73.0, + 74.0, + 75.0, + 76.0, + 77.0, + 78.0, + 79.0, + 80.0, + 81.0, + 82.0, + 83.0, + 84.0, + 85.0, + 86.0, + 87.0, + 88.0, + 89.0, + 90.0, + 91.0, + 92.0, + 93.0, + 94.0, + 95.0, + 96.0, + 97.0, + 98.0, + 99.0, + 100.0, + ] + BufferList = [ + 0, + 100, + 200, + 300, + 400, + 500, + 600, + 700, + 800, + 900, + 1000, + 1100, + 1200, + 1300, + 1400, + 1500, + 1600, + 1700, + 1800, + 1900, + 2000, + 2100, + 2200, + 2300, + 2400, + 2500, + 2600, + 2700, + 2800, + 2900, + 3300, + 3380, + 3460, + 3540, + 3620, + 3700, + 3780, + 3860, + 3940, + 4020, + 4100, + 4180, + 4260, + 4340, + 4420, + 4500, + 4580, + 4660, + 5060, + 5140, + 5220, + 5300, + 5380, + 5460, + 5540, + 5620, + 5700, + 5780, + 5860, + 5940, + 6020, + 6100, + 6180, + 6260, + 6340, + 6420, + 6720, + 6790, + 6860, + 6930, + 7000, + 7070, + 7140, + 7210, + 7280, + 7350, + 7420, + 7490, + 7560, + 7630, + 7700, + 7770, + 7840, + 7910, + 8210, + 8280, + 8350, + 8420, + 8490, + 8560, + 8630, + 8700, + 8770, + 8840, + 8910, + 8980, + 9050, + 9120, + 9190, + 9260, + 9330, + 9400, + 9700, + 9820, + 9940, + 10060, + 10180, + 10300, + 10420, + 10540, + 10660, + 10780, + 10900, + 11020, + 11140, + 11260, + 11380, + 11500, + 11620, + 11740, + 11860, + 11980, + 12100, + 12220, + 12340, + 12460, + 12580, + 12700, + 12820, + 12940, + 13060, + 13180, + 13300, + 13420, + 13540, + 13660, + 13780, + 13900, + 14020, + 14140, + 14260, + ] + index = int(min(point // 25, len(SkillAttackList) - 1)) + SkillAttack = SkillAttackList[index] + Buffer = BufferList[index] + return round(SkillAttack, 2), int(round(Buffer)) diff --git a/backend/openapi b/backend/openapi index 680ed85d..33785f2a 160000 --- a/backend/openapi +++ b/backend/openapi @@ -1 +1 @@ -Subproject commit 680ed85d6e8646ad98afe7208a7381dc366bc4f8 +Subproject commit 33785f2a502f9d975f431ee0c32a602f390141fb