From 40e191811bd44f1476f3d99ed5932605c4416e48 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期六, 01 六月 2019 22:25:06 +0800
Subject: [PATCH] 6603 【后端】【2.0】增加新版的sp和被动技能

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4107.py |   36 ++++++++++++++++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py             |    5 ++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4540.py  |   22 +++++++++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4541.py  |   27 +++++++++++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py     |    5 ++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py                            |    3 +
 6 files changed, 96 insertions(+), 2 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
index 1fadb2b..6fdec9f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
@@ -2091,6 +2091,11 @@
     isSuperHit, aSuperHit, dSuperHitReduce = hurtTypeResultDict[ChConfig.Def_HurtType_ThumpHit] 
     if not isSuperHit:
         isSuperHit, aSuperHit, dSuperHitReduce = hurtTypeResultDict[ChConfig.Def_HurtType_SuperHit] 
+        
+        # 暴击加成
+        superHitPer = 0
+        superHitPer += PassiveBuffEffMng.GetValueByPassiveBuffTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_SuperHitPer)
+        aSuperHit = aSuperHit*(superHitPer + ChConfig.Def_MaxRateValue)/ChConfig.Def_MaxRateValue
     else:
         # 重击加成
         thumpPer = 0
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index 45f4ca4..6abd9df 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -4502,7 +4502,8 @@
 TriggerType_HitSuccess,        # 命中成功率 83
 TriggerType_AddHP,        # 技能回血 84
 TriggerType_ThumpHitSuckBloodPer,   # 重击百分比吸血, 85
-) = range(1, 86)
+TriggerType_SuperHitPer,  # 暴击伤害百分比 86
+) = range(1, 87)
 
 
 #不可以佩戴翅膀的地图
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4540.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4540.py
new file mode 100644
index 0000000..0bc32a3
--- /dev/null
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4540.py
@@ -0,0 +1,22 @@
+#!/usr/bin/python
+# -*- coding: GBK -*-
+#
+##@package
+#
+# @todo: buff中暴击增加暴击伤害XX%
+#
+# @author: Alee
+# @date 2019-6-1 下午10:03:41
+# @version 1.0
+#
+# @note: 
+#
+#---------------------------------------------------------------------
+
+
+def CheckCanHappen(attacker, defender, passiveEffect, skillID, **skillkwargs):
+    return True
+
+
+def GetValue(attacker, defender, passiveEffect):
+    return passiveEffect.GetEffectValue(0)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4541.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4541.py
new file mode 100644
index 0000000..71807da
--- /dev/null
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4541.py
@@ -0,0 +1,27 @@
+#!/usr/bin/python
+# -*- coding: GBK -*-
+#
+##@package
+#
+# @todo: buff中目标指定buff下,按层级算提高技能伤害
+#
+# @author: Alee
+# @date 2019-6-1 下午10:03:41
+# @version 1.0
+#
+# @note: 
+#
+#---------------------------------------------------------------------
+import GameObj
+import SkillCommon
+def CheckCanHappen(attacker, defender, passiveEffect, skillID, **skillkwargs):
+    if not defender:
+        return False
+    return True
+
+
+def GetValue(attacker, defender, passiveEffect):
+    buff = SkillCommon.FindBuffByOwner(defender, passiveEffect.GetEffectValue(1), attacker.GetID(), attacker.GetGameObjType())
+    if not buff:
+        return 0
+    return passiveEffect.GetEffectValue(0)*buff.GetLayer()
\ No newline at end of file
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4107.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4107.py
new file mode 100644
index 0000000..60156bf
--- /dev/null
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4107.py
@@ -0,0 +1,36 @@
+#!/usr/bin/python
+# -*- coding: GBK -*-
+#
+##@package
+#
+# @todo: 目标指定buff下,大于等于层级提高技能固定值伤害
+#
+# @author: Alee
+# @date 2019-6-1 下午10:16:30
+# @version 1.0
+#
+# @note: 
+#
+#---------------------------------------------------------------------
+import ChConfig
+import GameWorld
+import SkillCommon
+import GameObj
+
+# 目标某个状态时触发
+def CheckCanHappen(attacker, defender, effect, curSkill):
+    if not defender:
+        return False
+    
+    buff = SkillCommon.FindBuffByOwner(defender, effect.GetEffectValue(1), attacker.GetID(), attacker.GetGameObjType())
+    if not buff:
+        return False
+    
+    if buff.GetLayer() < effect.GetEffectValue(2):
+        return False
+    return True
+    
+
+def GetValue(attacker, defender, effect):
+    return effect.GetEffectValue(0)
+
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
index 0bdbec4..1f0ee3b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
@@ -390,7 +390,8 @@
              4102:ChConfig.TriggerType_SkillValue,  # 增加技能伤害固定值 82
              4103:ChConfig.TriggerType_ThumpHitSuckBloodPer,   # 攻击 百分比吸血
              4104:ChConfig.TriggerType_HitSuccess,  # 命中成功率 83
-             4106:ChConfig.TriggerType_AddHP,   # 回血 84
+             4106:ChConfig.TriggerType_AddHP,   # 技能回血 84
+             4107:ChConfig.TriggerType_SkillValue,   # 增加技能伤害固定值 82
              }
     return tdict.get(effectID, -1) 
     #===========================================================================
@@ -448,6 +449,8 @@
              4537:ChConfig.TriggerType_BurnPer, # 灼烧伤害百分比 80
              4538:ChConfig.TriggerType_SkillValue,  # 增加技能伤害固定值 82
              4539:ChConfig.TriggerType_SkillValue,  # 增加技能伤害固定值 82
+             4540:ChConfig.TriggerType_SuperHitPer, # 暴击伤害百分比
+             4541:ChConfig.TriggerType_AttackAddSkillPer, # BUFF类:提高主动技能的技能伤害
              
              803:ChConfig.TriggerType_BloodShield,  # 血盾
              806:ChConfig.TriggerType_BloodShield,  # 血盾

--
Gitblit v1.8.0