From 5243a83a1f4d66dd88d54f76f9cab5d66384c8d0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 06 十一月 2024 16:32:18 +0800
Subject: [PATCH] 10261 【越南】【砍树】【英文】【tqxbqy】头像框,头像(补充通知:C001、C005、B207; 0320宗门扫荡结算助战玩家头像信息; A003王者仙盟徽章;)

---
 ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py                                           |    8 ++
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py                                |   26 +++++++-
 ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFBHelpBattle.py                                  |   16 +++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py                       |   42 ++++++++++++++
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldFamilyWar.py                          |    3 +
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GMTExec/CrossPK.py                |    2 
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBHelpBattle.py |    2 
 ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py                                            |   42 ++++++++++++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py             |    2 
 9 files changed, 140 insertions(+), 3 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index 5020ad6..0d1a270 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -17535,6 +17535,8 @@
     NameLen = 0    #(BYTE NameLen)
     PlayerName = ""    #(String PlayerName)
     Job = 0    #(BYTE Job)
+    Face = 0    #(DWORD Face)//基本脸型
+    FacePic = 0    #(DWORD FacePic)//头像框
     FightPower = 0    #(DWORD FightPower)
     RealmLV = 0    #(WORD RealmLV)
     PKScore = 0    #(DWORD PKScore)
@@ -17551,6 +17553,8 @@
         self.NameLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.PlayerName,_pos = CommFunc.ReadString(_lpData, _pos,self.NameLen)
         self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.FightPower,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.RealmLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
         self.PKScore,_pos = CommFunc.ReadDWORD(_lpData, _pos)
@@ -17562,6 +17566,8 @@
         self.NameLen = 0
         self.PlayerName = ""
         self.Job = 0
+        self.Face = 0
+        self.FacePic = 0
         self.FightPower = 0
         self.RealmLV = 0
         self.PKScore = 0
@@ -17575,6 +17581,8 @@
         length += len(self.PlayerName)
         length += 1
         length += 4
+        length += 4
+        length += 4
         length += 2
         length += 4
         length += 1
@@ -17587,6 +17595,8 @@
         data = CommFunc.WriteBYTE(data, self.NameLen)
         data = CommFunc.WriteString(data, self.NameLen, self.PlayerName)
         data = CommFunc.WriteBYTE(data, self.Job)
+        data = CommFunc.WriteDWORD(data, self.Face)
+        data = CommFunc.WriteDWORD(data, self.FacePic)
         data = CommFunc.WriteDWORD(data, self.FightPower)
         data = CommFunc.WriteWORD(data, self.RealmLV)
         data = CommFunc.WriteDWORD(data, self.PKScore)
@@ -17599,6 +17609,8 @@
                                 NameLen:%d,
                                 PlayerName:%s,
                                 Job:%d,
+                                Face:%d,
+                                FacePic:%d,
                                 FightPower:%d,
                                 RealmLV:%d,
                                 PKScore:%d,
@@ -17609,6 +17621,8 @@
                                 self.NameLen,
                                 self.PlayerName,
                                 self.Job,
+                                self.Face,
+                                self.FacePic,
                                 self.FightPower,
                                 self.RealmLV,
                                 self.PKScore,
@@ -17706,6 +17720,8 @@
     PlayerName = ""    #(String PlayerName)// 跨服名字
     Job = 0    #(BYTE Job)
     LV = 0    #(WORD LV)
+    Face = 0    #(DWORD Face)//基本脸型
+    FacePic = 0    #(DWORD FacePic)//头像框
     MaxHP = 0    #(DWORD MaxHP)// 默认满血,求余亿部分
     MaxHPEx = 0    #(DWORD MaxHPEx)// 默认满血,整除亿部分
     MaxProDef = 0    #(DWORD MaxProDef)// 最大护盾
@@ -17722,6 +17738,8 @@
         self.PlayerName,_pos = CommFunc.ReadString(_lpData, _pos,self.NameLen)
         self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.LV,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.MaxHP,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.MaxHPEx,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.MaxProDef,_pos = CommFunc.ReadDWORD(_lpData, _pos)
@@ -17733,6 +17751,8 @@
         self.PlayerName = ""
         self.Job = 0
         self.LV = 0
+        self.Face = 0
+        self.FacePic = 0
         self.MaxHP = 0
         self.MaxHPEx = 0
         self.MaxProDef = 0
@@ -17748,6 +17768,8 @@
         length += 4
         length += 4
         length += 4
+        length += 4
+        length += 4
 
         return length
 
@@ -17758,6 +17780,8 @@
         data = CommFunc.WriteString(data, self.NameLen, self.PlayerName)
         data = CommFunc.WriteBYTE(data, self.Job)
         data = CommFunc.WriteWORD(data, self.LV)
+        data = CommFunc.WriteDWORD(data, self.Face)
+        data = CommFunc.WriteDWORD(data, self.FacePic)
         data = CommFunc.WriteDWORD(data, self.MaxHP)
         data = CommFunc.WriteDWORD(data, self.MaxHPEx)
         data = CommFunc.WriteDWORD(data, self.MaxProDef)
@@ -17770,6 +17794,8 @@
                                 PlayerName:%s,
                                 Job:%d,
                                 LV:%d,
+                                Face:%d,
+                                FacePic:%d,
                                 MaxHP:%d,
                                 MaxHPEx:%d,
                                 MaxProDef:%d
@@ -17780,6 +17806,8 @@
                                 self.PlayerName,
                                 self.Job,
                                 self.LV,
+                                self.Face,
+                                self.FacePic,
                                 self.MaxHP,
                                 self.MaxHPEx,
                                 self.MaxProDef
@@ -52635,6 +52663,8 @@
     LV = 0    #(WORD LV)// 玩家等级
     Job = 0    #(BYTE Job)// 玩家职业, 如果是机器人,则职业有值,服务端控制
     RealmLV = 0    #(WORD RealmLV)// 玩家境界等级
+    Face = 0    #(DWORD Face)//基本脸型
+    FacePic = 0    #(DWORD FacePic)//头像框
     FightPower = 0    #(DWORD FightPower)// 玩家战力
     Relation = 0    #(BYTE Relation)// 关系:0-无,1-好友,2-盟友
     IsNeedGold = 0    #(BYTE IsNeedGold)// 是否需要仙玉召唤
@@ -52653,6 +52683,8 @@
         self.LV,_pos = CommFunc.ReadWORD(_lpData, _pos)
         self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.RealmLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.FightPower,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.Relation,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.IsNeedGold,_pos = CommFunc.ReadBYTE(_lpData, _pos)
@@ -52666,6 +52698,8 @@
         self.LV = 0
         self.Job = 0
         self.RealmLV = 0
+        self.Face = 0
+        self.FacePic = 0
         self.FightPower = 0
         self.Relation = 0
         self.IsNeedGold = 0
@@ -52681,6 +52715,8 @@
         length += 1
         length += 2
         length += 4
+        length += 4
+        length += 4
         length += 1
         length += 1
 
@@ -52695,6 +52731,8 @@
         data = CommFunc.WriteWORD(data, self.LV)
         data = CommFunc.WriteBYTE(data, self.Job)
         data = CommFunc.WriteWORD(data, self.RealmLV)
+        data = CommFunc.WriteDWORD(data, self.Face)
+        data = CommFunc.WriteDWORD(data, self.FacePic)
         data = CommFunc.WriteDWORD(data, self.FightPower)
         data = CommFunc.WriteBYTE(data, self.Relation)
         data = CommFunc.WriteBYTE(data, self.IsNeedGold)
@@ -52709,6 +52747,8 @@
                                 LV:%d,
                                 Job:%d,
                                 RealmLV:%d,
+                                Face:%d,
+                                FacePic:%d,
                                 FightPower:%d,
                                 Relation:%d,
                                 IsNeedGold:%d
@@ -52721,6 +52761,8 @@
                                 self.LV,
                                 self.Job,
                                 self.RealmLV,
+                                self.Face,
+                                self.FacePic,
                                 self.FightPower,
                                 self.Relation,
                                 self.IsNeedGold
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
index 44c7dd4..40adc1f 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
@@ -45,6 +45,8 @@
         self.playerName = ""
         self.playerJob = 0
         self.playerLV = 0
+        self.face = 0
+        self.facePic = 0
         self.maxHP = 0
         self.maxProDef = 0
         self.fightPower = 0
@@ -152,7 +154,7 @@
         billboardList = billboardList[:len(syncBillboardList)] # 直接用本服以后的排行数据实例clear后覆盖更新,不足的创建新实例
         orderDict = {} # 排行信息重新更新
         for i, syncData in enumerate(syncBillboardList):
-            playerID, playerName, job, fightPower, realmLV, pkScore, danLV, billTime, order = syncData
+            playerID, playerName, job, face, facePic, fightPower, realmLV, pkScore, danLV, billTime, order = syncData
             if i < len(billboardList):
                 billboardData = billboardList[i]
                 billboardData.clear()
@@ -164,6 +166,8 @@
             billboardData.PlayerID = playerID
             billboardData.PlayerName = playerName
             billboardData.Job = job
+            billboardData.Face = face
+            billboardData.FacePic = facePic
             billboardData.FightPower = fightPower
             billboardData.RealmLV = realmLV
             billboardData.PKScore = pkScore
@@ -295,6 +299,8 @@
         billboardData.PlayerID = playerID
         billboardData.PlayerName = pkPlayer.playerName
         billboardData.Job = pkPlayer.playerJob
+        billboardData.Face = pkPlayer.face
+        billboardData.FacePic = pkPlayer.facePic
         billboardData.FightPower = pkPlayer.fightPower
         billboardData.RealmLV = pkPlayer.realmLV
         billboardData.PKScore = pkPlayer.pkScore
@@ -468,13 +474,15 @@
         playerID = billboardData.PlayerID
         playerName = billboardData.PlayerName
         job = billboardData.Job
+        face = billboardData.Face
+        facePic = billboardData.FacePic
         fightPower = billboardData.FightPower
         realmLV = billboardData.RealmLV
         pkScore = billboardData.PKScore
         danLV = billboardData.DanLV
         billTime = billboardData.Time
         order = orderDict.get(playerID, 0)
-        syncBillboardList.append([playerID, playerName, job, fightPower, realmLV, pkScore, danLV, billTime, order])
+        syncBillboardList.append([playerID, playerName, job, face, facePic, fightPower, realmLV, pkScore, danLV, billTime, order])
         
     syncInfo = [zoneID, seasonID, syncBillboardList, exData, isFinalBillboardData]
     CrossRealmMsg.SendMsgToClientServer(ShareDefine.CrossServerMsg_PKSyncBillboard, syncInfo, serverGroupIDList)
@@ -521,6 +529,8 @@
         billboardInfoData.PlayerName = billboardData.PlayerName
         billboardInfoData.NameLen = len(billboardInfoData.PlayerName)
         billboardInfoData.Job = billboardData.Job
+        billboardInfoData.Face = billboardData.Face
+        billboardInfoData.FacePic = billboardData.FacePic
         billboardInfoData.FightPower = billboardData.FightPower
         billboardInfoData.RealmLV = billboardData.RealmLV
         billboardInfoData.PKScore = billboardData.PKScore
@@ -889,6 +899,8 @@
     playerID = playerInfoDict["playerID"] # 角色ID
     playerName = playerInfoDict["playerName"] # 玩家名
     job = playerInfoDict["playerJob"] # 职业
+    face = playerInfoDict["face"]
+    facePic = playerInfoDict["facePic"]
     playerLV = playerInfoDict["playerLV"] # 职业
     maxHP = playerInfoDict["maxHP"] # 职业
     maxProDef = playerInfoDict["maxProDef"] # 护盾
@@ -920,6 +932,8 @@
     pkPlayer.playerName = playerName
     pkPlayer.playerJob = job
     pkPlayer.playerLV = playerLV
+    pkPlayer.face = face
+    pkPlayer.facePic = facePic
     pkPlayer.maxHP = maxHP
     pkPlayer.maxProDef = maxProDef
     pkPlayer.pkScore = pkScore
@@ -1150,7 +1164,7 @@
             pkZoneID = roomPlayer.pkZoneID
             roomGroupIDList.append(roomPlayer.serverGroupID)
             readyMemberDict[roomPlayerID] = {"ServerGroupID":roomPlayer.serverGroupID, "Name":roomPlayer.playerName, "Number":num,
-                                             "Job":roomPlayer.playerJob, "LV":roomPlayer.playerLV, "MaxHP":roomPlayer.maxHP, "MaxProDef":roomPlayer.maxProDef}
+                                             "Job":roomPlayer.playerJob, "Face":roomPlayer.face, "FacePic":roomPlayer.facePic, "LV":roomPlayer.playerLV, "MaxHP":roomPlayer.maxHP, "MaxProDef":roomPlayer.maxProDef}
                     
         if not isAllReady:
             continue
@@ -1817,6 +1831,8 @@
     playerID = playerInfoDict["playerID"]
     playerName = playerInfoDict["playerName"]
     playerJob = playerInfoDict["playerJob"]
+    face = playerInfoDict.get("face", 0)
+    facePic = playerInfoDict.get("facePic", 0)
     fightPower = playerInfoDict["fightPower"]
     realmLV = playerInfoDict["realmLV"]
     pkScore = playerInfoDict["pkScore"]
@@ -1834,6 +1850,8 @@
     pkPlayer.playerID = playerID
     pkPlayer.playerName = playerName
     pkPlayer.playerJob = playerJob
+    pkPlayer.face = face
+    pkPlayer.facePic = facePic
     pkPlayer.pkScore = pkScore
     pkPlayer.danLV = danLV
     pkPlayer.fightPower = fightPower
@@ -2064,6 +2082,8 @@
                     matchPlayer.NameLen = len(matchPlayer.PlayerName)
                     matchPlayer.Job = readyPlayerInfo["Job"]
                     matchPlayer.LV = readyPlayerInfo["LV"]
+                    matchPlayer.Face = readyPlayerInfo["Face"]
+                    matchPlayer.FacePic = readyPlayerInfo["FacePic"]
                     matchPlayer.MaxHP = readyPlayerInfo["MaxHP"] % ShareDefine.Def_PerPointValue
                     matchPlayer.MaxHPEx = readyPlayerInfo["MaxHP"] / ShareDefine.Def_PerPointValue
                     matchPlayer.MaxProDef = readyPlayerInfo["MaxProDef"]
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldFamilyWar.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldFamilyWar.py
index 6d8c627..baaae80 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldFamilyWar.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldFamilyWar.py
@@ -90,6 +90,7 @@
 value4        已分配到的连胜次数
 value5        终结连胜的奖励次数, 只能获得这一次的连胜奖励,有值才显示,分配后设置为0, 优先分配
 strValue1        仙盟名
+strValue2        仙盟徽章
 '''
 def GetFWChampionFamilyID(championRecData): return championRecData.GetValue1()
 def SetFWChampionFamilyID(championRecData, familyID): return championRecData.SetValue1(familyID)
@@ -103,6 +104,7 @@
 def SetFWChampionEndWinCount(championRecData, endWinCount): return championRecData.SetValue5(endWinCount)
 def GetFWChampionFamilyName(championRecData): return championRecData.GetStrValue1()
 def SetFWChampionFamilyName(championRecData, familyName): return championRecData.SetStrValue1(familyName)
+def SetFWChampionFamilyEmblemID(championRecData, emblemID): return championRecData.SetStrValue2(str(emblemID))
 
 ''' 参赛人员 Def_UniversalGameRecType_FamilyWarMember
 value1        玩家ID
@@ -990,6 +992,7 @@
             championFamilyName = family.GetName()
             SetFWChampionLeaderID(championRecData, family.GetLeaderID())
             SetFWChampionFamilyName(championRecData, championFamilyName)
+            SetFWChampionFamilyEmblemID(championRecData, PlayerFamily.GetFamilyEmblemID(family))
         else:
             GameWorld.Log("    冠军仙盟不存在或已经解散了!")
             
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFBHelpBattle.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFBHelpBattle.py
index 384e60b..78a13f2 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFBHelpBattle.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFBHelpBattle.py
@@ -38,6 +38,8 @@
     def __init__(self, playerID):
         self.playerID = playerID
         self.job = 0
+        self.face = 0
+        self.facePic = 0
         self.playerName = ""
         self.playerLV = 0
         self.realmLV = 0
@@ -68,6 +70,10 @@
         helpBattlePlayer.realmLV = int(str(value5)[-3:-1])
         helpBattlePlayer.job = value5 % 10
         helpBattlePlayer.playerName = recData.GetStrValue1()
+        strValue2 = recData.GetStrValue2()
+        strValue2List = strValue2.split("|")
+        helpBattlePlayer.face = GameWorld.ToIntDef(strValue2List[0] if len(strValue2List) > 0 else "0", 0)
+        helpBattlePlayer.facePic = GameWorld.ToIntDef(strValue2List[1] if len(strValue2List) > 1 else "0", 0)
         strValue3 = recData.GetStrValue3()
         strValue3List = strValue3.split("|")
         helpCountDictStr = strValue3List[0] if len(strValue3List) > 0 else "{}"
@@ -102,6 +108,7 @@
         recData.SetValue4(checkInPlayer.checkInCount)
         recData.SetValue5(int("%d%02d%02d%d" % (checkInPlayer.playerLV, checkInPlayer.vipLV, checkInPlayer.realmLV, checkInPlayer.job)))
         recData.SetStrValue1(checkInPlayer.playerName)
+        recData.SetStrValue2("%s|%s" % (checkInPlayer.face, checkInPlayer.facePic))
         strValue3 = "%s|%s" % (str(checkInPlayer.todayHelpCountDict).replace(" ", ""),
                                str(checkInPlayer.getThanksGiftCountDict).replace(" ", ""))
         recData.SetStrValue3(strValue3)
@@ -179,6 +186,8 @@
     helpBattlePlayer.playerName = curPlayer.GetName()
     helpBattlePlayer.playerLV = curPlayer.GetLV()
     helpBattlePlayer.job = curPlayer.GetJob()
+    helpBattlePlayer.face = curPlayer.GetFace()
+    helpBattlePlayer.facePic = curPlayer.GetFacePic()
     helpBattlePlayer.realmLV = curPlayer.GetOfficialRank()
     helpBattlePlayer.fightPower = fightPower
     helpBattlePlayer.familyID = curPlayer.GetFamilyID()
@@ -213,6 +222,10 @@
         helpBattlePlayer.playerLV = value
     elif refreshType == IPY_GameServer.CDBPlayerRefresh_VIPLv:
         helpBattlePlayer.vipLV = value
+    elif refreshType == IPY_GameServer.CDBPlayerRefresh_Face:
+        helpBattlePlayer.face = value
+    elif refreshType == IPY_GameServer.CDBPlayerRefresh_HairColor:
+        helpBattlePlayer.facePic = value
     else:
         return
     GameWorld.DebugLog("更新助战玩家信息: refreshType=%s,value=%s" % (refreshType, value), playerID)
@@ -447,6 +460,8 @@
     helpPlayerDict["Name"] = helpBattlePlayer.playerName
     helpPlayerDict["LV"] = helpBattlePlayer.playerLV
     #helpPlayerDict["Job"] = helpBattlePlayer.job
+    helpPlayerDict["Face"] = helpBattlePlayer.face
+    helpPlayerDict["FacePic"] = helpBattlePlayer.facePic
     helpPlayerDict["RealmLV"] = helpBattlePlayer.realmLV
     helpPlayerDict["FightPower"] = helpBattlePlayer.fightPower
     helpPlayerDict["Relation"] = relation
@@ -561,6 +576,7 @@
             continue
         helpBattlePlayer = PyGameData.g_fbHelpBattleCheckInPlayerDict[assistPlayerID]
         assistPlayerDict[assistPlayerID] = {"PlayerName":helpBattlePlayer.playerName, "Job":helpBattlePlayer.job,
+                                            "Face":helpBattlePlayer.face, "FacePic":helpBattlePlayer.facePic,
                                             "LV":helpBattlePlayer.playerLV, "RealmLV":helpBattlePlayer.realmLV,
                                             "TodayGiftCount":helpBattlePlayer.getThanksGiftCountDict.get(liheItemID, 0)}
     
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py b/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
index 4e65359..93faee8 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
@@ -1672,6 +1672,8 @@
         ('PKScore', ctypes.c_ulong),
         ('DanLV', ctypes.c_ubyte),
         ('Time', ctypes.c_ulong),
+        ('Face', ctypes.c_ulong),
+        ('FacePic', ctypes.c_ulong),
         ('ADOResult', ctypes.c_ulong),
     ]
 
@@ -1699,6 +1701,8 @@
         self.PKScore, pos = CommFunc.ReadDWORD(buf, pos)
         self.DanLV, pos = CommFunc.ReadBYTE(buf, pos)
         self.Time, pos = CommFunc.ReadDWORD(buf, pos)
+        self.Face, pos = CommFunc.ReadDWORD(buf, pos)
+        self.FacePic, pos = CommFunc.ReadDWORD(buf, pos)
         return self.getLength()
 
 
@@ -1722,6 +1726,8 @@
             PKScore = %s,
             DanLV = %s,
             Time = %s,
+            Face = %s,
+            FacePic = %s,
             ADOResult = %s,
             '''%(
                 self.ZoneID,
@@ -1734,6 +1740,8 @@
                 self.PKScore,
                 self.DanLV,
                 self.Time,
+                self.Face,
+                self.FacePic,
                 self.ADOResult,
             )
         return output
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 5020ad6..0d1a270 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -17535,6 +17535,8 @@
     NameLen = 0    #(BYTE NameLen)
     PlayerName = ""    #(String PlayerName)
     Job = 0    #(BYTE Job)
+    Face = 0    #(DWORD Face)//基本脸型
+    FacePic = 0    #(DWORD FacePic)//头像框
     FightPower = 0    #(DWORD FightPower)
     RealmLV = 0    #(WORD RealmLV)
     PKScore = 0    #(DWORD PKScore)
@@ -17551,6 +17553,8 @@
         self.NameLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.PlayerName,_pos = CommFunc.ReadString(_lpData, _pos,self.NameLen)
         self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.FightPower,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.RealmLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
         self.PKScore,_pos = CommFunc.ReadDWORD(_lpData, _pos)
@@ -17562,6 +17566,8 @@
         self.NameLen = 0
         self.PlayerName = ""
         self.Job = 0
+        self.Face = 0
+        self.FacePic = 0
         self.FightPower = 0
         self.RealmLV = 0
         self.PKScore = 0
@@ -17575,6 +17581,8 @@
         length += len(self.PlayerName)
         length += 1
         length += 4
+        length += 4
+        length += 4
         length += 2
         length += 4
         length += 1
@@ -17587,6 +17595,8 @@
         data = CommFunc.WriteBYTE(data, self.NameLen)
         data = CommFunc.WriteString(data, self.NameLen, self.PlayerName)
         data = CommFunc.WriteBYTE(data, self.Job)
+        data = CommFunc.WriteDWORD(data, self.Face)
+        data = CommFunc.WriteDWORD(data, self.FacePic)
         data = CommFunc.WriteDWORD(data, self.FightPower)
         data = CommFunc.WriteWORD(data, self.RealmLV)
         data = CommFunc.WriteDWORD(data, self.PKScore)
@@ -17599,6 +17609,8 @@
                                 NameLen:%d,
                                 PlayerName:%s,
                                 Job:%d,
+                                Face:%d,
+                                FacePic:%d,
                                 FightPower:%d,
                                 RealmLV:%d,
                                 PKScore:%d,
@@ -17609,6 +17621,8 @@
                                 self.NameLen,
                                 self.PlayerName,
                                 self.Job,
+                                self.Face,
+                                self.FacePic,
                                 self.FightPower,
                                 self.RealmLV,
                                 self.PKScore,
@@ -17706,6 +17720,8 @@
     PlayerName = ""    #(String PlayerName)// 跨服名字
     Job = 0    #(BYTE Job)
     LV = 0    #(WORD LV)
+    Face = 0    #(DWORD Face)//基本脸型
+    FacePic = 0    #(DWORD FacePic)//头像框
     MaxHP = 0    #(DWORD MaxHP)// 默认满血,求余亿部分
     MaxHPEx = 0    #(DWORD MaxHPEx)// 默认满血,整除亿部分
     MaxProDef = 0    #(DWORD MaxProDef)// 最大护盾
@@ -17722,6 +17738,8 @@
         self.PlayerName,_pos = CommFunc.ReadString(_lpData, _pos,self.NameLen)
         self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.LV,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.MaxHP,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.MaxHPEx,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.MaxProDef,_pos = CommFunc.ReadDWORD(_lpData, _pos)
@@ -17733,6 +17751,8 @@
         self.PlayerName = ""
         self.Job = 0
         self.LV = 0
+        self.Face = 0
+        self.FacePic = 0
         self.MaxHP = 0
         self.MaxHPEx = 0
         self.MaxProDef = 0
@@ -17748,6 +17768,8 @@
         length += 4
         length += 4
         length += 4
+        length += 4
+        length += 4
 
         return length
 
@@ -17758,6 +17780,8 @@
         data = CommFunc.WriteString(data, self.NameLen, self.PlayerName)
         data = CommFunc.WriteBYTE(data, self.Job)
         data = CommFunc.WriteWORD(data, self.LV)
+        data = CommFunc.WriteDWORD(data, self.Face)
+        data = CommFunc.WriteDWORD(data, self.FacePic)
         data = CommFunc.WriteDWORD(data, self.MaxHP)
         data = CommFunc.WriteDWORD(data, self.MaxHPEx)
         data = CommFunc.WriteDWORD(data, self.MaxProDef)
@@ -17770,6 +17794,8 @@
                                 PlayerName:%s,
                                 Job:%d,
                                 LV:%d,
+                                Face:%d,
+                                FacePic:%d,
                                 MaxHP:%d,
                                 MaxHPEx:%d,
                                 MaxProDef:%d
@@ -17780,6 +17806,8 @@
                                 self.PlayerName,
                                 self.Job,
                                 self.LV,
+                                self.Face,
+                                self.FacePic,
                                 self.MaxHP,
                                 self.MaxHPEx,
                                 self.MaxProDef
@@ -52635,6 +52663,8 @@
     LV = 0    #(WORD LV)// 玩家等级
     Job = 0    #(BYTE Job)// 玩家职业, 如果是机器人,则职业有值,服务端控制
     RealmLV = 0    #(WORD RealmLV)// 玩家境界等级
+    Face = 0    #(DWORD Face)//基本脸型
+    FacePic = 0    #(DWORD FacePic)//头像框
     FightPower = 0    #(DWORD FightPower)// 玩家战力
     Relation = 0    #(BYTE Relation)// 关系:0-无,1-好友,2-盟友
     IsNeedGold = 0    #(BYTE IsNeedGold)// 是否需要仙玉召唤
@@ -52653,6 +52683,8 @@
         self.LV,_pos = CommFunc.ReadWORD(_lpData, _pos)
         self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.RealmLV,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.FightPower,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.Relation,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.IsNeedGold,_pos = CommFunc.ReadBYTE(_lpData, _pos)
@@ -52666,6 +52698,8 @@
         self.LV = 0
         self.Job = 0
         self.RealmLV = 0
+        self.Face = 0
+        self.FacePic = 0
         self.FightPower = 0
         self.Relation = 0
         self.IsNeedGold = 0
@@ -52681,6 +52715,8 @@
         length += 1
         length += 2
         length += 4
+        length += 4
+        length += 4
         length += 1
         length += 1
 
@@ -52695,6 +52731,8 @@
         data = CommFunc.WriteWORD(data, self.LV)
         data = CommFunc.WriteBYTE(data, self.Job)
         data = CommFunc.WriteWORD(data, self.RealmLV)
+        data = CommFunc.WriteDWORD(data, self.Face)
+        data = CommFunc.WriteDWORD(data, self.FacePic)
         data = CommFunc.WriteDWORD(data, self.FightPower)
         data = CommFunc.WriteBYTE(data, self.Relation)
         data = CommFunc.WriteBYTE(data, self.IsNeedGold)
@@ -52709,6 +52747,8 @@
                                 LV:%d,
                                 Job:%d,
                                 RealmLV:%d,
+                                Face:%d,
+                                FacePic:%d,
                                 FightPower:%d,
                                 Relation:%d,
                                 IsNeedGold:%d
@@ -52721,6 +52761,8 @@
                                 self.LV,
                                 self.Job,
                                 self.RealmLV,
+                                self.Face,
+                                self.FacePic,
                                 self.FightPower,
                                 self.Relation,
                                 self.IsNeedGold
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBHelpBattle.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBHelpBattle.py
index b3dd416..55f0c46 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBHelpBattle.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBHelpBattle.py
@@ -374,6 +374,8 @@
             helpPlayer.Name =  helpPlayerInfoDict["Name"]
             helpPlayer.NameLen =  len(helpPlayer.Name)
             helpPlayer.LV =  helpPlayerInfoDict["LV"]
+            helpPlayer.Face =  helpPlayerInfoDict["Face"]
+            helpPlayer.FacePic =  helpPlayerInfoDict["FacePic"]
             helpPlayer.RealmLV =  helpPlayerInfoDict["RealmLV"]
             helpPlayer.FightPower =  helpPlayerInfoDict["FightPower"]
             helpPlayer.Relation = helpPlayerInfoDict.get("Relation", 0)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GMTExec/CrossPK.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GMTExec/CrossPK.py
index dd3b25d..dfcf81b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GMTExec/CrossPK.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/GMTExec/CrossPK.py
@@ -67,6 +67,8 @@
                           "playerID":curPlayer.GetPlayerID(),
                           "playerName":CrossRealmPlayer.GetCrossPlayerName(curPlayer),
                           "playerJob":curPlayer.GetJob(),
+                          "face":curPlayer.GetFace(),
+                          "facePic":curPlayer.GetFacePic(),
                           "fightPower":PlayerControl.GetFightPower(curPlayer),
                           "realmLV":curPlayer.GetOfficialRank(),
                           "ondayScore":curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_CrossPK_OnDayScore),
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py
index 853e301..e402266 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py
@@ -254,6 +254,8 @@
                    "playerName":CrossRealmPlayer.GetCrossPlayerName(curPlayer),
                    "playerJob":curPlayer.GetJob(),
                    "playerLV":curPlayer.GetLV(),
+                   "face":curPlayer.GetFace(),
+                   "facePic":curPlayer.GetFacePic(),
                    "maxHP":GameObj.GetMaxHP(curPlayer),
                    "maxProDef":PlayerControl.GetMaxProDef(curPlayer),
                    "fightPower":PlayerControl.GetFightPower(curPlayer),

--
Gitblit v1.8.0