#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
##@package Skill.PassiveTrigger.PassiveEff_6032
|
#
|
# @todo:ÌáÉýÖÎÁƼ¼ÄÜ×îÖÕÖÎÁÆÐ§¹û£¨¸ù¾ÝÄ¿±êbuffÀàÐͲãÊý£©
|
# @author hxp
|
# @date 2025-12-24
|
# @version 1.0
|
#
|
# ÏêϸÃèÊö: ÌáÉýÖÎÁƼ¼ÄÜ×îÖÕÖÎÁÆÐ§¹û£¨¸ù¾ÝÄ¿±êbuffÀàÐͲãÊý£©
|
#
|
#-------------------------------------------------------------------------------
|
#"""Version = 2025-12-24 13:50"""
|
#-------------------------------------------------------------------------------
|
|
def GetHappenValue(attacker, defender, curEffect, effSkill, effBuff, connSkill, **skillkwargs):
|
addPerLayer = curEffect.GetEffectValue(0) # ÿ²ãÌáÉý°Ù·Ö±È
|
skillTypeList = curEffect.GetEffectValue(1) # Ä¿±êbuffÀàÐÍ[ÀàÐÍ1, 2, ...]
|
|
layerTotal = 0
|
buffMgr = defender.GetBuffManager()
|
for index in range(buffMgr.GetBuffCount()):
|
buff = buffMgr.GetBuffByIndex(index)
|
skillData = buff.GetSkillData()
|
if skillData.GetSkillType() not in skillTypeList:
|
continue
|
layerTotal += max(1, buff.GetLayer())
|
|
return layerTotal * addPerLayer
|