From fbf3fe5655d97c67db3bf07706ab5af232dcc9a5 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期四, 18 九月 2025 19:17:48 +0800 Subject: [PATCH] 129 【战斗】战斗系统-服务端(甘夫人技能;增加连击、追击增伤减伤属性;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5011.py | 41 +++++++++-------------------------------- 1 files changed, 9 insertions(+), 32 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5011.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5011.py index bf90eff..3293030 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5011.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveTrigger/PassiveEff_5011.py @@ -4,12 +4,12 @@ # ##@package Skill.PassiveTrigger.PassiveEff_5011 # -# @todo:被击方触发释放技能(对攻击方或重新设置目标) +# @todo:触发释放技能(可继承触发技能目标或重新设置目标) # @author hxp # @date 2025-08-25 # @version 1.0 # -# 详细描述: 被击方触发释放技能(对攻击方或重新设置目标) +# 详细描述: 触发释放技能(可继承触发技能目标或重新设置目标) # #------------------------------------------------------------------------------- #"""Version = 2025-08-25 12:00""" @@ -17,42 +17,19 @@ import TurnSkill import IpyGameDataPY -import GameWorld -import ChConfig def DoSkillEffectLogic(turnFight, batObj, tagObj, effSkill, curEffect, connSkill): - effectID = curEffect.GetEffectID() - skillID = curEffect.GetEffectValue(0) + skillID = curEffect.GetEffectValue(0) # 技能ID,为0时释放本技能 if not skillID: passiveSkill = effSkill else: passiveSkill = IpyGameDataPY.GetIpyGameData("Skill", skillID) if not passiveSkill: return - passiveSkillID = passiveSkill.GetSkillID() - # 继承主技能目标 - if passiveSkill.GetTagAim() == ChConfig.SkillTagAim_MainSkill: - happenRate = passiveSkill.GetHappenRate() - GameWorld.DebugLog("被动触发技能,继承主技能目标! effectID=%s,passiveSkillID=%s,happenRate=%s" % (effectID, passiveSkillID, happenRate)) - tagObjList = [tagObj] - passiveTagObjList = [] - for tagObj in tagObjList: - tagID = tagObj.GetID() - if tagObj.GetHP() <= 0: - GameWorld.DebugLog(" 已被击杀不触发: tagID=%s" % (tagID)) - continue - if happenRate and happenRate != ChConfig.Def_MaxRateValue and not GameWorld.CanHappen(happenRate, ChConfig.Def_MaxRateValue): - GameWorld.DebugLog(" 概率不触发: tagID=%s,happenRate=%s" % (tagID, happenRate)) - continue - passiveTagObjList.append(tagObj) - - if passiveTagObjList: - TurnSkill.OnUseSkill(turnFight, batObj, passiveSkill, passiveTagObjList, batType=ChConfig.TurnBattleType_Passive, bySkill=connSkill) - else: - GameWorld.DebugLog("被动触发技能,重新锁定目标! effectID=%s,passiveSkillID=%s" % (effectID, passiveSkillID)) - TurnSkill.OnUseSkill(turnFight, batObj, passiveSkill, batType=ChConfig.TurnBattleType_Passive, bySkill=connSkill) - - return + effectID = curEffect.GetEffectID() + effSkillID = effSkill.GetSkillID() + return TurnSkill.OnUsePassiveSkill(turnFight, batObj, tagObj, passiveSkill, connSkill, effSkillID, effectID) -def DoBuffEffectLogic(turnFight, batObj, tagObj, curBuff, curEffect, connSkill): - return DoSkillEffectLogic(turnFight, batObj, tagObj, None, curEffect, connSkill) +def DoBuffEffectLogic(turnFight, batObj, tagObj, effBuff, curEffect, connSkill): + effSkill = effBuff.GetSkillData().GetIpyData() + return DoSkillEffectLogic(turnFight, batObj, tagObj, effSkill, curEffect, connSkill) -- Gitblit v1.8.0