From 4815a9626bce7740bb867f056f9694c4c2f858c9 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 16 四月 2019 17:29:24 +0800
Subject: [PATCH] 860312 增加锁定模式 - 只对选中目标造成伤害,适用于部分BOSS争夺副本

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/RemoteQuery/GY_Query_FBLinePlayerCnt.py |   46 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 43 insertions(+), 3 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/RemoteQuery/GY_Query_FBLinePlayerCnt.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/RemoteQuery/GY_Query_FBLinePlayerCnt.py
index 4a04544..1e0cda1 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/RemoteQuery/GY_Query_FBLinePlayerCnt.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/RemoteQuery/GY_Query_FBLinePlayerCnt.py
@@ -19,7 +19,9 @@
 
 
 #导入
-import NPCCommon
+import GameLogic_ZhuXianBoss
+import GameLogic_HorsePetBoss
+import GameLogic_AllFamilyBoss
 import GameWorld
 import IPY_GameWorld
 import ChConfig
@@ -51,7 +53,7 @@
     gameWorldManager = GameWorld.GetGameWorld()
     fbLinePlayerCntDict = {}
     if tagMapID == ChConfig.Def_FBMapID_SealDemon:
-        for index in range(gameWorldManager.GetGameWorldCount()):
+        for index in xrange(gameWorldManager.GetGameWorldCount()):
             gameWorld = IPY_GameWorld.IPY_GameWorld(index)
             playerManager = gameWorld.GetMapCopyPlayerManagerByFbIndex(index)
             fblineID = gameWorld.GetPropertyID() - 1
@@ -60,7 +62,45 @@
             if not isAllLine and tagFBLineID != fblineID:
                 continue
             playerCnt = playerManager.GetPlayerCount()
-            fbLinePlayerCntDict[fblineID] = playerCnt
+            fbLinePlayerCntDict[fblineID] = [playerCnt]
+            
+    elif tagMapID == ChConfig.Def_FBMapID_ZhuXianBoss:
+        for index in xrange(gameWorldManager.GetGameWorldCount()):
+            gameWorld = IPY_GameWorld.IPY_GameWorld(index)
+            playerManager = gameWorld.GetMapCopyPlayerManagerByFbIndex(index)
+            fblineID = gameWorld.GetPropertyID() - 1
+            if fblineID < 0:
+                continue
+            if not isAllLine and tagFBLineID != fblineID:
+                continue
+            playerCnt = playerManager.GetPlayerCount()
+            ownerName = GameLogic_ZhuXianBoss.GetFirstOwnerName(fblineID)
+            fbLinePlayerCntDict[fblineID] = [playerCnt, ownerName]
+            
+    elif tagMapID == ChConfig.Def_FBMapID_HorsePetBoss:
+        for index in xrange(gameWorldManager.GetGameWorldCount()):
+            gameWorld = IPY_GameWorld.IPY_GameWorld(index)
+            playerManager = gameWorld.GetMapCopyPlayerManagerByFbIndex(index)
+            fblineID = gameWorld.GetPropertyID() - 1
+            if fblineID < 0:
+                continue
+            if not isAllLine and tagFBLineID != fblineID:
+                continue
+            playerCnt = playerManager.GetPlayerCount()
+            hpPer = GameLogic_HorsePetBoss.GetBossRemainHPPer(fblineID, tick)
+            fbLinePlayerCntDict[fblineID] = [playerCnt, str(hpPer)]
+    elif tagMapID == ChConfig.Def_FBMapID_AllFamilyBoss:
+        for index in xrange(gameWorldManager.GetGameWorldCount()):
+            gameWorld = IPY_GameWorld.IPY_GameWorld(index)
+            playerManager = gameWorld.GetMapCopyPlayerManagerByFbIndex(index)
+            fblineID = gameWorld.GetPropertyID() - 1
+            if fblineID < 0:
+                continue
+            if not isAllLine and tagFBLineID != fblineID:
+                continue
+            playerCnt = playerManager.GetPlayerCount()
+            hpPer = GameLogic_AllFamilyBoss.GetBossRemainHPPer(tick)
+            fbLinePlayerCntDict[fblineID] = [playerCnt, str(hpPer)]
     else:
         return
     return [tagMapID, fbLinePlayerCntDict]

--
Gitblit v1.8.0