From 98b852da306e3f10ae7a36034e3d259f18df290b Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期五, 01 十一月 2024 15:10:02 +0800 Subject: [PATCH] 10261 【越南】【砍树】【英文】【tqxbqy】头像框,头像(补充通知:A922、A923、A927、A928、B920、B922、B033、B035) --- ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldArena.py | 94 ++++------- ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameXiangong.py | 8 ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFuncTeam.py | 10 + ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 160 ++++++++++++++++++- ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 160 ++++++++++++++++++- ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py | 12 + 6 files changed, 355 insertions(+), 89 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py index b4a37a1..5020ad6 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py @@ -2996,6 +2996,8 @@ AddScore = "" #(String AddScore)//本次对战增加的积分,有正负 IsWin = 0 #(BYTE IsWin)//是否获胜 Time = 0 #(DWORD Time)//时间戳 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 data = None def __init__(self): @@ -3016,6 +3018,8 @@ self.AddScore,_pos = CommFunc.ReadString(_lpData, _pos,self.AddScoreLen) self.IsWin,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.Time,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -3031,6 +3035,8 @@ self.AddScore = "" self.IsWin = 0 self.Time = 0 + self.Face = 0 + self.FacePic = 0 return def GetLength(self): @@ -3046,6 +3052,8 @@ length += 1 length += len(self.AddScore) length += 1 + length += 4 + length += 4 length += 4 return length @@ -3064,6 +3072,8 @@ data = CommFunc.WriteString(data, self.AddScoreLen, self.AddScore) data = CommFunc.WriteBYTE(data, self.IsWin) data = CommFunc.WriteDWORD(data, self.Time) + data = CommFunc.WriteDWORD(data, self.Face) + data = CommFunc.WriteDWORD(data, self.FacePic) return data def OutputString(self): @@ -3079,7 +3089,9 @@ AddScoreLen:%d, AddScore:%s, IsWin:%d, - Time:%d + Time:%d, + Face:%d, + FacePic:%d '''\ %( self.PlayerID, @@ -3093,7 +3105,9 @@ self.AddScoreLen, self.AddScore, self.IsWin, - self.Time + self.Time, + self.Face, + self.FacePic ) return DumpString @@ -3176,6 +3190,8 @@ FightPower = 0 #(DWORD FightPower)//战力求余亿部分,机器人读等级表取等级对应战力 FightPowerEx = 0 #(DWORD FightPowerEx)//战力整除亿部分,机器人读等级表取等级对应战力 Score = 0 #(DWORD Score)//积分 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 data = None def __init__(self): @@ -3192,6 +3208,8 @@ self.FightPower,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.Score,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -3203,6 +3221,8 @@ self.FightPower = 0 self.FightPowerEx = 0 self.Score = 0 + self.Face = 0 + self.FacePic = 0 return def GetLength(self): @@ -3212,6 +3232,8 @@ length += 1 length += 2 length += 2 + length += 4 + length += 4 length += 4 length += 4 length += 4 @@ -3228,6 +3250,8 @@ data = CommFunc.WriteDWORD(data, self.FightPower) data = CommFunc.WriteDWORD(data, self.FightPowerEx) data = CommFunc.WriteDWORD(data, self.Score) + data = CommFunc.WriteDWORD(data, self.Face) + data = CommFunc.WriteDWORD(data, self.FacePic) return data def OutputString(self): @@ -3239,7 +3263,9 @@ RealmLV:%d, FightPower:%d, FightPowerEx:%d, - Score:%d + Score:%d, + Face:%d, + FacePic:%d '''\ %( self.PlayerID, @@ -3249,7 +3275,9 @@ self.RealmLV, self.FightPower, self.FightPowerEx, - self.Score + self.Score, + self.Face, + self.FacePic ) return DumpString @@ -5824,6 +5852,8 @@ LV = 0 #(WORD LV)// 玩家等级 Job = 0 #(BYTE Job)// 玩家职业 RealmLV = 0 #(WORD RealmLV)// 玩家境界 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 EquipShowSwitch = 0 #(DWORD EquipShowSwitch) EquipShowIDCount = 0 #(BYTE EquipShowIDCount) EquipShowID = list() #(vector<DWORD> EquipShowID) @@ -5843,6 +5873,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.EquipShowSwitch,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.EquipShowIDCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) for i in range(self.EquipShowIDCount): @@ -5859,6 +5891,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.EquipShowSwitch = 0 self.EquipShowIDCount = 0 self.EquipShowID = list() @@ -5875,6 +5909,8 @@ length += 1 length += 2 length += 4 + length += 4 + length += 4 length += 1 length += 4 * self.EquipShowIDCount @@ -5890,6 +5926,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.EquipShowSwitch) data = CommFunc.WriteBYTE(data, self.EquipShowIDCount) for i in range(self.EquipShowIDCount): @@ -5906,6 +5944,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, EquipShowSwitch:%d, EquipShowIDCount:%d, EquipShowID:%s @@ -5919,6 +5959,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.EquipShowSwitch, self.EquipShowIDCount, "..." @@ -6011,6 +6053,8 @@ LV = 0 #(WORD LV)// 玩家等级 Job = 0 #(BYTE Job)// 玩家职业 RealmLV = 0 #(WORD RealmLV)// 玩家境界 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 data = None def __init__(self): @@ -6027,6 +6071,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) return _pos def Clear(self): @@ -6038,6 +6084,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 return def GetLength(self): @@ -6050,6 +6098,8 @@ length += 2 length += 1 length += 2 + length += 4 + length += 4 return length @@ -6063,6 +6113,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) return data def OutputString(self): @@ -6074,7 +6126,9 @@ Name:%s, LV:%d, Job:%d, - RealmLV:%d + RealmLV:%d, + Face:%d, + FacePic:%d '''\ %( self.AddTime, @@ -6084,7 +6138,9 @@ self.Name, self.LV, self.Job, - self.RealmLV + self.RealmLV, + self.Face, + self.FacePic ) return DumpString @@ -8504,7 +8560,9 @@ RobPlayerID = 0 #(DWORD RobPlayerID)// 抢夺玩家ID,为0时代表没人抢夺 RobWorkerCount = 0 #(BYTE RobWorkerCount)// 抢夺工人个数 RobPlayerName = "" #(char RobPlayerName[33]) + RobJob = 0 #(BYTE RobJob) RobFace = 0 #(DWORD RobFace) + RobFacePic = 0 #(DWORD RobFacePic) data = None def __init__(self): @@ -8526,7 +8584,9 @@ self.RobPlayerID,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.RobWorkerCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.RobPlayerName,_pos = CommFunc.ReadString(_lpData, _pos,33) + self.RobJob,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.RobFace,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.RobFacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -8543,7 +8603,9 @@ self.RobPlayerID = 0 self.RobWorkerCount = 0 self.RobPlayerName = "" + self.RobJob = 0 self.RobFace = 0 + self.RobFacePic = 0 return def GetLength(self): @@ -8561,6 +8623,8 @@ length += 4 length += 1 length += 33 + length += 1 + length += 4 length += 4 return length @@ -8580,7 +8644,9 @@ data = CommFunc.WriteDWORD(data, self.RobPlayerID) data = CommFunc.WriteBYTE(data, self.RobWorkerCount) data = CommFunc.WriteString(data, 33, self.RobPlayerName) + data = CommFunc.WriteBYTE(data, self.RobJob) data = CommFunc.WriteDWORD(data, self.RobFace) + data = CommFunc.WriteDWORD(data, self.RobFacePic) return data def OutputString(self): @@ -8598,7 +8664,9 @@ RobPlayerID:%d, RobWorkerCount:%d, RobPlayerName:%s, - RobFace:%d + RobJob:%d, + RobFace:%d, + RobFacePic:%d '''\ %( self.Index, @@ -8614,7 +8682,9 @@ self.RobPlayerID, self.RobWorkerCount, self.RobPlayerName, - self.RobFace + self.RobJob, + self.RobFace, + self.RobFacePic ) return DumpString @@ -8622,7 +8692,9 @@ class tagGCMineArea(Structure): PlayerID = 0 #(DWORD PlayerID)// 福地所属玩家ID,可能是自己或其他玩家ID,当ID小于10000时为假人 PlayerName = "" #(char PlayerName[33])// 可能为空,如自己或假人 + Job = 0 #(BYTE Job) Face = 0 #(DWORD Face) + FacePic = 0 #(DWORD FacePic) MineCount = 0 #(BYTE MineCount) MineItemList = list() #(vector<tagGCMineItem> MineItemList)// 矿物列表 data = None @@ -8635,7 +8707,9 @@ self.Clear() self.PlayerID,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.PlayerName,_pos = CommFunc.ReadString(_lpData, _pos,33) + self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.MineCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) for i in range(self.MineCount): temMineItemList = tagGCMineItem() @@ -8646,7 +8720,9 @@ def Clear(self): self.PlayerID = 0 self.PlayerName = "" + self.Job = 0 self.Face = 0 + self.FacePic = 0 self.MineCount = 0 self.MineItemList = list() return @@ -8655,6 +8731,8 @@ length = 0 length += 4 length += 33 + length += 1 + length += 4 length += 4 length += 1 for i in range(self.MineCount): @@ -8666,7 +8744,9 @@ data = '' data = CommFunc.WriteDWORD(data, self.PlayerID) data = CommFunc.WriteString(data, 33, self.PlayerName) + data = CommFunc.WriteBYTE(data, self.Job) data = CommFunc.WriteDWORD(data, self.Face) + data = CommFunc.WriteDWORD(data, self.FacePic) data = CommFunc.WriteBYTE(data, self.MineCount) for i in range(self.MineCount): data = CommFunc.WriteString(data, self.MineItemList[i].GetLength(), self.MineItemList[i].GetBuffer()) @@ -8676,14 +8756,18 @@ DumpString = ''' PlayerID:%d, PlayerName:%s, + Job:%d, Face:%d, + FacePic:%d, MineCount:%d, MineItemList:%s '''\ %( self.PlayerID, self.PlayerName, + self.Job, self.Face, + self.FacePic, self.MineCount, "..." ) @@ -8779,7 +8863,9 @@ RecordTime = 0 #(DWORD RecordTime)// 记录时间戳 MineID = 0 #(WORD MineID)// 矿物ID,对应福地采集表中ID TagPlayerName = "" #(char TagPlayerName[33]) + TagJob = 0 #(BYTE TagJob) TagFace = 0 #(DWORD TagFace) + TagFacePic = 0 #(DWORD TagFacePic) data = None def __init__(self): @@ -8793,7 +8879,9 @@ self.RecordTime,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.MineID,_pos = CommFunc.ReadWORD(_lpData, _pos) self.TagPlayerName,_pos = CommFunc.ReadString(_lpData, _pos,33) + self.TagJob,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.TagFace,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.TagFacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -8802,7 +8890,9 @@ self.RecordTime = 0 self.MineID = 0 self.TagPlayerName = "" + self.TagJob = 0 self.TagFace = 0 + self.TagFacePic = 0 return def GetLength(self): @@ -8812,6 +8902,8 @@ length += 4 length += 2 length += 33 + length += 1 + length += 4 length += 4 return length @@ -8823,7 +8915,9 @@ data = CommFunc.WriteDWORD(data, self.RecordTime) data = CommFunc.WriteWORD(data, self.MineID) data = CommFunc.WriteString(data, 33, self.TagPlayerName) + data = CommFunc.WriteBYTE(data, self.TagJob) data = CommFunc.WriteDWORD(data, self.TagFace) + data = CommFunc.WriteDWORD(data, self.TagFacePic) return data def OutputString(self): @@ -8833,7 +8927,9 @@ RecordTime:%d, MineID:%d, TagPlayerName:%s, - TagFace:%d + TagJob:%d, + TagFace:%d, + TagFacePic:%d '''\ %( self.RecordType, @@ -8841,7 +8937,9 @@ self.RecordTime, self.MineID, self.TagPlayerName, - self.TagFace + self.TagJob, + self.TagFace, + self.TagFacePic ) return DumpString @@ -13204,6 +13302,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)// 战力,求余亿 FightPowerEx = 0 #(DWORD FightPowerEx)// 战力,整除亿 Value1 = 0 #(DWORD Value1)//值1 @@ -13223,6 +13323,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.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.Value1,_pos = CommFunc.ReadDWORD(_lpData, _pos) @@ -13237,6 +13339,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.FightPower = 0 self.FightPowerEx = 0 self.Value1 = 0 @@ -13256,6 +13360,8 @@ length += 4 length += 4 length += 4 + length += 4 + length += 4 return length @@ -13268,6 +13374,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.WriteDWORD(data, self.FightPowerEx) data = CommFunc.WriteDWORD(data, self.Value1) @@ -13283,6 +13391,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, FightPower:%d, FightPowerEx:%d, Value1:%d, @@ -13296,6 +13406,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.FightPower, self.FightPowerEx, self.Value1, @@ -13602,6 +13714,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)// 战力,求余亿 FightPowerEx = 0 #(DWORD FightPowerEx)// 战力,整除亿 data = None @@ -13619,6 +13733,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.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos @@ -13631,6 +13747,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.FightPower = 0 self.FightPowerEx = 0 return @@ -13646,6 +13764,8 @@ length += 2 length += 4 length += 4 + length += 4 + length += 4 return length @@ -13658,6 +13778,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.WriteDWORD(data, self.FightPowerEx) return data @@ -13671,6 +13793,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, FightPower:%d, FightPowerEx:%d '''\ @@ -13682,6 +13806,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.FightPower, self.FightPowerEx ) @@ -13696,6 +13822,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)// 战力,求余亿 FightPowerEx = 0 #(DWORD FightPowerEx)// 战力,整除亿 OfflineValue = 0 #(DWORD OfflineValue)// 离线值:0-在线;1-离线;>1-上次离线时间戳,可用于计算离线多久了;当取不到玩家信息时用1代表已离线; @@ -13716,6 +13844,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.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.OfflineValue,_pos = CommFunc.ReadDWORD(_lpData, _pos) @@ -13731,6 +13861,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.FightPower = 0 self.FightPowerEx = 0 self.OfflineValue = 0 @@ -13752,6 +13884,8 @@ length += 4 length += 4 length += 4 + length += 4 + length += 4 return length @@ -13764,6 +13898,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.WriteDWORD(data, self.FightPowerEx) data = CommFunc.WriteDWORD(data, self.OfflineValue) @@ -13780,6 +13916,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, FightPower:%d, FightPowerEx:%d, OfflineValue:%d, @@ -13794,6 +13932,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.FightPower, self.FightPowerEx, self.OfflineValue, diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldArena.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldArena.py index cbccd5c..4cea4dc 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldArena.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldArena.py @@ -56,6 +56,8 @@ self.tagLV = 0 self.tagJob = 0 self.tagScore = 0 + self.tagFace = 0 + self.tagFacePic = 0 return class ArenaBattleRec(): @@ -73,6 +75,8 @@ self.tagPlayerID = 0 # 小于10000的为机器人ID self.tagLV = 0 self.tagJob = 0 + self.tagFace = 0 + self.tagFacePic = 0 self.tagScore = 0 self.addScore = 0 @@ -91,6 +95,7 @@ value4 tagScore 目标积分,非实时积分,一般机器人时有用 strValue1 resultInfo isWin,addScore strValue2 updInfo isDispose,updScore +strValue3 faceInfo face,facePic ''' ''' 榜单数据 ''' @@ -102,70 +107,16 @@ def SetArenaBillRealmLV(billData, realmLV): return billData.SetValue1(realmLV) def GetArenaBillLV(billData): return billData.GetValue2() def SetArenaBillLV(billData, lv): billData.SetValue2(lv) +def GetArenaBillFace(billData): return billData.GetValue3() +def SetArenaBillFace(billData, face): billData.SetValue3(face) +def GetArenaBillFacePic(billData): return billData.GetValue4() +def SetArenaBillFacePic(billData, facePic): billData.SetValue4(facePic) def GetArenaBillScore(billData): return billData.GetCmpValue() def SetArenaBillScore(billData, score): return billData.SetCmpValue(score) def GetArenaBillFightPower(billData): return billData.GetCmpValue2() * ShareDefine.Def_PerPointValue + billData.GetCmpValue3() def SetArenaBillFightPower(billData, fightPower): billData.SetCmpValue2(fightPower / ShareDefine.Def_PerPointValue) billData.SetCmpValue3(fightPower % ShareDefine.Def_PerPointValue) - return - -def RepairArenaBillboardFightPower(): - ## 修正竞技场榜单的战力数据,支持20亿,bt3_1.100.1 下次大版本更新后可删除 - - repairStateKey = "RepairArenaBillboardFightPower" - repairState = PlayerDBGSEvent.GetDBGSTrig_ByKey(repairStateKey) - if repairState: - GameWorld.DebugLog("=== 已经修正竞技场榜单数据 ===") - return - - GameWorld.Log("=== 修正竞技场榜单数据 Start ===") - - worldLV = PlayerDBGSEvent.GetDBGSTrig_ByKey(ShareDefine.Def_Notify_WorldKey_WorldAverageLv) - PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_ArenaWorldLV, worldLV) - GameWorld.Log(" SetDBGSTrig_ByKey %s=%s" % (PlayerDBGSEvent.Def_ArenaWorldLV, worldLV)) - - robotMaxCount = IpyGameDataPY.GetFuncCfg("ArenaRobot", 1) - __RandRobotLVList(robotMaxCount) - GameWorld.Log(" PyGameData.g_arenaRobotLVList len=%s, %s" % (len(PyGameData.g_arenaRobotLVList), PyGameData.g_arenaRobotLVList)) - - billBoard = GameWorld.GetBillboard().FindBillboard(ShareDefine.Def_BT_Arena) - if not billBoard: - return - - for index in xrange(billBoard.GetCount()): - - order = index + 1 - billBoardData = billBoard.At(index) - if not billBoardData: - continue - - playerID = billBoardData.GetID() - fightPower = billBoardData.GetCmpValue2() # 旧战力只存在比较值2 - - if playerID <= MaxRobotID: - curLV = GetArenaBillLV(billBoardData) - updLV = curLV - if index < len(PyGameData.g_arenaRobotLVList): - updLV = PyGameData.g_arenaRobotLVList[index] - GameWorld.Log(" 修正机器人等级: order=%s,playerID=%s,curLV=%s,updLV=%s" - % (order, playerID, curLV, updLV)) - SetArenaBillLV(billBoardData, updLV) - SetArenaBillFightPower(billBoardData, 0) - continue - - curCache = PlayerViewCache.FindViewCache(playerID) - if curCache: - cacheDict = PlayerViewCache.GetCachePropDataDict(curCache) - fightPower = cacheDict["FightPower"] - - SetArenaBillFightPower(billBoardData, fightPower) - GameWorld.Log(" 修正真玩家战力: order=%s,playerID=%s,fightPower=%s,cmpValue2=%s,cmpValue3=%s" - % (order, playerID, fightPower, billBoardData.GetCmpValue2(), billBoardData.GetCmpValue3())) - - billBoard.Sort() - PlayerDBGSEvent.SetDBGSTrig_ByKey(repairStateKey, 1) - GameWorld.Log("=== 修正竞技场榜单的战力数据 OK ===") return def OnServerStart(): @@ -193,6 +144,11 @@ battleRec.isDispose = int(updInfo[0] if len(updInfo) > 0 else 0) battleRec.updScore = int(updInfo[1] if len(updInfo) > 1 else 0) + strValue3 = recData.GetStrValue3() + faceInfo = strValue3.split(",") if strValue3 else [] + battleRec.tagFace = int(faceInfo[0] if len(faceInfo) > 0 else 0) + battleRec.tagFacePic = int(faceInfo[1] if len(faceInfo) > 1 else 0) + battleRecList = GetPlayerArenaBattleRecList(playerID) battleRecList.append(battleRec) @@ -215,7 +171,6 @@ else: __ResetArenaRobotBillboard() - RepairArenaBillboardFightPower() return def OnServerClose(): @@ -236,6 +191,7 @@ recData.SetStrValue1("%s,%s" % (int(battleRec.isWin), battleRec.addScore)) recData.SetStrValue2("%s,%s" % (int(battleRec.isDispose), battleRec.updScore)) + recData.SetStrValue3("%s,%s" % (battleRec.tagFace, battleRec.tagFacePic)) return @@ -795,6 +751,8 @@ SetArenaBillRealmLV(billData, cacheDict["RealmLV"]) SetArenaBillLV(billData, cacheDict["LV"]) SetArenaBillFightPower(billData, cacheDict["FightPower"]) + SetArenaBillFace(billData, cacheDict.get("Face", 0)) + SetArenaBillFacePic(billData, cacheDict.get("FacePic", 0)) else: if matchIndex < len(PyGameData.g_arenaRobotLVList): robotLV = PyGameData.g_arenaRobotLVList[matchIndex] # 同步更新机器人榜单变化等级 @@ -803,6 +761,8 @@ matchPlayer.tagLV = GetArenaBillLV(billData) matchPlayer.tagJob = GetArenaBillJob(billData) matchPlayer.tagScore = GetArenaBillScore(billData) + matchPlayer.tagFace = GetArenaBillFace(billData) + matchPlayer.tagFacePic = GetArenaBillFacePic(billData) GameWorld.DebugLog(" %s 匹配在榜单上的: tagPlayerID=%s,tagLV=%s,tagScore=%s,matchOrder=%s" % (i + 1, matchPlayer.tagPlayerID, matchPlayer.tagLV, matchPlayer.tagScore, matchOrder), playerID) @@ -834,6 +794,8 @@ matchInfo.Job = matchPlayer.tagJob matchInfo.LV = matchPlayer.tagLV matchInfo.Score = matchPlayer.tagScore + matchInfo.Face = matchPlayer.tagFace + matchInfo.FacePic = matchPlayer.tagFacePic # 玩家读取额外信息, 机器人其他信息不处理,这里直接读最新的查看缓存,防止刷新不及时(并不是实时数据,只是相对实时,前端可自行控制刷新频率) if matchInfo.PlayerID > MaxRobotID: @@ -846,6 +808,8 @@ matchInfo.RealmLV = cacheDict["RealmLV"] matchInfo.FightPower = fightPower % ShareDefine.Def_PerPointValue matchInfo.FightPowerEx = fightPower / ShareDefine.Def_PerPointValue + matchInfo.Face = cacheDict.get("Face", 0) + matchInfo.FacePic = cacheDict.get("FacePic", 0) else: # 此处机器人的暂忽略等级变化的同步,仅在刷新、更新积分时同步,此处省略查询机器人所属榜单排名 pass @@ -885,7 +849,7 @@ curScore = playerScore isFindTag = False - tagLV, tagJob, tagScore = 0, 0, 0 + tagLV, tagJob, tagScore, tagFace, tagFacePic = 0, 0, 0, 0, 0 tagRealmLV, tagFightPower, tagAccID = 0, 0, "" # 机器人无值 # 先找匹配列表 @@ -893,7 +857,7 @@ for matchPlayer in matchList: if matchPlayer.tagPlayerID == tagPlayerID: isFindTag = True - tagLV, tagJob, tagScore = matchPlayer.tagLV, matchPlayer.tagJob, matchPlayer.tagScore + tagLV, tagJob, tagScore, tagFace, tagFacePic = matchPlayer.tagLV, matchPlayer.tagJob, matchPlayer.tagScore, matchPlayer.tagFace, matchPlayer.tagFacePic GameWorld.DebugLog(" 对手在匹配列表中! tagLV=%s, tagJob=%s, tagScore=%s" % (tagLV, tagJob, tagScore), playerID) break @@ -903,7 +867,7 @@ for battleRec in curBattleRecList: if battleRec.tagPlayerID == tagPlayerID: isFindTag = True - tagLV, tagJob, tagScore = battleRec.tagLV, battleRec.tagJob, battleRec.tagScore + tagLV, tagJob, tagScore, tagFace, tagFacePic = battleRec.tagLV, battleRec.tagJob, battleRec.tagScore, battleRec.tagFace, battleRec.tagFacePic GameWorld.DebugLog(" 对手在对战记录中! tagLV=%s, tagJob=%s, tagScore=%s" % (tagLV, tagJob, tagScore), playerID) break @@ -1012,6 +976,8 @@ battleRec.addScore = addScore battleRec.isDispose = 1 battleRec.updScore = updScore + battleRec.tagFace = tagFace + battleRec.tagFacePic = tagFacePic curBattleRecList.append(battleRec) if len(curBattleRecList) > battleRecMaxCount: curBattleRecList = curBattleRecList[len(curBattleRecList) - battleRecMaxCount:] @@ -1030,6 +996,8 @@ tagBattleRec.addScore = tagAddScore tagBattleRec.isDispose = 1 if tagOnline else 0 tagBattleRec.updScore = updTagScore + tagBattleRec.tagFace = face + tagBattleRec.tagFacePic = facePic tagBattleRecList.append(tagBattleRec) if len(tagBattleRecList) > battleRecMaxCount: tagBattleRecList = tagBattleRecList[len(tagBattleRecList) - battleRecMaxCount:] @@ -1116,6 +1084,8 @@ recInfo.AddScoreLen = len(recInfo.AddScore) recInfo.IsWin = battleRec.isWin recInfo.Time = battleRec.battleTime + recInfo.Face = battleRec.tagFace + recInfo.FacePic = battleRec.tagFacePic if recInfo.PlayerID > MaxRobotID: curCache = PlayerViewCache.FindViewCache(recInfo.PlayerID) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py index 7d598fa..85cc3ce 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py @@ -1350,7 +1350,9 @@ if areaPlayerID > Def_FakeAreaCount: cacheDict = PlayerViewCache.GetCachePropDataDict(PlayerViewCache.FindViewCache(areaPlayerID)) areaInfo.PlayerName = cacheDict.get("Name", "") - areaInfo.Face = cacheDict.get("Job", 0) + areaInfo.Job = cacheDict.get("Job", 0) + areaInfo.Face = cacheDict.get("Face", 0) + areaInfo.FacePic = cacheDict.get("FacePic", 0) areaInfo.MineItemList = [] if not mineIndexList: @@ -1373,7 +1375,9 @@ if mineItemData.RobPlayerID: robCacheDict = PlayerViewCache.GetCachePropDataDict(PlayerViewCache.FindViewCache(mineItemData.RobPlayerID)) mineItem.RobPlayerName = robCacheDict.get("Name", "") - mineItem.RobFace = robCacheDict.get("Job", 0) + mineItem.RobJob = robCacheDict.get("Job", 0) + mineItem.RobFace = robCacheDict.get("Face", 0) + mineItem.RobFacePic = robCacheDict.get("FacePic", 0) areaInfo.MineItemList.append(mineItem) areaInfo.MineCount = len(areaInfo.MineItemList) @@ -1397,7 +1401,9 @@ if playerID != recordInfo.TagPlayerID and recordInfo.TagPlayerID > Def_FakeAreaCount: tagCacheDict = PlayerViewCache.GetCachePropDataDict(PlayerViewCache.FindViewCache(recordInfo.TagPlayerID)) recordInfo.TagPlayerName = tagCacheDict.get("Name", "") - recordInfo.TagFace = tagCacheDict.get("Job", 0) + recordInfo.TagJob = tagCacheDict.get("Job", 0) + recordInfo.TagFace = tagCacheDict.get("Face", 0) + recordInfo.TagFacePic = tagCacheDict.get("FacePic", 0) clientPack.AreaRecordList.append(recordInfo) clientPack.RecordCount = len(clientPack.AreaRecordList) NetPackCommon.SendFakePack(curPlayer, clientPack) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameXiangong.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameXiangong.py index 3db46f0..05f33e9 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameXiangong.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameXiangong.py @@ -65,7 +65,7 @@ gameRecMgr = PyDataManager.GetDBGameRecDataManager() recData = gameRecMgr.AddGameRecData(ShareDefine.Def_GameRecType_Xiangong, xiangongID, [playerID]) - playerInfo = PlayerViewCache.GetShotCacheDict(playerID, "ServerID") + playerInfo = PlayerViewCache.GetShotCacheDict(playerID, "ServerID", "Face", "FacePic") serverID = playerInfo.get("ServerID", 0) saveServerIDList = [] + serverIDList # 重新创建一份存储,不改变传入值 @@ -140,7 +140,7 @@ GameWorld.DebugLog(" xgPlayerID=%s,playerServerID=%s not in %s" % (xgPlayerID, playerServerID, serverIDList)) continue - playerInfo = PlayerViewCache.GetShotCacheDict(xgPlayerID, "PlayerID", "ServerID", "Model") + playerInfo = PlayerViewCache.GetShotCacheDict(xgPlayerID, "PlayerID", "ServerID", "Model", "Face", "FacePic") if not playerInfo: GameWorld.Log("找不到玩家缓存的暂不同步仙宫新晋仙官! xgPlayerID=%s" % xgPlayerID) continue @@ -275,6 +275,8 @@ newP.LV = playerInfo["LV"] newP.Job = playerInfo["Job"] newP.RealmLV = playerInfo["RealmLV"] + newP.Face = playerInfo.get("Face", 0) + newP.FacePic = playerInfo.get("FacePic", 0) newP.EquipShowSwitch = playerInfo["EquipShowSwitch"] newP.EquipShowID = playerInfo["EquipShowID"] newP.EquipShowIDCount = len(newP.EquipShowID) @@ -354,6 +356,8 @@ recP.LV = playerInfo["LV"] recP.Job = playerInfo["Job"] recP.RealmLV = playerInfo["RealmLV"] + recP.Face = playerInfo.get("Face", 0) + recP.FacePic = playerInfo.get("FacePic", 0) recPlayerList.append(recP) clientPack = ChPyNetSendPack.tagGCXiangongRecPlayerInfo() diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFuncTeam.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFuncTeam.py index 3e7543a..a224186 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFuncTeam.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFuncTeam.py @@ -70,7 +70,7 @@ def GetSyncDict(self): # Value 暂时只同步1~2 syncDict = {"PlayerID":self.GetPlayerID(), "Value1":self.GetValue1(), "Value2":self.GetValue2()} - syncDict.update(PlayerViewCache.GetShotCacheDict(self.GetPlayerID(), "PlayerID", "FightPower", "ServerID", "OfflineValue")) + syncDict.update(PlayerViewCache.GetShotCacheDict(self.GetPlayerID(), "PlayerID", "FightPower", "ServerID", "OfflineValue", "Face", "FacePic")) return syncDict class PyFuncTeam(): @@ -127,7 +127,7 @@ ApplyList = [] if applyDetail: for applyID in ApplyIDList[::-1]: - applyPlayerDict = PlayerViewCache.GetShotCacheDict(applyID, "PlayerID", "FightPower", "ServerID") + applyPlayerDict = PlayerViewCache.GetShotCacheDict(applyID, "PlayerID", "FightPower", "ServerID", "Face", "FacePic") if not applyPlayerDict: ApplyIDList.remove(applyID) else: @@ -827,6 +827,8 @@ mem.LV = memberInfo.get("LV", 0) mem.Job = memberInfo.get("Job", 0) mem.RealmLV = memberInfo.get("RealmLV", 0) + mem.Face = memberInfo.get("Face", 0) + mem.FacePic = memberInfo.get("FacePic", 0) mem.FightPower = memberInfo.get("FightPower", 0) % ChConfig.Def_PerPointValue mem.FightPowerEx = memberInfo.get("FightPower", 0) / ChConfig.Def_PerPointValue mem.Value1 = memberInfo["Value1"] @@ -888,6 +890,8 @@ mem.LV = memberInfo.get("LV", 0) mem.Job = memberInfo.get("Job", 0) mem.RealmLV = memberInfo.get("RealmLV", 0) + mem.Face = memberInfo.get("Face", 0) + mem.FacePic = memberInfo.get("FacePic", 0) mem.FightPower = memberInfo.get("FightPower", 0) % ChConfig.Def_PerPointValue mem.FightPowerEx = memberInfo.get("FightPower", 0) / ChConfig.Def_PerPointValue mem.OfflineValue = memberInfo.get("OfflineValue", 0) @@ -905,6 +909,8 @@ applyP.LV = applyInfo["LV"] applyP.Job = applyInfo["Job"] applyP.RealmLV = applyInfo["RealmLV"] + applyP.Face = applyInfo.get("Face", 0) + applyP.FacePic = applyInfo.get("FacePic", 0) applyP.FightPower = applyInfo["FightPower"] % ChConfig.Def_PerPointValue applyP.FightPowerEx = applyInfo["FightPower"] / ChConfig.Def_PerPointValue applyList.append(applyP) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py index b4a37a1..5020ad6 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py @@ -2996,6 +2996,8 @@ AddScore = "" #(String AddScore)//本次对战增加的积分,有正负 IsWin = 0 #(BYTE IsWin)//是否获胜 Time = 0 #(DWORD Time)//时间戳 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 data = None def __init__(self): @@ -3016,6 +3018,8 @@ self.AddScore,_pos = CommFunc.ReadString(_lpData, _pos,self.AddScoreLen) self.IsWin,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.Time,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -3031,6 +3035,8 @@ self.AddScore = "" self.IsWin = 0 self.Time = 0 + self.Face = 0 + self.FacePic = 0 return def GetLength(self): @@ -3046,6 +3052,8 @@ length += 1 length += len(self.AddScore) length += 1 + length += 4 + length += 4 length += 4 return length @@ -3064,6 +3072,8 @@ data = CommFunc.WriteString(data, self.AddScoreLen, self.AddScore) data = CommFunc.WriteBYTE(data, self.IsWin) data = CommFunc.WriteDWORD(data, self.Time) + data = CommFunc.WriteDWORD(data, self.Face) + data = CommFunc.WriteDWORD(data, self.FacePic) return data def OutputString(self): @@ -3079,7 +3089,9 @@ AddScoreLen:%d, AddScore:%s, IsWin:%d, - Time:%d + Time:%d, + Face:%d, + FacePic:%d '''\ %( self.PlayerID, @@ -3093,7 +3105,9 @@ self.AddScoreLen, self.AddScore, self.IsWin, - self.Time + self.Time, + self.Face, + self.FacePic ) return DumpString @@ -3176,6 +3190,8 @@ FightPower = 0 #(DWORD FightPower)//战力求余亿部分,机器人读等级表取等级对应战力 FightPowerEx = 0 #(DWORD FightPowerEx)//战力整除亿部分,机器人读等级表取等级对应战力 Score = 0 #(DWORD Score)//积分 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 data = None def __init__(self): @@ -3192,6 +3208,8 @@ self.FightPower,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.Score,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -3203,6 +3221,8 @@ self.FightPower = 0 self.FightPowerEx = 0 self.Score = 0 + self.Face = 0 + self.FacePic = 0 return def GetLength(self): @@ -3212,6 +3232,8 @@ length += 1 length += 2 length += 2 + length += 4 + length += 4 length += 4 length += 4 length += 4 @@ -3228,6 +3250,8 @@ data = CommFunc.WriteDWORD(data, self.FightPower) data = CommFunc.WriteDWORD(data, self.FightPowerEx) data = CommFunc.WriteDWORD(data, self.Score) + data = CommFunc.WriteDWORD(data, self.Face) + data = CommFunc.WriteDWORD(data, self.FacePic) return data def OutputString(self): @@ -3239,7 +3263,9 @@ RealmLV:%d, FightPower:%d, FightPowerEx:%d, - Score:%d + Score:%d, + Face:%d, + FacePic:%d '''\ %( self.PlayerID, @@ -3249,7 +3275,9 @@ self.RealmLV, self.FightPower, self.FightPowerEx, - self.Score + self.Score, + self.Face, + self.FacePic ) return DumpString @@ -5824,6 +5852,8 @@ LV = 0 #(WORD LV)// 玩家等级 Job = 0 #(BYTE Job)// 玩家职业 RealmLV = 0 #(WORD RealmLV)// 玩家境界 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 EquipShowSwitch = 0 #(DWORD EquipShowSwitch) EquipShowIDCount = 0 #(BYTE EquipShowIDCount) EquipShowID = list() #(vector<DWORD> EquipShowID) @@ -5843,6 +5873,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.EquipShowSwitch,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.EquipShowIDCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) for i in range(self.EquipShowIDCount): @@ -5859,6 +5891,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.EquipShowSwitch = 0 self.EquipShowIDCount = 0 self.EquipShowID = list() @@ -5875,6 +5909,8 @@ length += 1 length += 2 length += 4 + length += 4 + length += 4 length += 1 length += 4 * self.EquipShowIDCount @@ -5890,6 +5926,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.EquipShowSwitch) data = CommFunc.WriteBYTE(data, self.EquipShowIDCount) for i in range(self.EquipShowIDCount): @@ -5906,6 +5944,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, EquipShowSwitch:%d, EquipShowIDCount:%d, EquipShowID:%s @@ -5919,6 +5959,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.EquipShowSwitch, self.EquipShowIDCount, "..." @@ -6011,6 +6053,8 @@ LV = 0 #(WORD LV)// 玩家等级 Job = 0 #(BYTE Job)// 玩家职业 RealmLV = 0 #(WORD RealmLV)// 玩家境界 + Face = 0 #(DWORD Face)//基本脸型 + FacePic = 0 #(DWORD FacePic)//头像框 data = None def __init__(self): @@ -6027,6 +6071,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) return _pos def Clear(self): @@ -6038,6 +6084,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 return def GetLength(self): @@ -6050,6 +6098,8 @@ length += 2 length += 1 length += 2 + length += 4 + length += 4 return length @@ -6063,6 +6113,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) return data def OutputString(self): @@ -6074,7 +6126,9 @@ Name:%s, LV:%d, Job:%d, - RealmLV:%d + RealmLV:%d, + Face:%d, + FacePic:%d '''\ %( self.AddTime, @@ -6084,7 +6138,9 @@ self.Name, self.LV, self.Job, - self.RealmLV + self.RealmLV, + self.Face, + self.FacePic ) return DumpString @@ -8504,7 +8560,9 @@ RobPlayerID = 0 #(DWORD RobPlayerID)// 抢夺玩家ID,为0时代表没人抢夺 RobWorkerCount = 0 #(BYTE RobWorkerCount)// 抢夺工人个数 RobPlayerName = "" #(char RobPlayerName[33]) + RobJob = 0 #(BYTE RobJob) RobFace = 0 #(DWORD RobFace) + RobFacePic = 0 #(DWORD RobFacePic) data = None def __init__(self): @@ -8526,7 +8584,9 @@ self.RobPlayerID,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.RobWorkerCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.RobPlayerName,_pos = CommFunc.ReadString(_lpData, _pos,33) + self.RobJob,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.RobFace,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.RobFacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -8543,7 +8603,9 @@ self.RobPlayerID = 0 self.RobWorkerCount = 0 self.RobPlayerName = "" + self.RobJob = 0 self.RobFace = 0 + self.RobFacePic = 0 return def GetLength(self): @@ -8561,6 +8623,8 @@ length += 4 length += 1 length += 33 + length += 1 + length += 4 length += 4 return length @@ -8580,7 +8644,9 @@ data = CommFunc.WriteDWORD(data, self.RobPlayerID) data = CommFunc.WriteBYTE(data, self.RobWorkerCount) data = CommFunc.WriteString(data, 33, self.RobPlayerName) + data = CommFunc.WriteBYTE(data, self.RobJob) data = CommFunc.WriteDWORD(data, self.RobFace) + data = CommFunc.WriteDWORD(data, self.RobFacePic) return data def OutputString(self): @@ -8598,7 +8664,9 @@ RobPlayerID:%d, RobWorkerCount:%d, RobPlayerName:%s, - RobFace:%d + RobJob:%d, + RobFace:%d, + RobFacePic:%d '''\ %( self.Index, @@ -8614,7 +8682,9 @@ self.RobPlayerID, self.RobWorkerCount, self.RobPlayerName, - self.RobFace + self.RobJob, + self.RobFace, + self.RobFacePic ) return DumpString @@ -8622,7 +8692,9 @@ class tagGCMineArea(Structure): PlayerID = 0 #(DWORD PlayerID)// 福地所属玩家ID,可能是自己或其他玩家ID,当ID小于10000时为假人 PlayerName = "" #(char PlayerName[33])// 可能为空,如自己或假人 + Job = 0 #(BYTE Job) Face = 0 #(DWORD Face) + FacePic = 0 #(DWORD FacePic) MineCount = 0 #(BYTE MineCount) MineItemList = list() #(vector<tagGCMineItem> MineItemList)// 矿物列表 data = None @@ -8635,7 +8707,9 @@ self.Clear() self.PlayerID,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.PlayerName,_pos = CommFunc.ReadString(_lpData, _pos,33) + self.Job,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.Face,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.FacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.MineCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) for i in range(self.MineCount): temMineItemList = tagGCMineItem() @@ -8646,7 +8720,9 @@ def Clear(self): self.PlayerID = 0 self.PlayerName = "" + self.Job = 0 self.Face = 0 + self.FacePic = 0 self.MineCount = 0 self.MineItemList = list() return @@ -8655,6 +8731,8 @@ length = 0 length += 4 length += 33 + length += 1 + length += 4 length += 4 length += 1 for i in range(self.MineCount): @@ -8666,7 +8744,9 @@ data = '' data = CommFunc.WriteDWORD(data, self.PlayerID) data = CommFunc.WriteString(data, 33, self.PlayerName) + data = CommFunc.WriteBYTE(data, self.Job) data = CommFunc.WriteDWORD(data, self.Face) + data = CommFunc.WriteDWORD(data, self.FacePic) data = CommFunc.WriteBYTE(data, self.MineCount) for i in range(self.MineCount): data = CommFunc.WriteString(data, self.MineItemList[i].GetLength(), self.MineItemList[i].GetBuffer()) @@ -8676,14 +8756,18 @@ DumpString = ''' PlayerID:%d, PlayerName:%s, + Job:%d, Face:%d, + FacePic:%d, MineCount:%d, MineItemList:%s '''\ %( self.PlayerID, self.PlayerName, + self.Job, self.Face, + self.FacePic, self.MineCount, "..." ) @@ -8779,7 +8863,9 @@ RecordTime = 0 #(DWORD RecordTime)// 记录时间戳 MineID = 0 #(WORD MineID)// 矿物ID,对应福地采集表中ID TagPlayerName = "" #(char TagPlayerName[33]) + TagJob = 0 #(BYTE TagJob) TagFace = 0 #(DWORD TagFace) + TagFacePic = 0 #(DWORD TagFacePic) data = None def __init__(self): @@ -8793,7 +8879,9 @@ self.RecordTime,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.MineID,_pos = CommFunc.ReadWORD(_lpData, _pos) self.TagPlayerName,_pos = CommFunc.ReadString(_lpData, _pos,33) + self.TagJob,_pos = CommFunc.ReadBYTE(_lpData, _pos) self.TagFace,_pos = CommFunc.ReadDWORD(_lpData, _pos) + self.TagFacePic,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos def Clear(self): @@ -8802,7 +8890,9 @@ self.RecordTime = 0 self.MineID = 0 self.TagPlayerName = "" + self.TagJob = 0 self.TagFace = 0 + self.TagFacePic = 0 return def GetLength(self): @@ -8812,6 +8902,8 @@ length += 4 length += 2 length += 33 + length += 1 + length += 4 length += 4 return length @@ -8823,7 +8915,9 @@ data = CommFunc.WriteDWORD(data, self.RecordTime) data = CommFunc.WriteWORD(data, self.MineID) data = CommFunc.WriteString(data, 33, self.TagPlayerName) + data = CommFunc.WriteBYTE(data, self.TagJob) data = CommFunc.WriteDWORD(data, self.TagFace) + data = CommFunc.WriteDWORD(data, self.TagFacePic) return data def OutputString(self): @@ -8833,7 +8927,9 @@ RecordTime:%d, MineID:%d, TagPlayerName:%s, - TagFace:%d + TagJob:%d, + TagFace:%d, + TagFacePic:%d '''\ %( self.RecordType, @@ -8841,7 +8937,9 @@ self.RecordTime, self.MineID, self.TagPlayerName, - self.TagFace + self.TagJob, + self.TagFace, + self.TagFacePic ) return DumpString @@ -13204,6 +13302,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)// 战力,求余亿 FightPowerEx = 0 #(DWORD FightPowerEx)// 战力,整除亿 Value1 = 0 #(DWORD Value1)//值1 @@ -13223,6 +13323,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.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.Value1,_pos = CommFunc.ReadDWORD(_lpData, _pos) @@ -13237,6 +13339,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.FightPower = 0 self.FightPowerEx = 0 self.Value1 = 0 @@ -13256,6 +13360,8 @@ length += 4 length += 4 length += 4 + length += 4 + length += 4 return length @@ -13268,6 +13374,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.WriteDWORD(data, self.FightPowerEx) data = CommFunc.WriteDWORD(data, self.Value1) @@ -13283,6 +13391,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, FightPower:%d, FightPowerEx:%d, Value1:%d, @@ -13296,6 +13406,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.FightPower, self.FightPowerEx, self.Value1, @@ -13602,6 +13714,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)// 战力,求余亿 FightPowerEx = 0 #(DWORD FightPowerEx)// 战力,整除亿 data = None @@ -13619,6 +13733,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.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) return _pos @@ -13631,6 +13747,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.FightPower = 0 self.FightPowerEx = 0 return @@ -13646,6 +13764,8 @@ length += 2 length += 4 length += 4 + length += 4 + length += 4 return length @@ -13658,6 +13778,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.WriteDWORD(data, self.FightPowerEx) return data @@ -13671,6 +13793,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, FightPower:%d, FightPowerEx:%d '''\ @@ -13682,6 +13806,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.FightPower, self.FightPowerEx ) @@ -13696,6 +13822,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)// 战力,求余亿 FightPowerEx = 0 #(DWORD FightPowerEx)// 战力,整除亿 OfflineValue = 0 #(DWORD OfflineValue)// 离线值:0-在线;1-离线;>1-上次离线时间戳,可用于计算离线多久了;当取不到玩家信息时用1代表已离线; @@ -13716,6 +13844,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.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.OfflineValue,_pos = CommFunc.ReadDWORD(_lpData, _pos) @@ -13731,6 +13861,8 @@ self.LV = 0 self.Job = 0 self.RealmLV = 0 + self.Face = 0 + self.FacePic = 0 self.FightPower = 0 self.FightPowerEx = 0 self.OfflineValue = 0 @@ -13752,6 +13884,8 @@ length += 4 length += 4 length += 4 + length += 4 + length += 4 return length @@ -13764,6 +13898,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.WriteDWORD(data, self.FightPowerEx) data = CommFunc.WriteDWORD(data, self.OfflineValue) @@ -13780,6 +13916,8 @@ LV:%d, Job:%d, RealmLV:%d, + Face:%d, + FacePic:%d, FightPower:%d, FightPowerEx:%d, OfflineValue:%d, @@ -13794,6 +13932,8 @@ self.LV, self.Job, self.RealmLV, + self.Face, + self.FacePic, self.FightPower, self.FightPowerEx, self.OfflineValue, -- Gitblit v1.8.0