From fe40f1881045b901bd5e7365673e3a2b677f7e7f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 30 十二月 2025 18:07:49 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(吕布所有技能;优化效果5501支持同国层级;7002效果支持配置学习x技能生效;增加效果5511;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_6011.py |   17 ++++++++++++++---
 1 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_6011.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_6011.py
index fa24dc9..be6b8d7 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_6011.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_6011.py
@@ -15,17 +15,28 @@
 #"""Version = 2025-09-24 19:00"""
 #-------------------------------------------------------------------------------
 
+import TurnBuff
 
 def GetHappenValue(attacker, defender, curEffect, effSkill, effBuff, connSkill, **skillkwargs):
     layerPer = curEffect.GetEffectValue(0) # 每层增加的万分比
     buffStateList = curEffect.GetEffectValue(1) # buff状态 [状态1, 状态2, ...]
+    checkTag = curEffect.GetEffectValue(2) # buff检查自己还是对方: 0-自己,1-对方
+    isDelBuff = curEffect.GetEffectValue(3) # 触发效果后是否扣除buff
     if not buffStateList:
         return
     
+    if isDelBuff:
+        if "turnFight" not in skillkwargs:
+            return
+        turnFight = skillkwargs["turnFight"]
+        
     layerTotal = 0
-    buffMgr = attacker.GetBuffManager()
+    buffObj = defender if checkTag else attacker
+    buffMgr = buffObj.GetBuffManager()
     for buffState in buffStateList:
-        for buff in buffMgr.FindBuffListByState(buffState):
+        for buff in buffMgr.FindBuffListByState(buffState)[::-1]:
             layerTotal += buff.GetLayer()
-            
+            if isDelBuff:
+                TurnBuff.DoBuffDel(turnFight, buffObj, buff, connSkill)
+                
     return layerTotal * layerPer

--
Gitblit v1.8.0