9727 【BT7】【主干】【越南】【后端】查看玩家装备缓存扩展到20阶(支持查看射雕装备17阶)
4个文件已修改
240 ■■■■■ 已修改文件
ServerPython/CoreServerGroup/GameServer/Script/ChMapToGamePyPack.py 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChMapToGamePyPack.py 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/ChMapToGamePyPack.py
@@ -705,6 +705,16 @@
    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):
@@ -754,6 +764,16 @@
        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):
@@ -799,6 +819,16 @@
        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):
@@ -842,6 +872,16 @@
        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
@@ -886,6 +926,16 @@
        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):
@@ -928,7 +978,17 @@
                                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(),
@@ -969,7 +1029,17 @@
                                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
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerViewCache.py
@@ -29,6 +29,7 @@
import PyGameDataStruct
import IpyGameDataPY
import PyDataManager
import ShareDefine
import ChConfig
import json
@@ -82,6 +83,16 @@
        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
@@ -154,8 +165,8 @@
#    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
@@ -192,7 +203,7 @@
    #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 = ""
ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
@@ -636,6 +636,16 @@
        ('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),
    ]
@@ -683,6 +693,16 @@
        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:
@@ -747,6 +767,21 @@
        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):
@@ -790,6 +825,16 @@
        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):
@@ -833,6 +878,16 @@
        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):
@@ -876,6 +931,16 @@
            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,
@@ -917,6 +982,16 @@
                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
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChMapToGamePyPack.py
@@ -705,6 +705,16 @@
    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):
@@ -754,6 +764,16 @@
        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):
@@ -799,6 +819,16 @@
        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):
@@ -842,6 +872,16 @@
        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
@@ -886,6 +926,16 @@
        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):
@@ -928,7 +978,17 @@
                                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(),
@@ -969,7 +1029,17 @@
                                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