From 5ca218ac01201f10c196a07b61ef3b1fe59040e5 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 18 九月 2025 18:30:07 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(B427使用技能无伤血时默认发目标;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py |  104 +++++++++++++++++++++++++++-------------------------
 1 files changed, 54 insertions(+), 50 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py
index 032cb06..93f395e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py
@@ -1283,14 +1283,12 @@
             AttackCommon.OnPVPDamage(attackerOwner, lostValue, curObj, "SkillLostHP")
         elif curObjType == IPY_GameWorld.gotNPC:
             AttackCommon.NPCAddObjInHurtList(attackerOwner, curObj, curObjHP_BeforeAttack, lostValue)
-            
-    TurnAttack.AddTurnObjHurtValue(buffOwner, curObj, hurtType, lostValue, lostHP, curSkill)
     
     #统一调用攻击结束动作
     if isDoAttackResult:
         BaseAttack.DoLogic_AttackResult(buffOwner, curObj, None, tick)
         
-    TurnAttack.OnTurnfightAttackResult(buffOwner, curObj, curSkill)
+    #TurnAttack.OnTurnfightAttackResult(buffOwner, curObj, curSkill)
     return lostHP
 
 ## 检查增加淬毒buff
@@ -1850,9 +1848,13 @@
     #0通哟  1 PVP类型  2PVE类型  
     return curSkill.GetHurtType() % 10
 
+def isDamageShieldSkill(skillData):
+    ## 是否承伤盾技能
+    return skillData.GetAtkType() == ChConfig.BuffAtkType_DamageShield
+
 def isAngerSkill(curSkill):
     ## 是否怒气技能
-    return curSkill and curSkill.GetXP() > 0
+    return curSkill and curSkill.GetFuncType() == ChConfig.Def_SkillFuncType_AngerSkill
 
 def isTurnNormalSkill(curSkill):
     ## 是否回合普攻技能,区别与无技能的普通A一下,该普攻同样可以有各种技能效果,只是他属于普攻
@@ -2071,12 +2073,12 @@
         cureBaseValue = GetCureBaseValue(userObj, curSkill)
     elif cureType == ChConfig.Def_Cure_MaxHP:
         cureBaseValue = GameObj.GetMaxHP(userObj)
-    elif cureType == ChConfig.Def_Cure_PNE:
-        cureBaseValue = userObj.GetPNE()
-        addPer = curSkill.GetEffect(0).GetEffectValue(2)/float(ChConfig.Def_MaxRateValue)
-        addExValue = GetCureBaseValue(userObj, curSkill)*addPer
-    elif cureType == ChConfig.Def_Cure_PHY:
-        cureBaseValue = GameObj.GetMaxHP(userObj)
+    #elif cureType == ChConfig.Def_Cure_PNE:
+    #    cureBaseValue = userObj.GetPNE()
+    #    addPer = curSkill.GetEffect(0).GetEffectValue(2)/float(ChConfig.Def_MaxRateValue)
+    #    addExValue = GetCureBaseValue(userObj, curSkill)*addPer
+    #elif cureType == ChConfig.Def_Cure_PHY:
+    #    cureBaseValue = GameObj.GetMaxHP(userObj)
     elif cureType == ChConfig.Def_Cure_HurtValue:
         cureBaseValue = GameObj.GetLastHurtValue(userObj)
     elif cureType == ChConfig.Def_Cure_TagMaxHP:
@@ -2167,48 +2169,50 @@
 def GetSkillAddPerByID(curPlayer, skillTypeID):
     ## 获取技能伤害百分比提升值
     # @param skillTypeID: 技能TypeID
-    SkillAddPerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillAddPerAttrIDDict")
-    if not SkillAddPerAttrIDDict:
-        SkillAddPerAttrIDDict = {}
-        skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {})
-        for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items():
-            attrID = int(attrIDStr)
-            if attrID not in ShareDefine.SkillAddPerAttrIDList:
-                continue
-            for cfgSkillTypeID in skillTypeIDList:
-                SkillAddPerAttrIDDict[cfgSkillTypeID] = attrID
-        IpyGameDataPY.SetConfigEx("SkillAddPerAttrIDDict", SkillAddPerAttrIDDict)
-        
-    if skillTypeID not in SkillAddPerAttrIDDict:
-        return 0
-    curAttrID = SkillAddPerAttrIDDict[skillTypeID]
-    attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, [])
-    if attrInfo == []:
-        return 0
-    effIndex = attrInfo[0][0]
-    return EffGetSet.GetValueByEffIndex(curPlayer, effIndex)
+    return 0
+#    SkillAddPerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillAddPerAttrIDDict")
+#    if not SkillAddPerAttrIDDict:
+#        SkillAddPerAttrIDDict = {}
+#        skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {})
+#        for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items():
+#            attrID = int(attrIDStr)
+#            if attrID not in ShareDefine.SkillAddPerAttrIDList:
+#                continue
+#            for cfgSkillTypeID in skillTypeIDList:
+#                SkillAddPerAttrIDDict[cfgSkillTypeID] = attrID
+#        IpyGameDataPY.SetConfigEx("SkillAddPerAttrIDDict", SkillAddPerAttrIDDict)
+#        
+#    if skillTypeID not in SkillAddPerAttrIDDict:
+#        return 0
+#    curAttrID = SkillAddPerAttrIDDict[skillTypeID]
+#    attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, [])
+#    if attrInfo == []:
+#        return 0
+#    effIndex = attrInfo[0][0]
+#    return EffGetSet.GetValueByEffIndex(curPlayer, effIndex)
 
 def GetSkillReducePerByID(curPlayer, skillTypeID):
     ## 获取技能伤害百分比减伤值
     # @param skillTypeID: 技能TypeID
-    SkillReducePerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillReducePerAttrIDDict")
-    if not SkillReducePerAttrIDDict:
-        SkillReducePerAttrIDDict = {}
-        skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {})
-        for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items():
-            attrID = int(attrIDStr)
-            if attrID not in ShareDefine.SkillReducePerAttrIDList:
-                continue
-            for cfgSkillTypeID in skillTypeIDList:
-                SkillReducePerAttrIDDict[cfgSkillTypeID] = attrID
-        IpyGameDataPY.SetConfigEx("SkillReducePerAttrIDDict", SkillReducePerAttrIDDict)
-        
-    if skillTypeID not in SkillReducePerAttrIDDict:
-        return 0
-    curAttrID = SkillReducePerAttrIDDict[skillTypeID]
-    attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, [])
-    if attrInfo == []:
-        return 0
-    effIndex = attrInfo[0][0]
-    return EffGetSet.GetValueByEffIndex(curPlayer, effIndex)
+    return 0
+#    SkillReducePerAttrIDDict = IpyGameDataPY.GetConfigEx("SkillReducePerAttrIDDict")
+#    if not SkillReducePerAttrIDDict:
+#        SkillReducePerAttrIDDict = {}
+#        skillPlusAttrIDDict = IpyGameDataPY.GetFuncEvalCfg("SkillPlusAttrID", 2, {})
+#        for attrIDStr, skillTypeIDList in skillPlusAttrIDDict.items():
+#            attrID = int(attrIDStr)
+#            if attrID not in ShareDefine.SkillReducePerAttrIDList:
+#                continue
+#            for cfgSkillTypeID in skillTypeIDList:
+#                SkillReducePerAttrIDDict[cfgSkillTypeID] = attrID
+#        IpyGameDataPY.SetConfigEx("SkillReducePerAttrIDDict", SkillReducePerAttrIDDict)
+#        
+#    if skillTypeID not in SkillReducePerAttrIDDict:
+#        return 0
+#    curAttrID = SkillReducePerAttrIDDict[skillTypeID]
+#    attrInfo = ChConfig.ItemEffect_AttrDict.get(curAttrID, [])
+#    if attrInfo == []:
+#        return 0
+#    effIndex = attrInfo[0][0]
+#    return EffGetSet.GetValueByEffIndex(curPlayer, effIndex)
 

--
Gitblit v1.8.0