From a410c052ad4992ca846e3e30f0ccf9ab0b85a1d7 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 17 九月 2025 17:14:32 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(甄姬、曹操技能;增加本次技能万分比效果ID6004;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py
index 25b07f3..c571d8c 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py
@@ -94,8 +94,14 @@
     useSkill.SetBySkill(bySkill)
     
     curBatObj.ClearSkillTempAttr()
+    tagIDList = []
     for tagObj in tagObjList:
+        tagIDList.append(tagObj.GetID())
         tagObj.ClearSkillTempAttr()
+        
+    # 有功能分类的技能都认为是主技能
+    if useSkill.GetFuncType():
+        curBatObj.SetMainTagIDList(tagIDList)
         
     objID = curBatObj.GetID()
     useTag = ""
@@ -448,7 +454,7 @@
     
     skillID = useSkill.GetSkillID()
     for tagBatObj in useSkill.GetTagObjList():
-        cureHP = CalcCureHP(curBatObj, tagBatObj, useSkill, largeNum=True)
+        cureHP = CalcCureHP(turnFight, curBatObj, tagBatObj, useSkill, largeNum=True)
         if cureHP <= 0:
             continue
         
@@ -858,7 +864,7 @@
                 continue
             
         effID = curEffect.GetEffectID()
-        GameWorld.DebugLog("执行额外技能效果: %s, triggerWay=%s,missObjIDList=%s" % (effID, triggerWay, missObjIDList))
+        GameWorld.DebugLog("◆执行额外技能效果: %s, triggerWay=%s,missObjIDList=%s" % (effID, triggerWay, missObjIDList))
         if effID == 5010:
             # 额外技能效果
             __doUseEnhanceSkill(turnFight, curObj, useSkill, curEffect, missObjIDList)
@@ -1088,6 +1094,8 @@
     dHP = defObj.GetHP()
     dDef = 0 if ignoreDef else defObj.GetDef() # 防守方防御力
     
+    atkSkillPer += TurnPassive.GetTriggerEffectValue(turnFight, atkObj, defObj, ChConfig.PassiveEff_AddSkillPer, curSkill)
+    
     aFinalDamPer = atkObj.GetBatAttrValue(ChConfig.AttrID_FinalDamPer) # 最终加成
     dFinalDamPerDef = defObj.GetBatAttrValue(ChConfig.AttrID_FinalDamPerDef) # 最终减伤
     
@@ -1313,7 +1321,7 @@
     TurnAttack.AddTurnObjCureHP(atkObj, atkObj, suckHP, cureHP)
     return
 
-def CalcCureHP(userObj, tagObj, curSkill, largeNum=False):
+def CalcCureHP(turnFight, userObj, tagObj, curSkill, largeNum=False):
     ''' 计算治疗值
     '''
     cureType = curSkill.GetCalcType()
@@ -1322,7 +1330,7 @@
     
     cureBaseValue = GetCalcBaseValue(cureType, userObj, tagObj)
     
-    #skillPer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(userObj, None, curSkill, ChConfig.TriggerType_AddHP)
+    skillPer += TurnPassive.GetTriggerEffectValue(turnFight, userObj, tagObj, ChConfig.PassiveEff_AddSkillPer, curSkill)
     
     # 回合制
     curePer = 0 # 治疗加成

--
Gitblit v1.8.0