#!/usr/bin/python # -*- coding: GBK -*- # ##@package # # @todo: ±»Ö¸¶¨buffϵÄÍæ¼Ò¹¥»÷½øÈë±ôËÀ״̬´¥·¢¼¼ÄÜ # # @author: Alee # @date 2019-5-7 ÏÂÎç05:56:05 # @version 1.0 # # @note: # #--------------------------------------------------------------------- import ChConfig import GameWorld import GameObj import SkillCommon import IPY_GameWorld def CheckCanHappen(attacker, defender, effect, curSkill): if not defender: return False if attacker.GetPlayerAction() == IPY_GameWorld.paDie: # µ±Ç°ÒѾ­±»´¦ÀíΪËÀÍö£¬ÄÇô¾Í²»´¥·¢ return False zhanshaState = attacker.GetDictByKey(ChConfig.Def_PlayerKey_Zhansha) if zhanshaState: # °´Î»Åжϣ¬1ΪնɱÇé¿öÏ£¬´Ë¼¼Äܲ»¿É±»´¥·¢£¬2ΪÖÕ¼«Õ¶É±²»´¥·¢£¬3ΪÈκÎնɱ¶¼²»´¥·¢ if (effect.GetEffectValue(2) & pow(2, zhanshaState-1)) != 0: return False buff = SkillCommon.FindBuffByOwner(defender, effect.GetEffectValue(0), attacker.GetID(), attacker.GetGameObjType()) if not buff: return False if buff.GetLayer() < effect.GetEffectValue(1): return False GameObj.SetHP(attacker, 1) # ΪÁ˱ÜÃâÉúÃüΪ0ʱ£¬ÆÁ±Î¹ý¶àÂß¼­ return True