|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | class  tagMCActivityPlaceInfo(Structure): | 
|---|
|  |  |  | Head = tagHead() | 
|---|
|  |  |  | PlaceState = 0    #(BYTE PlaceState)// 是否启动状态 | 
|---|
|  |  |  | StartTime = 0    #(DWORD StartTime)// 开始探索time时间戳,完成一次探索会自动下一次探索并更新该时间 | 
|---|
|  |  |  | PlaceCount = 0    #(BYTE PlaceCount)// 剩余未完成探索次数 | 
|---|
|  |  |  | RewardCount = 0    #(BYTE RewardCount)// 累计未领取探索奖励次数 | 
|---|
|  |  |  | RewardLen = 0    #(BYTE RewardLen) | 
|---|
|  |  |  | RewardInfo = ""    #(String RewardInfo)//累计未领取探索奖励 [[itemID, count], ...] | 
|---|
|  |  |  | 
|---|
|  |  |  | def ReadData(self, _lpData, _pos=0, _Len=0): | 
|---|
|  |  |  | self.Clear() | 
|---|
|  |  |  | _pos = self.Head.ReadData(_lpData, _pos) | 
|---|
|  |  |  | self.PlaceState,_pos = CommFunc.ReadBYTE(_lpData, _pos) | 
|---|
|  |  |  | self.StartTime,_pos = CommFunc.ReadDWORD(_lpData, _pos) | 
|---|
|  |  |  | self.PlaceCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) | 
|---|
|  |  |  | self.RewardCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) | 
|---|
|  |  |  | self.RewardLen,_pos = CommFunc.ReadBYTE(_lpData, _pos) | 
|---|
|  |  |  | self.RewardInfo,_pos = CommFunc.ReadString(_lpData, _pos,self.RewardLen) | 
|---|
|  |  |  | 
|---|
|  |  |  | self.Head.Clear() | 
|---|
|  |  |  | self.Head.Cmd = 0xB0 | 
|---|
|  |  |  | self.Head.SubCmd = 0x27 | 
|---|
|  |  |  | self.PlaceState = 0 | 
|---|
|  |  |  | self.StartTime = 0 | 
|---|
|  |  |  | self.PlaceCount = 0 | 
|---|
|  |  |  | self.RewardCount = 0 | 
|---|
|  |  |  | self.RewardLen = 0 | 
|---|
|  |  |  | self.RewardInfo = "" | 
|---|
|  |  |  | 
|---|
|  |  |  | def GetLength(self): | 
|---|
|  |  |  | length = 0 | 
|---|
|  |  |  | length += self.Head.GetLength() | 
|---|
|  |  |  | length += 1 | 
|---|
|  |  |  | length += 4 | 
|---|
|  |  |  | length += 1 | 
|---|
|  |  |  | length += 1 | 
|---|
|  |  |  | length += 1 | 
|---|
|  |  |  | length += len(self.RewardInfo) | 
|---|
|  |  |  | 
|---|
|  |  |  | def GetBuffer(self): | 
|---|
|  |  |  | data = '' | 
|---|
|  |  |  | data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) | 
|---|
|  |  |  | data = CommFunc.WriteBYTE(data, self.PlaceState) | 
|---|
|  |  |  | data = CommFunc.WriteDWORD(data, self.StartTime) | 
|---|
|  |  |  | data = CommFunc.WriteBYTE(data, self.PlaceCount) | 
|---|
|  |  |  | data = CommFunc.WriteBYTE(data, self.RewardCount) | 
|---|
|  |  |  | data = CommFunc.WriteBYTE(data, self.RewardLen) | 
|---|
|  |  |  | data = CommFunc.WriteString(data, self.RewardLen, self.RewardInfo) | 
|---|
|  |  |  | 
|---|
|  |  |  | def OutputString(self): | 
|---|
|  |  |  | DumpString = ''' | 
|---|
|  |  |  | Head:%s, | 
|---|
|  |  |  | PlaceState:%d, | 
|---|
|  |  |  | StartTime:%d, | 
|---|
|  |  |  | PlaceCount:%d, | 
|---|
|  |  |  | RewardCount:%d, | 
|---|
|  |  |  | RewardLen:%d, | 
|---|
|  |  |  | RewardInfo:%s | 
|---|
|  |  |  | '''\ | 
|---|
|  |  |  | %( | 
|---|
|  |  |  | self.Head.OutputString(), | 
|---|
|  |  |  | self.PlaceState, | 
|---|
|  |  |  | self.StartTime, | 
|---|
|  |  |  | self.PlaceCount, | 
|---|
|  |  |  | self.RewardCount, | 
|---|
|  |  |  | self.RewardLen, | 
|---|
|  |  |  | self.RewardInfo | 
|---|