| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #  | 
| # @todo: buffÖжÔÄ¿±êµÄbuff²ã¼¶´ïµ½µÚ¼¸²ã´¥·¢¼¼ÄÜ  | 
| #  | 
| # @author: Alee  | 
| # @date 2017-12-9 ÏÂÎç09:41:44  | 
| # @version 1.0  | 
| #  | 
| # @note:   | 
| #  | 
| #---------------------------------------------------------------------  | 
|   | 
| import ChConfig  | 
| import GameWorld  | 
| import SkillCommon  | 
| import BuffSkill  | 
|   | 
| def CheckCanHappen(attacker, defender, passiveEffect, skillID, **skillkwargs):  | 
|     if not defender:  | 
|         return False  | 
|       | 
|     useSkill = skillkwargs['useSkill']  | 
|     skillTypeID = useSkill.GetSkillTypeID() if useSkill else 0  | 
|     if passiveEffect.GetEffectValue(2) and passiveEffect.GetEffectValue(2) != skillTypeID:  | 
|         # ÑéÖ¤¹ØÁª¼¼ÄÜ  | 
|         return False  | 
|     return defender.GetDictByKey(ChConfig.Def_PlayerKey_AddBuffLayer) == passiveEffect.GetEffectValue(0)  | 
|   | 
|   | 
| def GetSkillData(passiveEffect):  | 
|     skillID = passiveEffect.GetEffectValue(1)  | 
|   | 
|     return GameWorld.GetGameData().GetSkillBySkillID(skillID)  | 
|   | 
|   |