#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#  
 | 
##@package  
 | 
#  
 | 
# @todo: buffÖÐÌá¸ßÖØ»÷¸ÅÂÊ ,¿É¸½¼ÓÌõ¼þÊÇ·ñÕë¶ÔµÚһĿ±ê  
 | 
#  
 | 
# @author: Alee  
 | 
# @date 2019-4-25 ÏÂÎç02:49:27  
 | 
# @version 1.0  
 | 
#  
 | 
# @note:   
 | 
#  
 | 
#---------------------------------------------------------------------  
 | 
  
 | 
import ChConfig  
 | 
import GameWorld  
 | 
import AttackCommon  
 | 
  
 | 
def CheckCanHappen(attacker, defender, passiveEffect, skillID, **skillkwargs):  
 | 
    useSkill = skillkwargs.get("useSkill", None)  
 | 
    skillLimist = passiveEffect.GetEffectValue(2)  
 | 
    # Ö÷¶¯Ðͼ¼ÄܲÅÓÐЧ  
 | 
    if skillLimist and useSkill:  
 | 
        if skillLimist == 1:  
 | 
            if useSkill.GetFuncType() not in [ChConfig.Def_SkillFuncType_FbSkill,  
 | 
                                              ChConfig.Def_SkillFuncType_NormalAttack]:  
 | 
                return False  
 | 
        elif skillLimist == 2:  
 | 
            if useSkill.GetFuncType() != ChConfig.Def_SkillFuncType_NormalAttack:  
 | 
                return False  
 | 
              
 | 
    if passiveEffect.GetEffectValue(1):  
 | 
        if AttackCommon.GetFirstDefenderID(attacker) != defender.GetID():  
 | 
            return False  
 | 
    return True  
 | 
  
 | 
  
 | 
def GetValue(attacker, defender, passiveEffect):  
 | 
    return passiveEffect.GetEffectValue(0)  
 |