ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSocial.py
@@ -841,6 +841,8 @@
        self.playerInfo.LV = curPlayer.GetLV()
        self.playerInfo.RealmLV = curPlayer.GetOfficialRank()
        self.playerInfo.OnlineType = 1      # 0 不在线  1 在线 2 脱机在线  
        self.playerInfo.Face = curPlayer.GetFace()
        self.playerInfo.FacePic = curPlayer.GetFacePic()
        if not self.playerInfo.RefCount:
            self.playerInfo.RefCount = 1
        return
@@ -853,6 +855,8 @@
        packStruct.LV = self.playerInfo.LV
        packStruct.RealmLV = self.playerInfo.RealmLV
        packStruct.OnlineType = self.playerInfo.OnlineType
        packStruct.Face = self.playerInfo.Face
        packStruct.FacePic = self.playerInfo.FacePic
        return packStruct
    
    # 更新玩家数据引用, 根据需求是否更新玩家数据
@@ -900,6 +904,8 @@
            playerSocial.LV = 1
            playerSocial.RealmLV = 1
            playerSocial.OnlineType = ChConfig.Def_Offline
            playerSocial.Face = 0
            playerSocial.FacePic = 0
        else:
            cacheDict = PlayerViewCache.GetCachePropDataDict(curCache)
    
@@ -910,6 +916,8 @@
            playerSocial.LV = cacheDict["LV"]
            playerSocial.RealmLV = cacheDict["RealmLV"]
            playerSocial.OnlineType = ChConfig.Def_Offline
            playerSocial.Face = cacheDict.get("Face", 0)
            playerSocial.FacePic = cacheDict.get("FacePic", 0)
            
        self.SocialInfo[playerID] = SocialPlayerData(playerSocial)
        socialPlayer = self.SocialInfo[playerID]
@@ -956,7 +964,10 @@
        savaData = ""
        cntData = ""
        cnt = 0
        for socialPlayer in self.SocialInfo.values():
        for playerID, socialPlayer in self.SocialInfo.items():
            if PyGameData.g_dbPlayerIDMap and not PlayerControl.GetDBPlayerAccIDByID(playerID):
                GameWorld.ErrLog("非本服社交玩家,不存档! playerID=%s" % playerID)
                continue
            cnt += 1
            savaData += socialPlayer.playerInfo.getBuffer()
        
@@ -1078,7 +1089,13 @@
        socialPlayer.playerInfo.RealmLV = value
    elif notifyType == IPY_PlayerDefine.CDBPlayerRefresh_PlayerName:
        socialPlayer.playerInfo.PlayerName = value
    elif notifyType == IPY_PlayerDefine.CDBPlayerRefresh_Face:
        socialPlayer.playerInfo.Face = value
    elif notifyType == IPY_PlayerDefine.CDBPlayerRefresh_HairColor:
        socialPlayer.playerInfo.FacePic = value
    else:
        return
    Notify_All(playerID, notifyType, value)
    return