|  |  |  | 
|---|
|  |  |  | ('NPCID', ctypes.c_ulong), | 
|---|
|  |  |  | ('ExDataLen', ctypes.c_ushort), | 
|---|
|  |  |  | ('ExData', ctypes.c_char_p), | 
|---|
|  |  |  | ('DailyDateStr', ctypes.c_char * 10), | 
|---|
|  |  |  | ('TimeStr', ctypes.c_char * 19), | 
|---|
|  |  |  | ('ThanksState', ctypes.c_ubyte), | 
|---|
|  |  |  | ('AssistPlayerLen', ctypes.c_ushort), | 
|---|
|  |  |  | 
|---|
|  |  |  | self.NPCID = 0 | 
|---|
|  |  |  | self.ExDataLen = 0 | 
|---|
|  |  |  | self.ExData = '' | 
|---|
|  |  |  | self.DailyDateStr = '' | 
|---|
|  |  |  | self.TimeStr = '' | 
|---|
|  |  |  | self.ThanksState = 0 | 
|---|
|  |  |  | self.AssistPlayerLen = 0 | 
|---|
|  |  |  | 
|---|
|  |  |  | self.ExDataLen, pos = CommFunc.ReadWORD(buf, pos) | 
|---|
|  |  |  | tmp, pos = CommFunc.ReadString(buf, pos, self.ExDataLen) | 
|---|
|  |  |  | self.ExData = ctypes.c_char_p(tmp) | 
|---|
|  |  |  | self.DailyDateStr, pos = CommFunc.ReadString(buf, pos, 10) | 
|---|
|  |  |  | self.TimeStr, pos = CommFunc.ReadString(buf, pos, 19) | 
|---|
|  |  |  | self.ThanksState, pos = CommFunc.ReadBYTE(buf, pos) | 
|---|
|  |  |  | self.AssistPlayerLen, pos = CommFunc.ReadWORD(buf, pos) | 
|---|
|  |  |  | 
|---|
|  |  |  | buf = CommFunc.WriteDWORD(buf, self.NPCID) | 
|---|
|  |  |  | buf = CommFunc.WriteWORD(buf, self.ExDataLen) | 
|---|
|  |  |  | buf = CommFunc.WriteString(buf, self.ExDataLen, self.ExData) | 
|---|
|  |  |  | buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 10, self.DailyDateStr) | 
|---|
|  |  |  | buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 19, self.TimeStr) | 
|---|
|  |  |  | buf = CommFunc.WriteBYTE(buf, self.ThanksState) | 
|---|
|  |  |  | buf = CommFunc.WriteWORD(buf, self.AssistPlayerLen) | 
|---|
|  |  |  | 
|---|
|  |  |  | length += sizeof(ctypes.c_ulong) | 
|---|
|  |  |  | length += sizeof(ctypes.c_ushort) | 
|---|
|  |  |  | length += self.ExDataLen | 
|---|
|  |  |  | length += sizeof(ctypes.c_char) * 10 | 
|---|
|  |  |  | length += sizeof(ctypes.c_char) * 19 | 
|---|
|  |  |  | length += sizeof(ctypes.c_ubyte) | 
|---|
|  |  |  | length += sizeof(ctypes.c_ushort) | 
|---|
|  |  |  | 
|---|
|  |  |  | NPCID = %s, | 
|---|
|  |  |  | ExDataLen = %s, | 
|---|
|  |  |  | ExData = %s, | 
|---|
|  |  |  | DailyDateStr = %s, | 
|---|
|  |  |  | TimeStr = %s, | 
|---|
|  |  |  | ThanksState = %s, | 
|---|
|  |  |  | AssistPlayerLen = %s, | 
|---|
|  |  |  | 
|---|
|  |  |  | self.NPCID, | 
|---|
|  |  |  | self.ExDataLen, | 
|---|
|  |  |  | self.ExData, | 
|---|
|  |  |  | self.DailyDateStr, | 
|---|
|  |  |  | self.TimeStr, | 
|---|
|  |  |  | self.ThanksState, | 
|---|
|  |  |  | self.AssistPlayerLen, | 
|---|
|  |  |  | 
|---|
|  |  |  | else: | 
|---|
|  |  |  | self.PlayerName = Str[:33] | 
|---|
|  |  |  |  | 
|---|
|  |  |  | def SetDailyDateStr(self,Str): | 
|---|
|  |  |  | if len(Str)<=10: | 
|---|
|  |  |  | self.DailyDateStr = Str | 
|---|
|  |  |  | else: | 
|---|
|  |  |  | self.DailyDateStr = Str[:10] | 
|---|
|  |  |  |  | 
|---|
|  |  |  | def SetTimeStr(self,Str): | 
|---|
|  |  |  | if len(Str)<=19: | 
|---|
|  |  |  | self.TimeStr = Str | 
|---|