9727 【BT7】【主干】【越南】【后端】查看玩家装备缓存扩展到20阶(支持查看射雕装备17阶)
| | |
| | | ItemData14 = "" #(String ItemData14)
|
| | | ItemDataSize15 = 0 #(WORD ItemDataSize15)
|
| | | ItemData15 = "" #(String ItemData15)
|
| | | ItemDataSize16 = 0 #(WORD ItemDataSize16)
|
| | | ItemData16 = "" #(String ItemData16)
|
| | | ItemDataSize17 = 0 #(WORD ItemDataSize17)
|
| | | ItemData17 = "" #(String ItemData17)
|
| | | ItemDataSize18 = 0 #(WORD ItemDataSize18)
|
| | | ItemData18 = "" #(String ItemData18)
|
| | | ItemDataSize19 = 0 #(WORD ItemDataSize19)
|
| | | ItemData19 = "" #(String ItemData19)
|
| | | ItemDataSize20 = 0 #(WORD ItemDataSize20)
|
| | | ItemData20 = "" #(String ItemData20)
|
| | | data = None
|
| | |
|
| | | def __init__(self):
|
| | |
| | | self.ItemData14,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize14)
|
| | | self.ItemDataSize15,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData15,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize15)
|
| | | self.ItemDataSize16,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData16,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize16)
|
| | | self.ItemDataSize17,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData17,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize17)
|
| | | self.ItemDataSize18,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData18,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize18)
|
| | | self.ItemDataSize19,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData19,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize19)
|
| | | self.ItemDataSize20,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData20,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize20)
|
| | | return _pos
|
| | |
|
| | | def Clear(self):
|
| | |
| | | self.ItemData14 = ""
|
| | | self.ItemDataSize15 = 0
|
| | | self.ItemData15 = ""
|
| | | self.ItemDataSize16 = 0
|
| | | self.ItemData16 = ""
|
| | | self.ItemDataSize17 = 0
|
| | | self.ItemData17 = ""
|
| | | self.ItemDataSize18 = 0
|
| | | self.ItemData18 = ""
|
| | | self.ItemDataSize19 = 0
|
| | | self.ItemData19 = ""
|
| | | self.ItemDataSize20 = 0
|
| | | self.ItemData20 = ""
|
| | | return
|
| | |
|
| | | def GetLength(self):
|
| | |
| | | length += len(self.ItemData14)
|
| | | length += 2
|
| | | length += len(self.ItemData15)
|
| | | length += 2
|
| | | length += len(self.ItemData16)
|
| | | length += 2
|
| | | length += len(self.ItemData17)
|
| | | length += 2
|
| | | length += len(self.ItemData18)
|
| | | length += 2
|
| | | length += len(self.ItemData19)
|
| | | length += 2
|
| | | length += len(self.ItemData20)
|
| | |
|
| | | return length
|
| | |
|
| | |
| | | data = CommFunc.WriteString(data, self.ItemDataSize14, self.ItemData14)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize15)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize15, self.ItemData15)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize16)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize16, self.ItemData16)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize17)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize17, self.ItemData17)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize18)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize18, self.ItemData18)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize19)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize19, self.ItemData19)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize20)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize20, self.ItemData20)
|
| | | return data
|
| | |
|
| | | def OutputString(self):
|
| | |
| | | ItemDataSize14:%d,
|
| | | ItemData14:%s,
|
| | | ItemDataSize15:%d,
|
| | | ItemData15:%s
|
| | | ItemData15:%s,
|
| | | ItemDataSize16:%d,
|
| | | ItemData16:%s,
|
| | | ItemDataSize17:%d,
|
| | | ItemData17:%s,
|
| | | ItemDataSize18:%d,
|
| | | ItemData18:%s,
|
| | | ItemDataSize19:%d,
|
| | | ItemData19:%s,
|
| | | ItemDataSize20:%d,
|
| | | ItemData20:%s
|
| | | '''\
|
| | | %(
|
| | | self.Head.OutputString(),
|
| | |
| | | self.ItemDataSize14,
|
| | | self.ItemData14,
|
| | | self.ItemDataSize15,
|
| | | self.ItemData15
|
| | | self.ItemData15,
|
| | | self.ItemDataSize16,
|
| | | self.ItemData16,
|
| | | self.ItemDataSize17,
|
| | | self.ItemData17,
|
| | | self.ItemDataSize18,
|
| | | self.ItemData18,
|
| | | self.ItemDataSize19,
|
| | | self.ItemData19,
|
| | | self.ItemDataSize20,
|
| | | self.ItemData20
|
| | | )
|
| | | return DumpString
|
| | |
|
| | |
| | | import PyGameDataStruct
|
| | | import IpyGameDataPY
|
| | | import PyDataManager
|
| | | import ShareDefine
|
| | | import ChConfig
|
| | |
|
| | | import json
|
| | |
| | | if not curBillboard:
|
| | | continue
|
| | | if curBillboard.FindByID(playerID):
|
| | | return True
|
| | | |
| | | #跨服榜单上的默认保留
|
| | | if GameWorld.IsCrossServer():
|
| | | billboardMgr = PyDataManager.GetCrossBillboardManager()
|
| | | for billboardType in ShareDefine.CrossBillboardTypeList:
|
| | | groupList = billboardMgr.GetBillboardGroupList(billboardType)
|
| | | for billboardType, groupValue1, groupValue2 in groupList:
|
| | | billboardObj = billboardMgr.GetCrossBillboard(billboardType, groupValue1, groupValue2)
|
| | | if billboardObj.FindByID(playerID):
|
| | | return True
|
| | |
|
| | | return False
|
| | |
| | | # WORD ItemDataSize1;
|
| | | # char ItemData1[ItemDataSize1]; //1阶装备数据
|
| | | # ... ...
|
| | | # WORD ItemDataSize15;
|
| | | # char ItemData15[ItemDataSize15];
|
| | | # WORD ItemDataSize20;
|
| | | # char ItemData20[ItemDataSize20];
|
| | | #};
|
| | | def OnMGUpdatePlayerCache(routeIndex, mapID, curPackData, tick):
|
| | | playerID = curPackData.PlayerID
|
| | |
| | | #GameWorld.DebugLog(" 更新Plus数据: size=%s, %s" % (curCache.PlusDataSize, curCache.PlusData), playerID)
|
| | |
|
| | | # 装备数据存储,不保存装备数据的话则清空
|
| | | for classLV in xrange(1, 15 + 1):
|
| | | for classLV in xrange(1, 20 + 1):
|
| | | if not isSaveAll:
|
| | | itemDataSize = 0
|
| | | itemData = ""
|
| | |
| | | ('ItemData14', ctypes.c_char_p),
|
| | | ('ItemDataSize15', ctypes.c_ushort),
|
| | | ('ItemData15', ctypes.c_char_p),
|
| | | ('ItemDataSize16', ctypes.c_ushort),
|
| | | ('ItemData16', ctypes.c_char_p),
|
| | | ('ItemDataSize17', ctypes.c_ushort),
|
| | | ('ItemData17', ctypes.c_char_p),
|
| | | ('ItemDataSize18', ctypes.c_ushort),
|
| | | ('ItemData18', ctypes.c_char_p),
|
| | | ('ItemDataSize19', ctypes.c_ushort),
|
| | | ('ItemData19', ctypes.c_char_p),
|
| | | ('ItemDataSize20', ctypes.c_ushort),
|
| | | ('ItemData20', ctypes.c_char_p),
|
| | | ('ADOResult', ctypes.c_ulong),
|
| | | ]
|
| | |
|
| | |
| | | self.ItemData14 = ''
|
| | | self.ItemDataSize15 = 0
|
| | | self.ItemData15 = ''
|
| | | self.ItemDataSize16 = 0
|
| | | self.ItemData16 = ''
|
| | | self.ItemDataSize17 = 0
|
| | | self.ItemData17 = ''
|
| | | self.ItemDataSize18 = 0
|
| | | self.ItemData18 = ''
|
| | | self.ItemDataSize19 = 0
|
| | | self.ItemData19 = ''
|
| | | self.ItemDataSize20 = 0
|
| | | self.ItemData20 = ''
|
| | |
|
| | | def readData(self, buf, pos = 0, length = 0):
|
| | | if not pos <= length:
|
| | |
| | | self.ItemDataSize15, pos = CommFunc.ReadWORD(buf, pos)
|
| | | tmp, pos = CommFunc.ReadString(buf, pos, self.ItemDataSize15)
|
| | | self.ItemData15 = ctypes.c_char_p(tmp)
|
| | | self.ItemDataSize16, pos = CommFunc.ReadWORD(buf, pos)
|
| | | tmp, pos = CommFunc.ReadString(buf, pos, self.ItemDataSize16)
|
| | | self.ItemData16 = ctypes.c_char_p(tmp)
|
| | | self.ItemDataSize17, pos = CommFunc.ReadWORD(buf, pos)
|
| | | tmp, pos = CommFunc.ReadString(buf, pos, self.ItemDataSize17)
|
| | | self.ItemData17 = ctypes.c_char_p(tmp)
|
| | | self.ItemDataSize18, pos = CommFunc.ReadWORD(buf, pos)
|
| | | tmp, pos = CommFunc.ReadString(buf, pos, self.ItemDataSize18)
|
| | | self.ItemData18 = ctypes.c_char_p(tmp)
|
| | | self.ItemDataSize19, pos = CommFunc.ReadWORD(buf, pos)
|
| | | tmp, pos = CommFunc.ReadString(buf, pos, self.ItemDataSize19)
|
| | | self.ItemData19 = ctypes.c_char_p(tmp)
|
| | | self.ItemDataSize20, pos = CommFunc.ReadWORD(buf, pos)
|
| | | tmp, pos = CommFunc.ReadString(buf, pos, self.ItemDataSize20)
|
| | | self.ItemData20 = ctypes.c_char_p(tmp)
|
| | | return self.getLength()
|
| | |
|
| | | def getBuffer(self):
|
| | |
| | | buf = CommFunc.WriteString(buf, self.ItemDataSize14, self.ItemData14)
|
| | | buf = CommFunc.WriteWORD(buf, self.ItemDataSize15)
|
| | | buf = CommFunc.WriteString(buf, self.ItemDataSize15, self.ItemData15)
|
| | | buf = CommFunc.WriteWORD(buf, self.ItemDataSize16)
|
| | | buf = CommFunc.WriteString(buf, self.ItemDataSize16, self.ItemData16)
|
| | | buf = CommFunc.WriteWORD(buf, self.ItemDataSize17)
|
| | | buf = CommFunc.WriteString(buf, self.ItemDataSize17, self.ItemData17)
|
| | | buf = CommFunc.WriteWORD(buf, self.ItemDataSize18)
|
| | | buf = CommFunc.WriteString(buf, self.ItemDataSize18, self.ItemData18)
|
| | | buf = CommFunc.WriteWORD(buf, self.ItemDataSize19)
|
| | | buf = CommFunc.WriteString(buf, self.ItemDataSize19, self.ItemData19)
|
| | | buf = CommFunc.WriteWORD(buf, self.ItemDataSize20)
|
| | | buf = CommFunc.WriteString(buf, self.ItemDataSize20, self.ItemData20)
|
| | | return buf
|
| | |
|
| | | def getLength(self):
|
| | |
| | | length += self.ItemDataSize14
|
| | | length += sizeof(ctypes.c_ushort)
|
| | | length += self.ItemDataSize15
|
| | | length += sizeof(ctypes.c_ushort)
|
| | | length += self.ItemDataSize16
|
| | | length += sizeof(ctypes.c_ushort)
|
| | | length += self.ItemDataSize17
|
| | | length += sizeof(ctypes.c_ushort)
|
| | | length += self.ItemDataSize18
|
| | | length += sizeof(ctypes.c_ushort)
|
| | | length += self.ItemDataSize19
|
| | | length += sizeof(ctypes.c_ushort)
|
| | | length += self.ItemDataSize20
|
| | | return length
|
| | |
|
| | | def outputString(self):
|
| | |
| | | ItemData14 = %s,
|
| | | ItemDataSize15 = %s,
|
| | | ItemData15 = %s,
|
| | | ItemDataSize16 = %s,
|
| | | ItemData16 = %s,
|
| | | ItemDataSize17 = %s,
|
| | | ItemData17 = %s,
|
| | | ItemDataSize18 = %s,
|
| | | ItemData18 = %s,
|
| | | ItemDataSize19 = %s,
|
| | | ItemData19 = %s,
|
| | | ItemDataSize20 = %s,
|
| | | ItemData20 = %s,
|
| | | ADOResult = %s,
|
| | | '''%(
|
| | | self.PlayerID,
|
| | |
| | | self.ItemData14,
|
| | | self.ItemDataSize15,
|
| | | self.ItemData15,
|
| | | self.ItemDataSize16,
|
| | | self.ItemData16,
|
| | | self.ItemDataSize17,
|
| | | self.ItemData17,
|
| | | self.ItemDataSize18,
|
| | | self.ItemData18,
|
| | | self.ItemDataSize19,
|
| | | self.ItemData19,
|
| | | self.ItemDataSize20,
|
| | | self.ItemData20,
|
| | | self.ADOResult,
|
| | | )
|
| | | return output
|
| | |
| | | ItemData14 = "" #(String ItemData14)
|
| | | ItemDataSize15 = 0 #(WORD ItemDataSize15)
|
| | | ItemData15 = "" #(String ItemData15)
|
| | | ItemDataSize16 = 0 #(WORD ItemDataSize16)
|
| | | ItemData16 = "" #(String ItemData16)
|
| | | ItemDataSize17 = 0 #(WORD ItemDataSize17)
|
| | | ItemData17 = "" #(String ItemData17)
|
| | | ItemDataSize18 = 0 #(WORD ItemDataSize18)
|
| | | ItemData18 = "" #(String ItemData18)
|
| | | ItemDataSize19 = 0 #(WORD ItemDataSize19)
|
| | | ItemData19 = "" #(String ItemData19)
|
| | | ItemDataSize20 = 0 #(WORD ItemDataSize20)
|
| | | ItemData20 = "" #(String ItemData20)
|
| | | data = None
|
| | |
|
| | | def __init__(self):
|
| | |
| | | self.ItemData14,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize14)
|
| | | self.ItemDataSize15,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData15,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize15)
|
| | | self.ItemDataSize16,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData16,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize16)
|
| | | self.ItemDataSize17,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData17,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize17)
|
| | | self.ItemDataSize18,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData18,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize18)
|
| | | self.ItemDataSize19,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData19,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize19)
|
| | | self.ItemDataSize20,_pos = CommFunc.ReadWORD(_lpData, _pos)
|
| | | self.ItemData20,_pos = CommFunc.ReadString(_lpData, _pos,self.ItemDataSize20)
|
| | | return _pos
|
| | |
|
| | | def Clear(self):
|
| | |
| | | self.ItemData14 = ""
|
| | | self.ItemDataSize15 = 0
|
| | | self.ItemData15 = ""
|
| | | self.ItemDataSize16 = 0
|
| | | self.ItemData16 = ""
|
| | | self.ItemDataSize17 = 0
|
| | | self.ItemData17 = ""
|
| | | self.ItemDataSize18 = 0
|
| | | self.ItemData18 = ""
|
| | | self.ItemDataSize19 = 0
|
| | | self.ItemData19 = ""
|
| | | self.ItemDataSize20 = 0
|
| | | self.ItemData20 = ""
|
| | | return
|
| | |
|
| | | def GetLength(self):
|
| | |
| | | length += len(self.ItemData14)
|
| | | length += 2
|
| | | length += len(self.ItemData15)
|
| | | length += 2
|
| | | length += len(self.ItemData16)
|
| | | length += 2
|
| | | length += len(self.ItemData17)
|
| | | length += 2
|
| | | length += len(self.ItemData18)
|
| | | length += 2
|
| | | length += len(self.ItemData19)
|
| | | length += 2
|
| | | length += len(self.ItemData20)
|
| | |
|
| | | return length
|
| | |
|
| | |
| | | data = CommFunc.WriteString(data, self.ItemDataSize14, self.ItemData14)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize15)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize15, self.ItemData15)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize16)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize16, self.ItemData16)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize17)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize17, self.ItemData17)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize18)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize18, self.ItemData18)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize19)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize19, self.ItemData19)
|
| | | data = CommFunc.WriteWORD(data, self.ItemDataSize20)
|
| | | data = CommFunc.WriteString(data, self.ItemDataSize20, self.ItemData20)
|
| | | return data
|
| | |
|
| | | def OutputString(self):
|
| | |
| | | ItemDataSize14:%d,
|
| | | ItemData14:%s,
|
| | | ItemDataSize15:%d,
|
| | | ItemData15:%s
|
| | | ItemData15:%s,
|
| | | ItemDataSize16:%d,
|
| | | ItemData16:%s,
|
| | | ItemDataSize17:%d,
|
| | | ItemData17:%s,
|
| | | ItemDataSize18:%d,
|
| | | ItemData18:%s,
|
| | | ItemDataSize19:%d,
|
| | | ItemData19:%s,
|
| | | ItemDataSize20:%d,
|
| | | ItemData20:%s
|
| | | '''\
|
| | | %(
|
| | | self.Head.OutputString(),
|
| | |
| | | self.ItemDataSize14,
|
| | | self.ItemData14,
|
| | | self.ItemDataSize15,
|
| | | self.ItemData15
|
| | | self.ItemData15,
|
| | | self.ItemDataSize16,
|
| | | self.ItemData16,
|
| | | self.ItemDataSize17,
|
| | | self.ItemData17,
|
| | | self.ItemDataSize18,
|
| | | self.ItemData18,
|
| | | self.ItemDataSize19,
|
| | | self.ItemData19,
|
| | | self.ItemDataSize20,
|
| | | self.ItemData20
|
| | | )
|
| | | return DumpString
|
| | |
|