ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
@@ -289,11 +289,12 @@
             
             4000:ChConfig.TriggerType_BuffState,   # 进入4012的某个状态触发技能 2
             4001:ChConfig.TriggerType_TagBuffState,   # 目标进入4012的某个状态触发技能 2
             4002:ChConfig.TriggerType_SkillValue,  # 增加技能伤害固定值 82
             4003:ChConfig.TriggerType_AttackOver,  # 攻击(对敌技能)后被动技能被触发 4
             4004:ChConfig.TriggerType_AttackOver,  # 攻击(对敌技能)后被动技能被触发 4
             4005:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4006:ChConfig.TriggerType_SuperHit, # 暴击时 触发技能6,
             4007:ChConfig.TriggerType_SuperHitValue, # 暴击时 增加暴击值百分比7,
             4007:ChConfig.TriggerType_SuperHitPer, # 暴击时 增加暴击值百分比,
             4008:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4009:ChConfig.TriggerType_HurtObjAddBuff, # 击中玩家(群攻多次触发)8,
             4010:ChConfig.TriggerType_ReduceCD, # 减少CD9, #CD
@@ -358,6 +359,8 @@
             4071:ChConfig.TriggerType_Buff_SuckBloodPer,   # 攻击 百分比吸血
             4072:ChConfig.TriggerType_SuperHitSkipCD, # 暴击无冷却 68
             4073:ChConfig.TriggerType_BuffHurtCnt, # 当持续buff伤害第X次时触发技能 69
             4074:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4075:ChConfig.TriggerType_AddThumpHitPer, # 增加重击伤害百分比
             4076:ChConfig.TriggerType_dFinalHurtReducePer, # 防守方的最终伤害减少百分比 71 
             4077:ChConfig.TriggerType_AttackAddFinalPer, # 增加最终伤害百分比 59
             4078:ChConfig.TriggerType_AttackOver,  # 攻击(对敌技能)后被动技能被触发 4
@@ -368,13 +371,13 @@
             4083:ChConfig.TriggerType_AddThumpHitPer, # 增加重击伤害百分比
             4084:ChConfig.TriggerType_ThumpHit, # 对第一目标重击触发技能
             4085:ChConfig.TriggerType_SkillSuccess,  # 任何技能释放成功都可触发 76    加印记
             4086:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4087:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4088:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4089:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4086:ChConfig.TriggerType_AttackAddSkillPerYinji,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 为了飘字使用
             4087:ChConfig.TriggerType_AttackAddSkillPerYinji,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 为了飘字使用
             4088:ChConfig.TriggerType_AttackAddSkillPerYinji,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 为了飘字使用
             4089:ChConfig.TriggerType_AttackAddSkillPerYinji,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 为了飘字使用
             4090:ChConfig.TriggerType_AttackOver,  # 攻击(对敌技能)后被动技能被触发 4
             4091:ChConfig.TriggerType_SkillOverNoAttack,   # 技能释放后 与TriggerType_AttackOver相反19,
             4092:ChConfig.TriggerType_SkillSuccess,  # 任何技能释放成功都可触发 76  减印记
             4092:ChConfig.TriggerType_SkillSuccessExpend,  # 任何技能释放成功都可触发 76  减印记
             4093:ChConfig.TriggerType_NoControl,   # 使关联技能不受控制 78
             4094:ChConfig.TriggerType_Buff_AddSuperHitRate, # BUFF类:增加暴击率
             4095:ChConfig.TriggerType_SuperHitSuckBloodPer, # BUFF类: 暴击百分比吸血, 79
@@ -384,6 +387,12 @@
             4099:ChConfig.TriggerType_WillDead,   # 进入濒死状态时触发技能 25
             4100:ChConfig.TriggerType_AttackOver,  # 攻击(对敌技能)后被动技能被触发 4
             4101:ChConfig.TriggerType_AttackAddSkillPer,  # 所有攻击伤害(SkillPer)增加,含普攻,计算时 5
             4102:ChConfig.TriggerType_SkillValue,  # 增加技能伤害固定值 82
             4103:ChConfig.TriggerType_ThumpHitSuckBloodPer,   # 攻击 百分比吸血
             4104:ChConfig.TriggerType_HitSuccess,  # 命中成功率 83
             4106:ChConfig.TriggerType_AddHP,   # 技能回血 84
             4107:ChConfig.TriggerType_SkillValue,   # 增加技能伤害固定值 82
             4108:ChConfig.TriggerType_SkillSuccess,  # 使用技能成功后不触发技能 处理消耗等问题用 87
             }
    return tdict.get(effectID, -1) 
    #===========================================================================
@@ -428,7 +437,6 @@
             4524:ChConfig.TriggerType_SuperHitSubLayer, # 暴击减层 67
             4525:ChConfig.TriggerType_SuperHitSkipCD, # 暴击无冷却 68
             4526:ChConfig.TriggerType_AddThumpHitRate, # 增加重击概率
             4527:ChConfig.TriggerType_AddThumpHitRate, # 增加重击概率
             4528:ChConfig.TriggerType_AddThumpHitPer, # 重击时 增加重击百分比 75
             4529:ChConfig.TriggerType_Buff_SuckBloodPer,   # BUFF类: 百分比吸血, 此处非属性类
             4530:ChConfig.TriggerType_Buff_AttackSubLayer,  # BUFF类:攻击减buff层,0消失
@@ -438,6 +446,11 @@
             4534:ChConfig.TriggerType_DebuffOff,   # BUFF类: 抵消debuff
             4535:ChConfig.TriggerType_BeAttackAddSkillPer, # buff中, 被攻击提高技能伤害
             4536:ChConfig.TriggerType_AddBuffOver, 
             4537:ChConfig.TriggerType_BurnPer, # 灼烧伤害百分比 80
             4538:ChConfig.TriggerType_SkillValue,  # 增加技能伤害固定值 82
             4539:ChConfig.TriggerType_SkillValue,  # 增加技能伤害固定值 82
             4540:ChConfig.TriggerType_SuperHitPer, # 暴击伤害百分比
             4541:ChConfig.TriggerType_AttackAddSkillPer, # BUFF类:提高主动技能的技能伤害
             
             803:ChConfig.TriggerType_BloodShield,  # 血盾
             806:ChConfig.TriggerType_BloodShield,  # 血盾
@@ -712,7 +725,7 @@
                skillList.extend(self.AffectSuperEquipSkillDict.get((triggerType, funcType), []))
        
        # 被动再触发被动限制为指定
        if connSkill and SkillCommon.isPassiveSkill(connSkill):
        if connSkill and SkillCommon.isPassiveSkill(connSkill) and not PassPassiveLimit(connSkill):
            return skillList
        
        if connSkillID != 0 and connSkillID != ChConfig.Def_SkillID_Somersault:
@@ -905,7 +918,7 @@
        if not connSkill.GetFuncType():
            # 非功能类技能,避免死循环
            return 0, 0
        if SkillCommon.isPassiveSkill(connSkill):
        if SkillCommon.isPassiveSkill(connSkill) and not PassPassiveLimit(connSkill):
            stopPassiveSkill = True
        
    if SkillCommon.GetUsingPassiveSkill(attacker) and triggerType != ChConfig.TriggerType_BuffState:
@@ -1151,7 +1164,8 @@
    if connSkill and SkillCommon.isPassiveSkill(connSkill):
        #GameWorld.DebugLog("被动技能不能再次触发被动技能")
        #return 0
        stopPassiveSkill = True
        if not PassPassiveLimit(connSkill):
            stopPassiveSkill = True
        
    passiveEff = GetPassiveEffManager().GetPassiveEff(attacker)
    if not passiveEff:
@@ -1377,7 +1391,7 @@
        if not useSkill.GetFuncType():
            # 非功能类技能,避免死循环
            return
        if SkillCommon.isPassiveSkill(useSkill):
        if SkillCommon.isPassiveSkill(useSkill) and not PassPassiveLimit(useSkill):
            #GameWorld.DebugLog("被动技能不能再次触发被动技能")
            #return
            stopPassiveSkill = True
@@ -1463,7 +1477,8 @@
    if useSkill and SkillCommon.isPassiveSkill(useSkill):
        #GameWorld.DebugLog("被动技能不能再次触发被动技能")
        #return 0
        stopPassiveSkill = True
        if not PassPassiveLimit(useSkill):
            stopPassiveSkill = True
    passiveEff = GetPassiveEffManager().GetPassiveEff(attacker)
@@ -1610,3 +1625,13 @@
            skillsDict[skillID] = skillsDict.get(skillID, 0) + 1  
            
    return skillsDict
# 默认情况下 被动不应该再触发(或加强)被动技能,会造成额外触发或者死循环
# 但也有一些特殊情况 放在此处过滤
def PassPassiveLimit(useSkill):
    # 如灼烧是被动技能 但可以被不断的强化
    if useSkill.GetSkillType() != ChConfig.Def_SkillType_PassiveLstDepBuff:
        return False
    return True