#!/usr/bin/python # -*- coding: GBK -*- #------------------------------------------------------------------------------- # ##@package Skill.PassiveTrigger.PassiveEff_5504 # # @todo:´¥·¢Êͷż¼ÄÜ£¨Ñé֤Ŀ±ê״̬£© # @author hxp # @date 2025-12-16 # @version 1.0 # # ÏêϸÃèÊö: ´¥·¢Êͷż¼ÄÜ£¨Ñé֤Ŀ±ê״̬£© # #------------------------------------------------------------------------------- #"""Version = 2025-12-16 16:00""" #------------------------------------------------------------------------------- import TurnSkill import IpyGameDataPY def DoSkillEffectLogic(turnFight, batObj, tagObj, effSkill, curEffect, connSkill, connBuff, **kwargs): skillID = curEffect.GetEffectValue(0) # ¼¼ÄÜID£¬Îª0ʱÊͷű¾¼¼ÄÜ checkStateList = curEffect.GetEffectValue(1) # ¿É¸½¼ÓÑé֤Ŀ±ê´¦ÓÚxx״̬ checkOwner = curEffect.GetEffectValue(2) # ÊÇ·ñÖ»ÏÞ¹éÊô×Ô¼ºµÄ״̬buff if checkStateList: ownerID = batObj.GetID() if checkOwner else 0 inState = False tagBuffMgr = tagObj.GetBuffManager() for checkState in checkStateList: if tagBuffMgr.FindBuffByState(checkState, ownerID): inState = True break if not inState: #GameWorld.DebugLogEx("Ä¿±ê²»ÔÚ״̬ϲ»´¥·¢: tagID=%s,checkStateList=%s,ownerID=%s", tagObj.GetID(), checkStateList, ownerID) return if not skillID: passiveSkill = effSkill else: passiveSkill = IpyGameDataPY.GetIpyGameData("Skill", skillID) if not passiveSkill: return effectID = curEffect.GetEffectID() effSkillID = effSkill.GetSkillID() return TurnSkill.OnUsePassiveSkill(turnFight, batObj, tagObj, passiveSkill, connSkill, effSkillID, effectID, connBuff, **kwargs) def DoBuffEffectLogic(turnFight, batObj, tagObj, effBuff, curEffect, connSkill, connBuff, **kwargs): effSkill = effBuff.GetSkillData().GetIpyData() return DoSkillEffectLogic(turnFight, batObj, tagObj, effSkill, curEffect, connSkill, connBuff, **kwargs)