From cc8d57d50173ba6fcbaeb65af0ad53c690f2f070 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 14 九月 2020 11:36:48 +0800
Subject: [PATCH] 1111 简繁体转换工具
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/RemoteQuery/GY_Query_FBLinePlayerCnt.py | 47 ++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 42 insertions(+), 5 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 27232bd..e38ff46 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
@@ -21,6 +21,7 @@
#导入
import GameLogic_ZhuXianBoss
import GameLogic_HorsePetBoss
+import GameLogic_AllFamilyBoss
import GameWorld
import IPY_GameWorld
import ChConfig
@@ -42,13 +43,13 @@
GameWorld.DebugLog("GY_Query_FBLinePlayerCnt DoLogic() query_Type=%s,query_ID=%s,packCMDList=%s,tick=%s" % \
(query_Type, query_ID, packCMDList, tick))
- if not packCMDList or len(packCMDList) < 3:
+ if not packCMDList or len(packCMDList) < 2:
GameWorld.DebugLog(" DoLogic() return []")
return []
- tagMapID = packCMDList[0] # 目标地图id
- tagFBLineID = packCMDList[1] # 线路id
- isAllLine = packCMDList[2] # 查询的NPCID列表
+ tagMapID, queryFBLineIDList = packCMDList
+ tagFBLineID = 0 if not queryFBLineIDList else queryFBLineIDList[0] # 线路id
+ isAllLine = not queryFBLineIDList # 查询的NPCID列表
gameWorldManager = GameWorld.GetGameWorld()
fbLinePlayerCntDict = {}
if tagMapID == ChConfig.Def_FBMapID_SealDemon:
@@ -62,6 +63,22 @@
continue
playerCnt = playerManager.GetPlayerCount()
fbLinePlayerCntDict[fblineID] = [playerCnt]
+ if not isAllLine:
+ break
+
+ elif tagMapID == ChConfig.Def_FBMapID_DemonKing:
+ 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 queryFBLineIDList and fblineID not in queryFBLineIDList:
+ continue
+ playerCnt = playerManager.GetPlayerCount()
+ fbLinePlayerCntDict[fblineID] = [playerCnt]
+ if len(queryFBLineIDList) == len(fbLinePlayerCntDict):
+ break
elif tagMapID == ChConfig.Def_FBMapID_ZhuXianBoss:
for index in xrange(gameWorldManager.GetGameWorldCount()):
@@ -75,6 +92,8 @@
playerCnt = playerManager.GetPlayerCount()
ownerName = GameLogic_ZhuXianBoss.GetFirstOwnerName(fblineID)
fbLinePlayerCntDict[fblineID] = [playerCnt, ownerName]
+ if not isAllLine:
+ break
elif tagMapID == ChConfig.Def_FBMapID_HorsePetBoss:
for index in xrange(gameWorldManager.GetGameWorldCount()):
@@ -86,8 +105,26 @@
if not isAllLine and tagFBLineID != fblineID:
continue
playerCnt = playerManager.GetPlayerCount()
- hpPer = GameLogic_HorsePetBoss.GetBossRemainHPPer(fblineID, tick)
+ hpPer = GameLogic_HorsePetBoss.GetBossRemainHPPer(index, fblineID, tick)
fbLinePlayerCntDict[fblineID] = [playerCnt, str(hpPer)]
+ if not isAllLine:
+ break
+
+ 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(index, tick)
+ fbLinePlayerCntDict[fblineID] = [playerCnt, str(hpPer)]
+ if not isAllLine:
+ break
+
else:
return
return [tagMapID, fbLinePlayerCntDict]
--
Gitblit v1.8.0