hxp
4 天以前 4e3d1ff7e0b98fc18b0b6e63e449f3d7577c0ba6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/python
# -*- coding: GBK -*-
#-------------------------------------------------------------------------------
#
##@package Skill.PassiveTrigger.PassiveEff_6008
#
# @todo:ÉúÃüÖµµÍÓÚx%ʱÃâÒß¿ØÖÆÐ§¹û
# @author hxp
# @date 2025-09-22
# @version 1.0
#
# ÏêϸÃèÊö: ÉúÃüÖµµÍÓÚx%ʱÃâÒß¿ØÖÆÐ§¹û
#
#-------------------------------------------------------------------------------
#"""Version = 2025-09-22 16:00"""
#-------------------------------------------------------------------------------
import IpyGameDataPY
 
def GetHappenValue(attacker, defender, curEffect, effSkill, effBuff, connSkill, **skillkwargs):
    lowerThanPer = curEffect.GetEffectValue(0)
    immuneGroup = curEffect.GetEffectValue(1) # 0-È«²¿¿ØÖÆ£»1-Ç¿¿Ø£»2-Èõ¿Ø
    nowPer = attacker.GetHP() / float(attacker.GetMaxHP()) * 100
    
    if immuneGroup:
        buffStateGroupDict = IpyGameDataPY.GetFuncEvalCfg("BuffStateGroup", 1, {})
        buffStateList = buffStateGroupDict.get(str(immuneGroup), [])
        if connSkill.GetCurBuffState() not in buffStateList:
            #GameWorld.DebugLog("²»ÔÚÃâÒßµÄbuff״̬À²»ÃâÒß")
            return
        
    return 1 if nowPer < lowerThanPer else 0