From 91274d4953fe5494f959a791c724d7d3250b2b59 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期六, 29 六月 2019 17:36:48 +0800
Subject: [PATCH] 6603 【后端】【2.0】增加新版的sp和被动技能 - 被动技能二级触发添加概率判断
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py | 4 ++--
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4530.py | 9 +++++++++
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4530.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4530.py
index 8a466e0..ab30b94 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4530.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4530.py
@@ -23,6 +23,15 @@
def CheckCanHappen(attacker, defender, passiveEffect, skillID, **skillkwargs):
if not defender:
return
+
+ useSkill = skillkwargs.get("useSkill", None)
+ if not useSkill:
+ return False
+ # 主动型技能才有效
+ if useSkill.GetFuncType() not in [ChConfig.Def_SkillFuncType_FbSkill,
+ ChConfig.Def_SkillFuncType_NormalAttack]:
+ return False
+
curSkill = GameWorld.GetGameData().GetSkillBySkillID(skillID)
if not curSkill:
return False
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
index defaefe..7db2e30 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py
@@ -3749,11 +3749,11 @@
# 当技能类型为被动技能并且tag字段为0,则此技能为媒介用于触发技能 SkillEnhance1 SkillEnhance2
skill1 = GameWorld.GetGameData().GetSkillBySkillID(curSkill.GetSkillEnhance1())
- if skill1:
+ if skill1 and GameWorld.CanHappen(skill1.GetHappenRate(), ChConfig.Def_MaxRateValue):
result = True if UsePassiveTriggerSkill(attacker, skill1, target, tick, True) else result
skill2 = GameWorld.GetGameData().GetSkillBySkillID(curSkill.GetSkillEnhance2())
- if skill2:
+ if skill2 and GameWorld.CanHappen(skill2.GetHappenRate(), ChConfig.Def_MaxRateValue):
result = True if UsePassiveTriggerSkill(attacker, skill2, target, tick, True) else result
SkillCommon.SetSkillRemainTime(curSkill, PlayerControl.GetReduceSkillCDPer(attacker), tick, attacker)
--
Gitblit v1.8.0