hxp
2025-11-26 7b90cde5f40489da145a24dd30dc44c5e784c08e
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BattleObj.py
@@ -383,6 +383,7 @@
    
    def GetSkillData(self): return self._skillData
    def GetSkillID(self): return self._skillData.GetSkillID()
    def GetCurBuffState(self): return self._skillData.GetCurBuffState()
    def GetAddTiming(self): return self._addTiming
    def SetAddTiming(self, addTiming):
        self._addTiming = addTiming
@@ -416,6 +417,7 @@
    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
    def GetEffectExDict(self): return self._effExDict
    def GetHaloObjIDList(self): return self._haloObjIDList
    def SetHaloObjIDList(self, haloObjIDList): self._haloObjIDList = haloObjIDList
    def AddHaloObjID(self, objID):
@@ -833,6 +835,7 @@
        self._skillTempAttrDict = {} # 某次技能释放中临时的属性增减 {attrID:+-value, ...} value可能是负值
        self._kvDict = {} # 自定义kv字典
        self._bigTurnAtkbackCnt = 0 # 大回合累计反击次数
        self._incrementValue = 0 # 自增值,每场战斗重置,用于确保唯一的场景,如 Skill tag 标签
        self._skillUseCntDict = {} # 技能累计使用次数 {skillID:useCnt, ...}
        self._skillTurnUseCntDict = {} # 技能单回合累计使用次数 {skillID:useCnt, ...}
        self._skillMgr = ObjPool.GetPoolMgr().acquire(SkillManager, self)
@@ -842,6 +845,7 @@
        self._harmSelfHP = 0 # 自残值
        self._mainTagIDList = [] # 主技能目标ID列表,一般用于技能拆分成多个技能效果时,子技能可能会用到主技能的对象做逻辑
        self._timing = 0 # 当前武将时间节点: 0-回合前;1-回合后
        self._angerOverflow = 0 # 怒气技能怒气溢出值,子技能也生效,因为主技能释放后怒气会被扣除,所以这里做个记录
        
        # 统计
        self.hurtStat = 0 # 输出统计
@@ -1015,6 +1019,9 @@
    def SetDead(self):
        self._isAlive = False
        self._hp = 0
    def SetRevive(self, hp):
        self._isAlive = True
        self._hp = hp
    def GetMaxHP(self): return int(self._batAttrDict.get(ChConfig.AttrID_MaxHP, 0))
    def SetMaxHP(self, maxHP, isNotify=False):
        maxHP = int(maxHP)
@@ -1067,6 +1074,7 @@
    def ResetSkillUseCnt(self):
        self._skillUseCntDict = {}
        self._skillTurnUseCntDict = {}
        self._incrementValue = 0
    def AddSkillUseCnt(self, skillID):
        self._skillUseCntDict[skillID] = self._skillUseCntDict.get(skillID, 0) + 1
        self._skillTurnUseCntDict[skillID] = self._skillTurnUseCntDict.get(skillID, 0) + 1
@@ -1079,12 +1087,19 @@
        self._bigTurnAtkbackCnt = 0
        self._skillTurnUseCntDict = {}
    
    def GetIncrementValue(self):
        self._incrementValue += 1
        return self._incrementValue
    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 GetAngerOverflow(self): return self._angerOverflow
    def SetAngerOverflow(self, angerOverflow): self._angerOverflow = angerOverflow
    def GetMainTagIDList(self): return self._mainTagIDList
    def SetMainTagIDList(self, mainTagIDList): self._mainTagIDList = mainTagIDList