From f12bbdcbaebff76914ae6dc735941d19f8f4e87f Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 25 六月 2019 02:00:11 +0800
Subject: [PATCH] 860312 印记飘字的优先级高于压制

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py |   31 +++++++++++++++++++++----------
 1 files changed, 21 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 6bdb52f..b3cc67c 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
@@ -1272,7 +1272,12 @@
         if curObj.GetGameNPCObjType() == IPY_GameWorld.gnotPet:
             PetControl.SetPetHP(curObj, remainHP)
         else:
-            GameObj.SetHP(curObj, remainHP)
+            timeLostHPIpyData = IpyGameDataPY.GetIpyGameDataNotLog("NPCTimeLostHP", curObj.GetNPCID())
+            if timeLostHPIpyData:
+                AttackCommon.UpdateTimeMonsterHP(curObj, timeLostHPIpyData, tick)
+            else:
+                GameObj.SetHP(curObj, remainHP)
+                
             if not view :   # 已广播的不重复
                 curObj.Notify_HPEx()
 
@@ -1282,10 +1287,11 @@
         GameObj.SetHP(curObj, remainHP, not view)
     
     AttackCommon.WriteHurtLog(buffOwner, curObj, curSkill, lostValue, hurtType, "持续掉血")
-    
     if view:
         #广播伤血类型
         AttackCommon.ChangeHPView(curObj, buffOwner, skillTypeID, notifyLostValue, hurtType)
+        if buffOwner:
+            PassiveBuffEffMng.OnPassiveSkillTrigger(buffOwner, curObj, curSkill, ChConfig.TriggerType_AttackOverPassive, tick)
         
     # 濒死状态触发技能
     if GameObj.GetHP(curObj) == 0:
@@ -1604,14 +1610,16 @@
     
     #---添加的Buff值---
     addBuffValue = 0
-    #是否是持续性技能
-    if curSkill.GetSkillType() in ChConfig.Def_LstBuff_List:
-        callFunc = GameWorld.GetExecFunc(GameSkills, "SkillBuff_AddBuffValue.AddBuffValue")
-            
-        if callFunc != None:
-            addBuffValue = int(callFunc(curObj, None, curSkill, tick))
-        else:
-            GameWorld.ErrLog("SkillBuff_AddBuffValue.AddBuffValue")
+    #===========================================================================
+    # #是否是持续性技能
+    # if curSkill.GetSkillType() in ChConfig.Def_LstBuff_List:
+    #    callFunc = GameWorld.GetExecFunc(GameSkills, "SkillBuff_AddBuffValue.AddBuffValue")
+    #        
+    #    if callFunc != None:
+    #        addBuffValue = int(callFunc(curObj, None, curSkill, tick))
+    #    else:
+    #        GameWorld.ErrLog("SkillBuff_AddBuffValue.AddBuffValue")
+    #===========================================================================
     
     return BuffSkill.DoAddBuff(curObj , buffType, curSkill , tick, [addBuffValue])
 
@@ -1870,6 +1878,7 @@
                                        ChConfig.Def_SkillType_PassiveActionBuff,  #被动触发的控制类buff 18
                                        ChConfig.Def_SkillType_PassiveLstPlsBuff,  #被动触发持续增益类buff 21
                                        ChConfig.Def_SkillType_PassiveLstDepBuff,  #被动触发持续减益类buff 22
+                                       ChConfig.Def_SkillType_PassiveLstPlsBuffAtk,
                                        ]
 
 ## 被动触发的技能效果或者释放技能
@@ -1881,6 +1890,7 @@
                                        ChConfig.Def_SkillType_PassiveActionBuff,  #被动触发的控制类buff 18
                                        ChConfig.Def_SkillType_PassiveLstPlsBuff,  #被动触发持续增益类buff 21
                                        ChConfig.Def_SkillType_PassiveLstDepBuff,  #被动触发持续减益类buff 22
+                                       ChConfig.Def_SkillType_PassiveLstPlsBuffAtk,
                                        ]
     
 def isPassiveAttr(curSkill):
@@ -2126,6 +2136,7 @@
     #技能附加
     skillValue = curSkill.GetEffect(0).GetEffectValue(1)
     
+    skillPer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(userObj, None, curSkill, ChConfig.TriggerType_AddHP)/float(ChConfig.Def_MaxRateValue)
     #公式计算治疗值 
     cureHP = int((cureBaseValue * skillPer + skillValue + addExValue) * curePercent)
     

--
Gitblit v1.8.0