ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -27153,63 +27153,48 @@
# A3 51 寻宝功能信息 #tagMCTreasureInfo
class  tagMCTreasureTypeInfo(Structure):
    TreasureType = 0    #(BYTE TreasureType)//寻宝类型
    LuckValue = 0    #(WORD LuckValue)//当前幸运值
    IndexCount = 0    #(BYTE IndexCount)//索引个数
    FreeCountTime = list()    #(vector<DWORD> FreeCountTime)// 模式对应开始计算免费次数时间time值
    data = None
    _pack_ = 1
    _fields_ = [
                  ("TreasureType", c_ubyte),    #寻宝类型
                  ("LuckValue", c_ushort),    #当前幸运值
                  ("TreasureCount", c_int),    #已寻宝总次数
                  ("FreeCountToday", c_ushort),    #今日已免费寻宝次数
                  ]
    def __init__(self):
        self.Clear()
        return
    def ReadData(self, _lpData, _pos=0, _Len=0):
    def ReadData(self, stringData, _pos=0, _len=0):
        self.Clear()
        self.TreasureType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.LuckValue,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.IndexCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        for i in range(self.IndexCount):
            value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
            self.FreeCountTime.append(value)
        return _pos
        memmove(addressof(self), stringData[_pos:], self.GetLength())
        return _pos + self.GetLength()
    def Clear(self):
        self.TreasureType = 0
        self.LuckValue = 0
        self.IndexCount = 0
        self.FreeCountTime = list()
        self.TreasureCount = 0
        self.FreeCountToday = 0
        return
    def GetLength(self):
        length = 0
        length += 1
        length += 2
        length += 1
        length += 4 * self.IndexCount
        return length
        return sizeof(tagMCTreasureTypeInfo)
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteBYTE(data, self.TreasureType)
        data = CommFunc.WriteWORD(data, self.LuckValue)
        data = CommFunc.WriteBYTE(data, self.IndexCount)
        for i in range(self.IndexCount):
            data = CommFunc.WriteDWORD(data, self.FreeCountTime[i])
        return data
        return string_at(addressof(self), self.GetLength())
    def OutputString(self):
        DumpString = '''
        DumpString = '''// A3 51 寻宝功能信息 //tagMCTreasureInfo:
                                TreasureType:%d,
                                LuckValue:%d,
                                IndexCount:%d,
                                FreeCountTime:%s
                                TreasureCount:%d,
                                FreeCountToday:%d
                                '''\
                                %(
                                self.TreasureType,
                                self.LuckValue,
                                self.IndexCount,
                                "..."
                                self.TreasureCount,
                                self.FreeCountToday
                                )
        return DumpString
@@ -27285,7 +27270,8 @@
class  tagMCTreasureResult(Structure):
    Head = tagHead()
    AddTreasureScore = 0    #(WORD AddTreasureScore)// 本次寻宝增加的寻宝积分
    AddMoneyType = 0    #(BYTE AddMoneyType)// 本次寻宝增加的积分货币类型,可能为0
    AddMoneyValue = 0    #(WORD AddMoneyValue)// 本次寻宝增加的积分货币值,可能为0
    AddTreasureLuck = 0    #(WORD AddTreasureLuck)// 本次寻宝增加的幸运值
    TreasureResultLen = 0    #(WORD TreasureResultLen)
    TreasureResult = ""    #(String TreasureResult)//  获得物品结果[[格子编号, 物品ID,个数,是否绑定], ...]
@@ -27300,7 +27286,8 @@
    def ReadData(self, _lpData, _pos=0, _Len=0):
        self.Clear()
        _pos = self.Head.ReadData(_lpData, _pos)
        self.AddTreasureScore,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.AddMoneyType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
        self.AddMoneyValue,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.AddTreasureLuck,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.TreasureResultLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
        self.TreasureResult,_pos = CommFunc.ReadString(_lpData, _pos,self.TreasureResultLen)
@@ -27311,7 +27298,8 @@
        self.Head.Clear()
        self.Head.Cmd = 0xA3
        self.Head.SubCmd = 0x50
        self.AddTreasureScore = 0
        self.AddMoneyType = 0
        self.AddMoneyValue = 0
        self.AddTreasureLuck = 0
        self.TreasureResultLen = 0
        self.TreasureResult = ""
@@ -27320,6 +27308,7 @@
    def GetLength(self):
        length = 0
        length += self.Head.GetLength()
        length += 1
        length += 2
        length += 2
        length += 2
@@ -27330,7 +27319,8 @@
    def GetBuffer(self):
        data = ''
        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
        data = CommFunc.WriteWORD(data, self.AddTreasureScore)
        data = CommFunc.WriteBYTE(data, self.AddMoneyType)
        data = CommFunc.WriteWORD(data, self.AddMoneyValue)
        data = CommFunc.WriteWORD(data, self.AddTreasureLuck)
        data = CommFunc.WriteWORD(data, self.TreasureResultLen)
        data = CommFunc.WriteString(data, self.TreasureResultLen, self.TreasureResult)
@@ -27339,14 +27329,16 @@
    def OutputString(self):
        DumpString = '''
                                Head:%s,
                                AddTreasureScore:%d,
                                AddMoneyType:%d,
                                AddMoneyValue:%d,
                                AddTreasureLuck:%d,
                                TreasureResultLen:%d,
                                TreasureResult:%s
                                '''\
                                %(
                                self.Head.OutputString(),
                                self.AddTreasureScore,
                                self.AddMoneyType,
                                self.AddMoneyValue,
                                self.AddTreasureLuck,
                                self.TreasureResultLen,
                                self.TreasureResult