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