From ddc480baf399e9e0c87406c2c6738e04dbe6da86 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 20 六月 2019 12:01:03 +0800
Subject: [PATCH] 7394 【2.0】【后端】雷罚BOSS(副本中只有一个玩家时离线副本关闭逻辑优化)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameSkills/SkillCommon.py |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 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..c2f464a 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:
@@ -2126,6 +2132,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