From 3a3ad99a1761438e31bc6860e94b43cb4f165513 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 26 十二月 2018 10:52:19 +0800
Subject: [PATCH] 5424 【后端】【1.4】跨服竞技场开发(删除旧跨服代码)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/BuffSkill.py |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/BuffSkill.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/BuffSkill.py
index 4a90148..c035c9f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/BuffSkill.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/BuffSkill.py
@@ -40,6 +40,13 @@
     if curObj == None:
         # 避免配表错误导致报错
         return False
+
+    if GameWorld.GetMap().GetMapID() == ChConfig.Def_FBMapID_GatherSoul and buffOwner and curObj.GetGameObjType() == IPY_GameWorld.gotNPC:
+        if buffOwner.GetGameObjType() == IPY_GameWorld.gotPlayer or (buffOwner.GetGameObjType() == IPY_GameWorld.gotNPC and NPCCommon.GetNpcObjOwnerIsPlayer(buffOwner)):
+            #GameWorld.DebugLog('聚魂副本玩家不能对怪物上buff curSkill=%s,buffOwner=%s'%(curSkill.GetSkillTypeID(),buffOwner.GetID()))
+            return True
+        #GameWorld.DebugLog('聚魂副本对怪物上buff curSkill=%s,buffOwner=%s'%(curSkill.GetSkillTypeID(),buffOwner.GetID()))
+        
     if curObj.GetGameObjType() == IPY_GameWorld.gotNPC and curObj.GetIsBoss() not in ChConfig.Def_SkillAttack_NPCIsBoss \
     and SkillCommon.GetSkillBattleType(curSkill) == ChConfig.Def_BattleRelationType_CommNoBoss:
         # 释放后 对指定BOSS无效的技能
@@ -373,7 +380,7 @@
     # 通知客户端
     #buffState.Sync_AddBuffEx()
     if isNotify:
-        PYSync_RefreshBuff(curObj, addBuff, SkillCommon.GetBuffType(curSkill), notifyAll=False)
+        PYSync_RefreshBuff(curObj, addBuff, SkillCommon.GetBuffType(curSkill), notifyAll=False, owner = buffOwner)
 
     #检查是否属于刷新BUFF
     #===========================================================================
@@ -910,7 +917,7 @@
     
     return DelBuffBySkillID(curObj, skillID, tick)
 
-def PYSync_RefreshBuff(gameObj, curBuff, buffType, notifyAll=True):
+def PYSync_RefreshBuff(gameObj, curBuff, buffType, notifyAll=True, owner = None):
     sendPack = ChNetSendPack.tagObjAddBuff()
 
     sendPack.ObjType = gameObj.GetGameObjType()
@@ -922,6 +929,9 @@
     sendPack.Value1 = curBuff.GetValue1();
     sendPack.Value2 = curBuff.GetValue2();
     sendPack.Layer = curBuff.GetLayer();
+    if owner:
+        sendPack.OwnerID = owner.GetID()
+        sendPack.OwnerType = owner.GetGameObjType()
     if notifyAll or gameObj.GetGameObjType() != IPY_GameWorld.gotPlayer:
         gameObj.NotifyAll(sendPack.GetBuffer(), sendPack.GetLength());
     else:

--
Gitblit v1.8.0