hxp
2020-12-24 00e75ddb882229e1d9893f963e2485f33972ad34
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
@@ -727,7 +727,8 @@
                continue
            
            if curSkill.GetFuncType() in [ChConfig.Def_SkillFuncType_FbPassiveSkill,
                                          ChConfig.Def_SkillFuncType_Dogz]:
                                          ChConfig.Def_SkillFuncType_Dogz,
                                          ChConfig.Def_SkillFuncType_EquipPassiveSkill]:
                # 被动技能和神兽需设置才有效
                continue
            
@@ -1312,7 +1313,10 @@
        if callFunc is None:
            continue
        
        curValue += callFunc(attacker, defender, effect)
        if triggerType == ChConfig.TriggerType_IsDealy:
            curValue = callFunc(attacker, defender, effect)
        else:
            curValue += callFunc(attacker, defender, effect)
        if skillTypeID not in Def_PassiveSkillValueNoCD:
            if curSkill.GetCoolDownTime():
                SkillCommon.SetSkillRemainTime(curSkill, 0, tick, attacker)
@@ -1717,6 +1721,18 @@
        for skillID in itemSkillIDList:
            skillsDict[skillID] = skillsDict.get(skillID, 0) + 1
            
    skillManager = gameObj.GetSkillManager()
    for skillID in PyGameData.EquipItemSkillIDList:
        hasSkill = skillManager.FindSkillBySkillTypeID(skillID)
        if skillID in skillsDict:
            if not hasSkill:
                skillManager.LVUpSkillBySkillTypeID(skillID)
                #GameWorld.DebugLog("学习装备技能: %s" % skillID, gameObj.GetPlayerID())
        else:
            if hasSkill:
                skillManager.DeleteSkillBySkillTypeID(skillID)
                #GameWorld.DebugLog("删除装备技能: %s" % skillID, gameObj.GetPlayerID())
    return skillsDict
# 默认情况下 被动不应该再触发(或加强)被动技能,会造成额外触发或者死循环