From 070a0dfddf2d5f85ac348a8d37a606bdbcd0ea0a Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 05 十一月 2025 16:45:46 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(完善技能目标选择逻辑;支持软控魅惑、混乱、嘲讽,及反击复仇目标,buff状态细分目标,属性细分目标等优先级处理;修复反击逻辑bug;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py | 26 ++++++++++++++++----------
1 files changed, 16 insertions(+), 10 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 a835c35..8b990af 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,13 +1848,21 @@
#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一下,该普攻同样可以有各种技能效果,只是他属于普攻
return curSkill and curSkill.GetFuncType() == ChConfig.Def_SkillFuncType_TurnNormaSkill
+
+def isAttackDirectSkill(curSkill):
+ ## 是否直接攻击技能
+ return curSkill and not IsBuff(curSkill) and curSkill.GetSkillType() in [ChConfig.Def_SkillType_Atk]
## 检查技能是否为被动技能, 用于控制不可释放技能
def isPassiveSkill(curSkill):
@@ -2071,12 +2077,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:
--
Gitblit v1.8.0