hxp
2026-01-09 09e416b2e9e97f4ac902bba159d9670ad066a8d5
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5013.py
@@ -16,8 +16,9 @@
#-------------------------------------------------------------------------------
import TurnSkill
import IpyGameDataPY
import BattleObj
import TurnBuff
import GameWorld
def DoBuffEffectLogic(turnFight, batObj, tagObj, effBuff, curEffect, connSkill, connBuff, **kwargs):
    ownerID = effBuff.GetOwnerID()
@@ -28,12 +29,25 @@
        return
    effSkill = effBuff.GetSkillData().GetIpyData()
    skillID = curEffect.GetEffectValue(0) # 技能ID,为0时释放本技能
    if not skillID:
        passiveSkill = effSkill
    else:
        passiveSkill = IpyGameDataPY.GetIpyGameData("Skill", skillID)
    if not passiveSkill:
        return
    delBuff = curEffect.GetEffectValue(1) # 是否删除buff
    checkTriggerCnt = curEffect.GetEffectValue(2) # 附加验证触发次数达到x次后释放,0不验证
    if checkTriggerCnt:
        triggerCnt = effBuff.GetValue3() + 1
        effBuff.SetValue3(triggerCnt)
        if triggerCnt < checkTriggerCnt:
            GameWorld.DebugLogEx("5013触发次数不足不释放! triggerCnt=%s < %s", triggerCnt, checkTriggerCnt)
            return
    addBatDamPer = curEffect.GetEffectValue(3) # 每次触发额外增加技能增伤
    if addBatDamPer:
        addBatDamPer *= max(1, effBuff.GetValue3())
        GameWorld.DebugLogEx("5013触发次数额外增伤! addBatDamPer=%s", addBatDamPer)
    if delBuff:
        TurnBuff.DoBuffDel(turnFight, batObj, effBuff, connSkill)
    effectID = curEffect.GetEffectID()
    effSkillID = effSkill.GetSkillID()
    return TurnSkill.OnUsePassiveSkill(turnFight, buffOwner, batObj, passiveSkill, connSkill, effSkillID, effectID, connBuff)
    if not skillID:
        skillID = effSkillID
    return TurnSkill.OnUsePassiveSkill(turnFight, buffOwner, batObj, skillID, connSkill, effSkillID, effectID, connBuff, addBatDamPer=addBatDamPer)