| | |
| | | #-------------------------------------------------------------------------------
|
| | | #"""Version = 2025-09-22 16:00"""
|
| | | #-------------------------------------------------------------------------------
|
| | | import IpyGameDataPY
|
| | |
|
| | | def GetHappenValue(attacker, defender, curEffect, effSkill, **skillkwargs):
|
| | | 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
|