From e926fc46837c5fb26c537ecb15945a78e2f3423f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 17 十一月 2025 19:53:58 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(完善战斗相关公式参数;竞技增减伤属性、战力系数改为PVP增减伤;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnBuffs/BuffAtkType_1003.py | 20 ++++++++++++++++++--
1 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnBuffs/BuffAtkType_1003.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnBuffs/BuffAtkType_1003.py
index 27225bb..ae49a9b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnBuffs/BuffAtkType_1003.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnBuffs/BuffAtkType_1003.py
@@ -16,13 +16,29 @@
#-------------------------------------------------------------------------------
import TurnSkill
+import IpyGameDataPY
+import GameWorld
import ChConfig
def CalcBuffValue(turnFight, attacker, defender, curSkill):
+ skillID = curSkill.GetSkillID()
calcType = curSkill.GetCalcType()
skillPer = curSkill.GetSkillPer()
skillPer += TurnSkill.GetAddSkillPer(turnFight, attacker, defender, curSkill)
- skillValue = curSkill.GetSkillValue()
+ #skillValue = curSkill.GetSkillValue()
baseValue = TurnSkill.GetCalcBaseValue(calcType, attacker, defender, curSkill)
- shieldValue = int(baseValue * skillPer / 10000.0) + skillValue
+
+ relativeObj = TurnSkill.GetRelativeObj(turnFight, attacker)
+ aShieldPer = attacker.GetBatAttrValue(ChConfig.AttrID_ShieldPer) # 强化护盾
+ dShieldPerDef = relativeObj.GetBatAttrValue(ChConfig.AttrID_ShieldPerDef) # 弱化护盾
+
+ angerOverflow = attacker.GetAngerOverflow()
+
+ skillPer /= float(ChConfig.Def_MaxRateValue)
+ aShieldPer /= float(ChConfig.Def_MaxRateValue)
+ dShieldPerDef /= float(ChConfig.Def_MaxRateValue)
+
+ shieldValue = eval(IpyGameDataPY.GetFuncCompileCfg("ShieldFormula", 1))
+ GameWorld.DebugLog("计算护盾值(%s):skillID=%s,calcType=%s,baseValue=%s,skillPer=%s,aShieldPer=%s,dShieldPerDef=%s,angerOverflow=%s"
+ % (shieldValue, skillID, calcType, baseValue, skillPer, aShieldPer, dShieldPerDef, angerOverflow))
return [shieldValue % ChConfig.Def_PerPointValue, shieldValue / ChConfig.Def_PerPointValue]
--
Gitblit v1.8.0