| | |
| | |
|
| | |
|
| | | #------------------------------------------------------
|
| | | # A8 10 通知获得物品 #tagMCNotifyUseItemGetItem
|
| | |
|
| | | class tagMCNotifyUseItemGetItem(Structure):
|
| | | Head = tagHead()
|
| | | UseItemID = 0 #(DWORD UseItemID)// 使用的物品ID
|
| | | UseCount = 0 #(WORD UseCount)// 使用物品个数
|
| | | GetItemLen = 0 #(WORD GetItemLen)
|
| | | GetItemData = "" #(String GetItemData)// 获得物品信息 [[itemID,itemCount,isBind], [或itemID,itemCount,isBind,isAppoint], {或物品信息字典}, ...] |
| | | MoneyType = 0 #(BYTE MoneyType)// 获得货币类型
|
| | | MoneyCount = 0 #(DWORD MoneyCount)// 获得货币数量
|
| | | data = None
|
| | |
|
| | | def __init__(self):
|
| | | self.Clear()
|
| | | self.Head.Cmd = 0xA8
|
| | | self.Head.SubCmd = 0x10
|
| | | return
|
| | |
|
| | | def ReadData(self, _lpData, _pos=0, _Len=0):
|
| | | self.Clear()
|
| | | _pos = self.Head.ReadData(_lpData, _pos)
|
| | | self.UseItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
|
| | | self.UseCount,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.GetItemLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.GetItemData,_pos = CommFunc.ReadString(_lpData, _pos,self.GetItemLen)
|
| | | self.MoneyType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | self.MoneyCount,_pos = CommFunc.ReadDWORD(_lpData, _pos)
|
| | | return _pos
|
| | |
|
| | | def Clear(self):
|
| | | self.Head = tagHead()
|
| | | self.Head.Clear()
|
| | | self.Head.Cmd = 0xA8
|
| | | self.Head.SubCmd = 0x10
|
| | | self.UseItemID = 0
|
| | | self.UseCount = 0
|
| | | self.GetItemLen = 0
|
| | | self.GetItemData = ""
|
| | | self.MoneyType = 0
|
| | | self.MoneyCount = 0
|
| | | return
|
| | |
|
| | | def GetLength(self):
|
| | | length = 0
|
| | | length += self.Head.GetLength()
|
| | | length += 4
|
| | | length += 2
|
| | | length += 2
|
| | | length += len(self.GetItemData)
|
| | | length += 1
|
| | | length += 4
|
| | |
|
| | | return length
|
| | |
|
| | | def GetBuffer(self):
|
| | | data = ''
|
| | | data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
|
| | | data = CommFunc.WriteDWORD(data, self.UseItemID)
|
| | | data = CommFunc.WriteWORD(data, self.UseCount)
|
| | | data = CommFunc.WriteWORD(data, self.GetItemLen)
|
| | | data = CommFunc.WriteString(data, self.GetItemLen, self.GetItemData)
|
| | | data = CommFunc.WriteBYTE(data, self.MoneyType)
|
| | | data = CommFunc.WriteDWORD(data, self.MoneyCount)
|
| | | return data
|
| | |
|
| | | def OutputString(self):
|
| | | DumpString = '''
|
| | | Head:%s,
|
| | | UseItemID:%d,
|
| | | UseCount:%d,
|
| | | GetItemLen:%d,
|
| | | GetItemData:%s,
|
| | | MoneyType:%d,
|
| | | MoneyCount:%d
|
| | | '''\
|
| | | %(
|
| | | self.Head.OutputString(),
|
| | | self.UseItemID,
|
| | | self.UseCount,
|
| | | self.GetItemLen,
|
| | | self.GetItemData,
|
| | | self.MoneyType,
|
| | | self.MoneyCount
|
| | | )
|
| | | return DumpString
|
| | |
|
| | |
|
| | | m_NAtagMCNotifyUseItemGetItem=tagMCNotifyUseItemGetItem()
|
| | | ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCNotifyUseItemGetItem.Head.Cmd,m_NAtagMCNotifyUseItemGetItem.Head.SubCmd))] = m_NAtagMCNotifyUseItemGetItem
|
| | |
|
| | |
|
| | | #------------------------------------------------------
|
| | | # A8 17 宠物培养信息 #tagMCPetTrainInfo
|
| | |
|
| | | class tagMCPetTrainInfo(Structure):
|