| | |
| | | return DumpString
|
| | |
|
| | |
|
| | | class tagMCCrossActLianqiAwardEx(Structure):
|
| | | NeedScore = 0 #(DWORD NeedScore)// 额外奖励所需积分
|
| | | Count = 0 #(BYTE Count)// 额外奖励物品数
|
| | | AwardItemList = list() #(vector<tagMCCrossActLianqiItem> AwardItemList)// 额外奖励物品列表
|
| | | data = None
|
| | |
|
| | | def __init__(self):
|
| | | self.Clear()
|
| | | return
|
| | |
|
| | | def ReadData(self, _lpData, _pos=0, _Len=0):
|
| | | self.Clear()
|
| | | self.NeedScore,_pos = CommFunc.ReadDWORD(_lpData, _pos)
|
| | | self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | for i in range(self.Count):
|
| | | temAwardItemList = tagMCCrossActLianqiItem()
|
| | | _pos = temAwardItemList.ReadData(_lpData, _pos)
|
| | | self.AwardItemList.append(temAwardItemList)
|
| | | return _pos
|
| | |
|
| | | def Clear(self):
|
| | | self.NeedScore = 0
|
| | | self.Count = 0
|
| | | self.AwardItemList = list()
|
| | | return
|
| | |
|
| | | def GetLength(self):
|
| | | length = 0
|
| | | length += 4
|
| | | length += 1
|
| | | for i in range(self.Count):
|
| | | length += self.AwardItemList[i].GetLength()
|
| | |
|
| | | return length
|
| | |
|
| | | def GetBuffer(self):
|
| | | data = ''
|
| | | data = CommFunc.WriteDWORD(data, self.NeedScore)
|
| | | data = CommFunc.WriteBYTE(data, self.Count)
|
| | | for i in range(self.Count):
|
| | | data = CommFunc.WriteString(data, self.AwardItemList[i].GetLength(), self.AwardItemList[i].GetBuffer())
|
| | | return data
|
| | |
|
| | | def OutputString(self):
|
| | | DumpString = '''
|
| | | NeedScore:%d,
|
| | | Count:%d,
|
| | | AwardItemList:%s
|
| | | '''\
|
| | | %(
|
| | | self.NeedScore,
|
| | | self.Count,
|
| | | "..."
|
| | | )
|
| | | return DumpString
|
| | |
|
| | |
|
| | | class tagMCCrossActLianqiBillard(Structure):
|
| | | Rank = 0 #(DWORD Rank)// 名次,1-代表第一名;支持夸段,如1,3 代表第1名,第2~3名
|
| | | Count = 0 #(BYTE Count)// 奖励物品数
|
| | | AwardItemList = list() #(vector<tagMCCrossActLianqiItem> AwardItemList)// 奖励物品列表
|
| | | NeedScore = 0 #(DWORD NeedScore)// 上榜所需积分
|
| | | CountEx = 0 #(BYTE CountEx)// 额外奖励数
|
| | | AwardItemExList = list() #(vector<tagMCCrossActLianqiAwardEx> AwardItemExList)// 额外奖励列表
|
| | | data = None
|
| | |
|
| | | def __init__(self):
|
| | |
| | | _pos = temAwardItemList.ReadData(_lpData, _pos)
|
| | | self.AwardItemList.append(temAwardItemList)
|
| | | self.NeedScore,_pos = CommFunc.ReadDWORD(_lpData, _pos)
|
| | | self.CountEx,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | for i in range(self.CountEx):
|
| | | temAwardItemExList = tagMCCrossActLianqiAwardEx()
|
| | | _pos = temAwardItemExList.ReadData(_lpData, _pos)
|
| | | self.AwardItemExList.append(temAwardItemExList)
|
| | | return _pos
|
| | |
|
| | | def Clear(self):
|
| | |
| | | self.Count = 0
|
| | | self.AwardItemList = list()
|
| | | self.NeedScore = 0
|
| | | self.CountEx = 0
|
| | | self.AwardItemExList = list()
|
| | | return
|
| | |
|
| | | def GetLength(self):
|
| | |
| | | for i in range(self.Count):
|
| | | length += self.AwardItemList[i].GetLength()
|
| | | length += 4
|
| | | length += 1
|
| | | for i in range(self.CountEx):
|
| | | length += self.AwardItemExList[i].GetLength()
|
| | |
|
| | | return length
|
| | |
|
| | |
| | | for i in range(self.Count):
|
| | | data = CommFunc.WriteString(data, self.AwardItemList[i].GetLength(), self.AwardItemList[i].GetBuffer())
|
| | | data = CommFunc.WriteDWORD(data, self.NeedScore)
|
| | | data = CommFunc.WriteBYTE(data, self.CountEx)
|
| | | for i in range(self.CountEx):
|
| | | data = CommFunc.WriteString(data, self.AwardItemExList[i].GetLength(), self.AwardItemExList[i].GetBuffer())
|
| | | return data
|
| | |
|
| | | def OutputString(self):
|
| | |
| | | Rank:%d,
|
| | | Count:%d,
|
| | | AwardItemList:%s,
|
| | | NeedScore:%d
|
| | | NeedScore:%d,
|
| | | CountEx:%d,
|
| | | AwardItemExList:%s
|
| | | '''\
|
| | | %(
|
| | | self.Rank,
|
| | | self.Count,
|
| | | "...",
|
| | | self.NeedScore
|
| | | self.NeedScore,
|
| | | self.CountEx,
|
| | | "..."
|
| | | )
|
| | | return DumpString
|
| | |
|