From fc3f5ce2d3362ca59a04c1b1aba43f8cfbcf79b1 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 09 一月 2026 10:34:11 +0800
Subject: [PATCH] 271 【内政】古宝系统-服务端(古宝升星增加验证同品质x个x星条件;修复古宝月卡特权领奖会越领越多bug;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5501.py |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5501.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5501.py
index 61d768a..516eda3 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5501.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5501.py
@@ -21,6 +21,28 @@
 def DoSkillEffectLogic(turnFight, batObj, tagObj, effSkill, curEffect, connSkill, connBuff, **kwargs):
     skillID = curEffect.GetEffectValue(0) # 技能ID,为0时释放本技能
     setLayerCnt = curEffect.GetEffectValue(1) # 指定buff层级
+    byTagStateList = curEffect.GetEffectValue(2) # 或根据目标xx状态 [状态1, 状态2, ...]总层级
+    bySameCountryLayerEx = curEffect.GetEffectValue(3) # 触发来源是同国时额外增加层级
+    if byTagStateList:
+        layerTotal = 0
+        tagBuffMgr = tagObj.GetBuffManager()
+        for index in range(tagBuffMgr.GetBuffCount()):
+            buff = tagBuffMgr.GetBuffByIndex(index)
+            skillData = buff.GetSkillData()
+            if skillData.GetCurBuffState() not in byTagStateList:
+                continue
+            layerTotal += buff.GetLayer()
+        setLayerCnt = layerTotal
+        
+    if bySameCountryLayerEx:
+        if "byFriendObj" in kwargs:
+            byFriendObj = kwargs.pop("byFriendObj") # 直接取出,防止传递
+            if batObj.GetCountry() == byFriendObj.GetCountry():
+                setLayerCnt += bySameCountryLayerEx
+                
+    if setLayerCnt <= 0:
+        return
+    
     if not skillID:
         passiveSkill = effSkill
     else:

--
Gitblit v1.8.0