From 4062fd563a5c50118556bee85451a43dcf530983 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期六, 13 四月 2019 14:45:02 +0800 Subject: [PATCH] 6459 【后端】【2.0】缥缈仙域开发单(自定义场景无奖励也回包,防止卡流程) --- ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 82 +++------------------------------------- 1 files changed, 7 insertions(+), 75 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py index 8f93338..19eb427 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py @@ -27747,78 +27747,12 @@ #------------------------------------------------------ # B2 14 自定义副本奖励信息 #tagMCCuntomFBPrizeInfo -class tagMCCuntomFBPrizeItem(Structure): - ItemID = 0 #(DWORD ItemID) - Count = 0 #(WORD Count) - IsAuctionItem = 0 #(BYTE IsAuctionItem)//是否拍品 - UserDataLen = 0 #(WORD UserDataLen)//附加属性长度 - UserData = "" #(String UserData)//附加属性 size = UserDataLen - data = None - - def __init__(self): - self.Clear() - return - - def ReadData(self, _lpData, _pos=0, _Len=0): - self.Clear() - self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos) - self.Count,_pos = CommFunc.ReadWORD(_lpData, _pos) - self.IsAuctionItem,_pos = CommFunc.ReadBYTE(_lpData, _pos) - self.UserDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos) - self.UserData,_pos = CommFunc.ReadString(_lpData, _pos,self.UserDataLen) - return _pos - - def Clear(self): - self.ItemID = 0 - self.Count = 0 - self.IsAuctionItem = 0 - self.UserDataLen = 0 - self.UserData = "" - return - - def GetLength(self): - length = 0 - length += 4 - length += 2 - length += 1 - length += 2 - length += len(self.UserData) - - return length - - def GetBuffer(self): - data = '' - data = CommFunc.WriteDWORD(data, self.ItemID) - data = CommFunc.WriteWORD(data, self.Count) - data = CommFunc.WriteBYTE(data, self.IsAuctionItem) - data = CommFunc.WriteWORD(data, self.UserDataLen) - data = CommFunc.WriteString(data, self.UserDataLen, self.UserData) - return data - - def OutputString(self): - DumpString = ''' - ItemID:%d, - Count:%d, - IsAuctionItem:%d, - UserDataLen:%d, - UserData:%s - '''\ - %( - self.ItemID, - self.Count, - self.IsAuctionItem, - self.UserDataLen, - self.UserData - ) - return DumpString - - class tagMCCuntomFBPrizeInfo(Structure): Head = tagHead() MapID = 0 #(DWORD MapID) FuncLineID = 0 #(WORD FuncLineID) PrizeItemCount = 0 #(BYTE PrizeItemCount) - PrizeItemList = list() #(vector<tagMCCuntomFBPrizeItem> PrizeItemList) + PrizeItemIDList = list() #(vector<DWORD> PrizeItemIDList) data = None def __init__(self): @@ -27834,9 +27768,8 @@ self.FuncLineID,_pos = CommFunc.ReadWORD(_lpData, _pos) self.PrizeItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) for i in range(self.PrizeItemCount): - temPrizeItemList = tagMCCuntomFBPrizeItem() - _pos = temPrizeItemList.ReadData(_lpData, _pos) - self.PrizeItemList.append(temPrizeItemList) + value,_pos=CommFunc.ReadDWORD(_lpData,_pos) + self.PrizeItemIDList.append(value) return _pos def Clear(self): @@ -27847,7 +27780,7 @@ self.MapID = 0 self.FuncLineID = 0 self.PrizeItemCount = 0 - self.PrizeItemList = list() + self.PrizeItemIDList = list() return def GetLength(self): @@ -27856,8 +27789,7 @@ length += 4 length += 2 length += 1 - for i in range(self.PrizeItemCount): - length += self.PrizeItemList[i].GetLength() + length += 4 * self.PrizeItemCount return length @@ -27868,7 +27800,7 @@ data = CommFunc.WriteWORD(data, self.FuncLineID) data = CommFunc.WriteBYTE(data, self.PrizeItemCount) for i in range(self.PrizeItemCount): - data = CommFunc.WriteString(data, self.PrizeItemList[i].GetLength(), self.PrizeItemList[i].GetBuffer()) + data = CommFunc.WriteDWORD(data, self.PrizeItemIDList[i]) return data def OutputString(self): @@ -27877,7 +27809,7 @@ MapID:%d, FuncLineID:%d, PrizeItemCount:%d, - PrizeItemList:%s + PrizeItemIDList:%s '''\ %( self.Head.OutputString(), -- Gitblit v1.8.0