#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#  
 | 
# @todo: ¶ÔÉúÃüµÍÓÚXXµÄÍæ¼Ò ÓÐXX¸ÅÂÊնɱ  
 | 
#  
 | 
# @author: Alee  
 | 
# @date 2018-1-9 ÏÂÎç09:39:37  
 | 
# @version 1.0  
 | 
#  
 | 
# @note:   
 | 
#  
 | 
#---------------------------------------------------------------------  
 | 
  
 | 
import ChConfig  
 | 
import GameWorld  
 | 
import GameObj  
 | 
import IPY_GameWorld  
 | 
import PassiveBuffEffMng  
 | 
# ÑªÁ¿µÍÓÚXX  
 | 
def CheckCanHappen(attacker, defender, effect, curSkill):  
 | 
    if not defender:  
 | 
        return False  
 | 
    if defender.GetGameObjType() != IPY_GameWorld.gotPlayer:  
 | 
        return False  
 | 
    if GameObj.GetHP(defender)*ChConfig.Def_MaxRateValue/GameObj.GetMaxHP(defender) >= effect.GetEffectValue(0):  
 | 
        return False  
 | 
      
 | 
    value = effect.GetEffectValue(1)  
 | 
  
 | 
    value += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(attacker, defender, curSkill, ChConfig.TriggerType_AttackKillHappen)  
 | 
  
 | 
    return GameWorld.CanHappen(value)  
 | 
      
 | 
  
 | 
def GetValue(attacker, defender, effect):  
 | 
    return 1 
 |