|  |  |  | 
|---|
|  |  |  | if passiveEff: | 
|---|
|  |  |  | passiveEff.DelBuffInfo(skillData) | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #--------------------------------------------------------------------- | 
|---|
|  |  |  | ## 执行buff消失触发逻辑,不处理buff的功能逻辑,只处理需要的必须状态逻辑 | 
|---|
|  |  |  | #  如不处理buff的 伤害,爆炸等,但必须处理恢复眩晕状态等 | 
|---|
|  |  |  | def DoBuffDisApperEx( curObj, curBuff, tick ): | 
|---|
|  |  |  | #这个函数里面不能做Buff添加和删除逻辑!!!!!不然指针会错乱 | 
|---|
|  |  |  | curSkill = curBuff.GetSkill() | 
|---|
|  |  |  |  | 
|---|
|  |  |  | skillData = GameWorld.GetGameData().GetSkillBySkillID(curSkill.GetSkillID()) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #是否是持续性技能 | 
|---|
|  |  |  | isLstSkill = curSkill.GetSkillType() in ChConfig.Def_LstBuff_List | 
|---|
|  |  |  |  | 
|---|
|  |  |  | PassiveBuffEffMng.OnPassiveSkillTrigger(curObj, None, curSkill, ChConfig.TriggerType_BuffDisappear, tick) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #buff消失的触发 | 
|---|
|  |  |  | for effectIndex in range( 0, curSkill.GetEffectCount() ): | 
|---|
|  |  |  | curEffect = curSkill.GetEffect( effectIndex ) | 
|---|
|  |  |  | effectID = curEffect.GetEffectID() | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if not effectID: | 
|---|
|  |  |  | continue | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if isLstSkill: | 
|---|
|  |  |  | callFunc = GameWorld.GetExecFunc( GameBuffs, "BuffProcess_%d.%s"%( effectID, "OnBuffDisappearEx") ) | 
|---|
|  |  |  | if not callFunc: | 
|---|
|  |  |  | callFunc = GameWorld.GetExecFunc( GameBuffs, "Buff_%d.%s"%( effectID, "OnBuffDisappearEx") ) | 
|---|
|  |  |  | else: | 
|---|
|  |  |  | callFunc = GameWorld.GetExecFunc( GameBuffs, "Buff_%d.%s"%( effectID, "OnBuffDisappearEx") ) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if not callFunc: | 
|---|
|  |  |  | continue | 
|---|
|  |  |  |  | 
|---|
|  |  |  | callFunc( curObj, curSkill, curBuff, curEffect, tick ) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | passiveEff = PassiveBuffEffMng.GetPassiveEffManager().GetPassiveEff(curObj) | 
|---|
|  |  |  | if passiveEff: | 
|---|
|  |  |  | passiveEff.DelBuffInfo(skillData) | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #--------------------------------------------------------------------- | 
|---|
|  |  |  | ## buff消失 | 
|---|
|  |  |  | #  @param curObj 当前目标 | 
|---|