From 6e928c09df9d294e2f90cd91189a3c9abb7b007f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 31 十月 2025 17:58:33 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(词条技能1014 ~ 1019:增加技能初始CD支持,优化技能CD;优化技能属性、buff属性计算;修复纯buff怒技没有同步技能的bug;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BattleObj.py | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BattleObj.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BattleObj.py
index ad21950..095a14d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BattleObj.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BattleObj.py
@@ -337,6 +337,7 @@
def GetEffectCount(self): return len(self._effList)
def GetEffectByID(self, effID, triggerWay=0): return self._effDict.get((effID, triggerWay), None)
def GetConnSkill(self): return self._ipyData.GetConnSkill()
+ def GetCoolDownInit(self): return self._ipyData.GetCoolDownInit()
def GetCoolDownTime(self): return self._ipyData.GetCoolDownTime()
def GetBuffStateLimit(self): return self._ipyData.GetBuffStateLimit()
def GetCurBuffState(self): return self._ipyData.GetCurBuffState()
@@ -361,6 +362,7 @@
self._value2 = 0
self._value3 = 0
self._isCopy = 0 # 是否复制的buff
+ self._effExDict = {} # 效果ID额外数值 {effID:value, ...} # 计算方式取决于本buff技能中属性效果ID的配置
return
def onRelease(self):
@@ -399,6 +401,9 @@
def SetValue3(self, value): self._value3 = value
def GetIsCopy(self): return self._isCopy
def SetIsCopy(self, isCopy): self._isCopy = isCopy
+ def GetEffectValueEx(self, effID): return self._effExDict.get(effID, 0)
+ def ResetEffectValueEx(self): self._effExDict = {}
+ def AddEffectValueEx(self, effID, valueEx): self._effExDict[effID] = self._effExDict.get(effID, 0) + valueEx
class BuffManager():
## 战斗对象buff管理器
@@ -605,6 +610,7 @@
def GetEffectCount(self): return self._skillData.GetEffectCount()
def GetEffectByID(self, effID, triggerWay=0): return self._skillData.GetEffectByID(effID, triggerWay)
def GetConnSkill(self): return self._skillData.GetConnSkill()
+ def GetCoolDownInit(self): return self._skillData.GetCoolDownInit()
def GetCoolDownTime(self): return self._skillData.GetCoolDownTime()
def GetBuffStateLimit(self): return self._skillData.GetBuffStateLimit()
def GetCurBuffState(self): return self._skillData.GetCurBuffState()
@@ -781,6 +787,7 @@
self._buffMgr = ObjPool.GetPoolMgr().acquire(BuffManager, self)
self._passiveEffMgr = ObjPool.GetPoolMgr().acquire(PassiveEffManager, self)
self._lastHurtValue = 0
+ self._harmSelfHP = 0 # 自残值
self._mainTagIDList = [] # 主技能目标ID列表,一般用于技能拆分成多个技能效果时,子技能可能会用到主技能的对象做逻辑
self._timing = 0 # 当前武将时间节点: 0-回合前;1-回合后
@@ -1017,6 +1024,9 @@
def GetLastHurtValue(self): return self._lastHurtValue
def SetLastHurtValue(self, lastHurtValue): self._lastHurtValue = lastHurtValue
+ def GetHarmSelfHP(self): return self._harmSelfHP
+ def SetHarmSelfHP(self, harmSelfHP): self._harmSelfHP = harmSelfHP
+
def GetMainTagIDList(self): return self._mainTagIDList
def SetMainTagIDList(self, mainTagIDList): self._mainTagIDList = mainTagIDList
--
Gitblit v1.8.0