From 4d99299a4e4279fe368f43fd06d3e493fcc419ee Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 12 九月 2024 17:01:43 +0800
Subject: [PATCH] 10050 【后端】角色(部分封包同步Face信息)

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py |   27 +++++++++++++++++++++++++++
 1 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
index 58ef254..44c7dd4 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
@@ -2240,3 +2240,30 @@
     DataRecordPack.SendEventPack("CrossPK_%s" % eventName, drDataDict)
     return
 
+def IsCrossRealmPKPlayer(playerID, checkPreSeason=False, checkAllSeason=False):
+    ## 仅跨服服务器判断用
+    # @param checkPreSeason: 检查上一赛季
+    # @param checkAllSeason: 检查所有赛季
+    
+    # 默认取分区1的赛季作为当前赛季,所有分区赛季ID相同,且递增
+    gameWorld = GameWorld.GetGameWorld()
+    nowSeasonID = gameWorld.GetDictByKey(ChConfig.Def_WorldKey_CrossPKZoneSeasonID % 1)
+    preSeasonID = nowSeasonID - 1
+    crossPKBillboardMgr = PyDataManager.GetCrossPKBillboardManager()
+    crossZoneName = GameWorld.GetCrossZoneName()
+    ipyDataMgr = IpyGameDataPY.IPY_Data()
+    for index in range(ipyDataMgr.GetCrossRealmPKSeasonCount()):
+        seasonIpyData = ipyDataMgr.GetCrossRealmPKSeasonByIndex(index)
+        if crossZoneName != seasonIpyData.GetCrossZoneName():
+            continue
+        zoneID = seasonIpyData.GetZoneID()
+        seasonID = seasonIpyData.GetSeasonID()
+        if checkAllSeason or seasonID == nowSeasonID or (checkPreSeason and seasonID == preSeasonID):
+            pass
+        else:
+            continue
+        _, orderDict = crossPKBillboardMgr.GetCrossPKBillboardInfo(zoneID, seasonID)
+        if orderDict and playerID in orderDict:
+            return True
+        
+    return False

--
Gitblit v1.8.0