129 【战斗】战斗系统-服务端(修复5003效果消耗buff层持续伤害扣血bug;)
3个文件已修改
9 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/OpenFunc.py 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5003.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/OpenFunc.py
@@ -22,6 +22,7 @@
import GameFuncComm
import ChConfig
import ShareDefine
import PlayerOnline
## GM命令执行入口
#  @param curPlayer 当前玩家
@@ -43,6 +44,7 @@
        else:
            openFuncID = cmdList[1] if len(cmdList) > 1 else 0
            DoGMOpenFunc(curPlayer, openFuncID)
        PlayerOnline.GetOnlinePlayer(curPlayer).ReCalcAllAttr()
            
    PrintFuncOpenState(curPlayer)
    return
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5003.py
@@ -22,7 +22,7 @@
    remainLayer = max(0, effBuff.GetLayer() - 1)
    effBuff.SetLayer(remainLayer)
    
    TurnBuff.DoBuffProcess(turnFight, batObj, effBuff)
    TurnBuff.DoBuffProcess(turnFight, batObj, effBuff, costLayer=1)
    
    if remainLayer <= 0:
        TurnBuff.DoBuffDel(turnFight, batObj, effBuff)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py
@@ -2534,7 +2534,12 @@
    dMaxHP = defObj.GetMaxHP()
    GameWorld.DebugLog("结算dot: atkID=%s,defID=%s,buffID=%s,skillID=%s,ownerID=%s,hurtValue=%s,hurtTypes=%s,dHP=%s/%s" 
                       % (atkID, defID, buffID, skillID, ownerID, hurtValue, hurtTypes, dHP, dMaxHP))
    costLayer = kwargs.get("costLayer")
    layer = curBuff.GetLayer()
    if costLayer > 0:
        hurtValue *= min(costLayer, max(1, layer))
        GameWorld.DebugLog("    消耗buff层伤害: hurtValue=%s,costLayer=%s,layer=%s" % (hurtValue, costLayer, layer))
    else:
    if layer > 0:
        hurtValue *= layer
        GameWorld.DebugLog("    多层buff伤害: hurtValue=%s,layer=%s" % (hurtValue, layer))