From 7060867c004c3312f409a320623b40b42186f9af Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 20 十月 2025 09:29:43 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(A922同步等级信息)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5007.py | 26 ++++++++++++++------------
1 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5007.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5007.py
index 8d90e4e..a8aa970 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5007.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5007.py
@@ -4,46 +4,48 @@
#
##@package Skill.PassiveTrigger.PassiveEff_5007
#
-# @todo:偷取目标身上增益类型buff(技能类型3、5)
+# @todo:偷取目标身上类型buff(删除对方的加到自己身上)
# @author hxp
# @date 2025-09-25
# @version 1.0
#
-# 详细描述: 偷取目标身上增益类型buff(技能类型3、5)
+# 详细描述: 偷取目标身上类型buff(删除对方的加到自己身上)
#
#-------------------------------------------------------------------------------
#"""Version = 2025-09-25 17:30"""
#-------------------------------------------------------------------------------
import TurnBuff
-import ChConfig
import GameWorld
import random
def DoSkillEffectLogic(turnFight, batObj, tagObj, effSkill, curEffect, connSkill, connBuff, **kwargs):
- stealCnt = max(1, curEffect.GetEffectValue(0)) # 偷取个数
- checkInStateList = curEffect.GetEffectValue(1) # 可附加验证处于xx状态 [状态1, 状态2, ...]
+ skillTypeList = curEffect.GetEffectValue(0) # buff技能类型
+ stealCnt = max(1, curEffect.GetEffectValue(1)) # 偷取个数
+ checkInStateList = curEffect.GetEffectValue(2) # 可附加验证处于xx状态 [状态1, 状态2, ...]
if checkInStateList:
if not tagObj.CheckInState(checkInStateList):
GameWorld.DebugLog("目标不在以下状态不能偷: tagID=%s,checkInStateList=%s" % (tagObj.GetID(), checkInStateList))
return
- plsBuffList = []
+ tagBuffList = []
buffMgr = tagObj.GetBuffManager()
for index in range(buffMgr.GetBuffCount()):
buff = buffMgr.GetBuffByIndex(index)
skillData = buff.GetSkillData()
- if skillData.GetSkillType() not in [ChConfig.Def_SkillType_LstPlsBuff, ChConfig.Def_SkillType_PlsBuff]:
+ if skillData.GetSkillType() not in skillTypeList:
continue
- plsBuffList.append(buff)
+ if skillData.GetDispersedLimit():
+ continue
+ tagBuffList.append(buff)
- if not plsBuffList:
- GameWorld.DebugLog("目标没有增益buff: tagID=%s" % (tagObj.GetID()))
+ if not tagBuffList:
+ GameWorld.DebugLog("目标没有可偷的buff: tagID=%s,skillTypeList=%s" % (tagObj.GetID(), skillTypeList))
return
- random.shuffle(plsBuffList) # 随机
+ random.shuffle(tagBuffList) # 随机
- for tagBuff in plsBuffList:
+ for tagBuff in tagBuffList:
if stealCnt <= 0:
break
skillID = tagBuff.GetSkillID()
--
Gitblit v1.8.0