From c514843bbb15f9f5553091770925d764245d0f9b Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 04 一月 2019 16:53:58 +0800
Subject: [PATCH] 5698 子 【开发】【1.4.100】增加字体斩杀 / 【后端】【1.4.100】增加斩杀字体

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py                   |    4 ++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4519.py  |    4 ++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py     |    1 +
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4028.py |    4 ++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py                            |    3 ++-
 5 files changed, 15 insertions(+), 1 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 dae7c55..dd53454 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
@@ -1607,6 +1607,7 @@
     # 斩杀,濒死等情况的处理
     if PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AttackKill):
         # 斩杀
+        hurtType = ChConfig.Def_HurtType_Zhansha
         hurtValue = GameObj.GetHP(defObj)
         #伤害结构体
         resultHurtType.HurtHP = hurtValue
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py
index aee225f..c32efd6 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py
@@ -1489,9 +1489,13 @@
         
         if GameObj.GetHP(defender) <= 0:
             if hurtList[1] == IPY_GameWorld.gotPlayer:
+                if hurtList[2] == ChConfig.Def_HurtType_Zhansha:
+                    defender.SetDict("zhansha", 1)
                 # 濒死状态触发技能, 不能在GetHurtHP内部触发技能,否则会导致原技能的伤血列表异常
                 PassiveBuffEffMng.OnPassiveSkillTrigger(defender, attacker, None, ChConfig.TriggerType_WillDead, tick)
                 PassiveBuffEffMng.OnPassiveBuffTrigger(defender, attacker, None, ChConfig.TriggerType_WillDead, tick)
+                if hurtList[2] == ChConfig.Def_HurtType_Zhansha:
+                    defender.SetDict("zhansha", 0)
             continue
         
         if usePassiveSkillResult:
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
index d0ca55d..b36d204 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -770,7 +770,8 @@
 Def_HurtType_Miss,           # 闪避 9
 Def_HurtType_Immune,           # 免疫 10
 Def_HurtType_RealmSupress,     # 境界压制 11
-) = range(1, 12)
+Def_HurtType_Zhansha,     # 斩杀 12
+) = range(1, 13)
 #Def_HurtType_SuckBlood,      # 吸血 
 
 (
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4519.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4519.py
index ca5b5ed..9ecff4e 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4519.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveBuff_4519.py
@@ -22,6 +22,10 @@
         # 当前已经被处理为死亡,那么就不触发
         return False
     
+    if attacker.GetDictByKey("zhansha") and passiveEffect.GetEffectValue(0):
+        # 斩杀不触发的标志
+        return False
+    
     attacker.SetHP(1)
 
     return False
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4028.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4028.py
index 7fdf14e..55f325f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4028.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4028.py
@@ -22,6 +22,10 @@
         # 当前已经被处理为死亡,那么就不触发
         return False
 
+    if attacker.GetDictByKey("zhansha") and effect.GetEffectValue(2):
+        # 斩杀不触发的标志
+        return False
+    
     result = GameWorld.CanHappen(effect.GetEffectValue(0))
     if result:
         GameObj.SetHP(attacker, 1) # 为了避免生命为0时,屏蔽过多逻辑

--
Gitblit v1.8.0