| | |
| | |
|
| | | class tagCGameServerGeneralPack(Structure):
|
| | | Head = tagHead()
|
| | | DataLen = 0 #(BYTE DataLen)//GameServer通用包长度
|
| | | DataLen = 0 #(WORD DataLen)//GameServer通用包长度
|
| | | Data = "" #(String Data)//GameServer统用包数据
|
| | | data = None
|
| | |
|
| | |
| | | def ReadData(self, _lpData, _pos=0, _Len=0):
|
| | | self.Clear()
|
| | | _pos = self.Head.ReadData(_lpData, _pos)
|
| | | self.DataLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | self.DataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.Data,_pos = CommFunc.ReadString(_lpData, _pos,self.DataLen)
|
| | | return _pos
|
| | |
|
| | |
| | | def GetLength(self):
|
| | | length = 0
|
| | | length += self.Head.GetLength()
|
| | | length += 1
|
| | | length += 2
|
| | | length += len(self.Data)
|
| | |
|
| | | return length
|
| | |
| | | def GetBuffer(self):
|
| | | data = ''
|
| | | data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
|
| | | data = CommFunc.WriteBYTE(data, self.DataLen)
|
| | | data = CommFunc.WriteWORD(data, self.DataLen)
|
| | | data = CommFunc.WriteString(data, self.DataLen, self.Data)
|
| | | return data
|
| | |
|
| | |
| | | Phone = 0 #(BYTE Phone)//是否绑定手机
|
| | | ServerID = 0 #(DWORD ServerID)//服务器ID
|
| | | Adult = 0 #(BYTE Adult)//是否成年 0未成年 1成年
|
| | | ExtraLen = 0 #(BYTE ExtraLen)//扩展长度
|
| | | Extra = "" #(String Extra)//扩展内容,根据不同平台而定
|
| | | data = None
|
| | |
|
| | | def __init__(self):
|
| | |
| | | self.Phone,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | self.ServerID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
|
| | | self.Adult,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | self.ExtraLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | self.Extra,_pos = CommFunc.ReadString(_lpData, _pos,self.ExtraLen)
|
| | | return _pos
|
| | |
|
| | | def Clear(self):
|
| | |
| | | self.Phone = 0
|
| | | self.ServerID = 0
|
| | | self.Adult = 0
|
| | | self.ExtraLen = 0
|
| | | self.Extra = ""
|
| | | return
|
| | |
|
| | | def GetLength(self):
|
| | |
| | | length += 1
|
| | | length += 4
|
| | | length += 1
|
| | | length += 1
|
| | | length += len(self.Extra)
|
| | |
|
| | | return length
|
| | |
|
| | |
| | | data = CommFunc.WriteBYTE(data, self.Phone)
|
| | | data = CommFunc.WriteDWORD(data, self.ServerID)
|
| | | data = CommFunc.WriteBYTE(data, self.Adult)
|
| | | data = CommFunc.WriteBYTE(data, self.ExtraLen)
|
| | | data = CommFunc.WriteString(data, self.ExtraLen, self.Extra)
|
| | | return data
|
| | |
|
| | | def OutputString(self):
|
| | |
| | | TokenExpire:%s,
|
| | | Phone:%d,
|
| | | ServerID:%d,
|
| | | Adult:%d
|
| | | Adult:%d,
|
| | | ExtraLen:%d,
|
| | | Extra:%s
|
| | | '''\
|
| | | %(
|
| | | self.Head.OutputString(),
|
| | |
| | | self.TokenExpire,
|
| | | self.Phone,
|
| | | self.ServerID,
|
| | | self.Adult
|
| | | self.Adult,
|
| | | self.ExtraLen,
|
| | | self.Extra
|
| | | )
|
| | | return DumpString
|
| | |
|
| | |
| | |
|
| | | class tagCFakePack(Structure):
|
| | | Head = tagHead()
|
| | | MsgLen = 0 #(BYTE MsgLen)
|
| | | MsgLen = 0 #(WORD MsgLen)
|
| | | Msg = "" #(String Msg)//size = MsgLen
|
| | | data = None
|
| | |
|
| | |
| | | def ReadData(self, _lpData, _pos=0, _Len=0):
|
| | | self.Clear()
|
| | | _pos = self.Head.ReadData(_lpData, _pos)
|
| | | self.MsgLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
|
| | | self.MsgLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.Msg,_pos = CommFunc.ReadString(_lpData, _pos,self.MsgLen)
|
| | | return _pos
|
| | |
|
| | |
| | | def GetLength(self):
|
| | | length = 0
|
| | | length += self.Head.GetLength()
|
| | | length += 1
|
| | | length += 2
|
| | | length += len(self.Msg)
|
| | |
|
| | | return length
|
| | |
| | | def GetBuffer(self):
|
| | | data = ''
|
| | | data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
|
| | | data = CommFunc.WriteBYTE(data, self.MsgLen)
|
| | | data = CommFunc.WriteWORD(data, self.MsgLen)
|
| | | data = CommFunc.WriteString(data, self.MsgLen, self.Msg)
|
| | | return data
|
| | |
|