From 26958aff1b844a743a805b4f9075bee800b72a46 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 04 十一月 2025 14:35:37 +0800
Subject: [PATCH] 332 【主界面】座骑系统-服务端
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/DBStruct.py | 448 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 443 insertions(+), 5 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/DBStruct.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/DBStruct.py
index 8353749..9ec0831 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/DBStruct.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/DBStruct.py
@@ -746,6 +746,7 @@
('FightPower', ctypes.c_ulong),
('FightPowerEx', ctypes.c_ulong),
('EmblemID', ctypes.c_ushort),
+ ('EmblemWord', ctypes.c_char * 3),
('ADOResult', ctypes.c_ulong),
]
@@ -768,6 +769,7 @@
self.FightPower = 0
self.FightPowerEx = 0
self.EmblemID = 0
+ self.EmblemWord = ''
def readData(self, buf, pos = 0, length = 0):
if not pos <= length:
@@ -790,6 +792,7 @@
self.FightPower, pos = CommFunc.ReadDWORD(buf, pos)
self.FightPowerEx, pos = CommFunc.ReadDWORD(buf, pos)
self.EmblemID, pos = CommFunc.ReadWORD(buf, pos)
+ self.EmblemWord, pos = CommFunc.ReadString(buf, pos, 3)
return self.getLength()
def getBuffer(self):
@@ -808,6 +811,7 @@
buf = CommFunc.WriteDWORD(buf, self.FightPower)
buf = CommFunc.WriteDWORD(buf, self.FightPowerEx)
buf = CommFunc.WriteWORD(buf, self.EmblemID)
+ buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 3, self.EmblemWord)
return buf
def getLength(self):
@@ -826,6 +830,7 @@
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ushort)
+ length += sizeof(ctypes.c_char) * 3
return length
def outputString(self):
@@ -844,6 +849,7 @@
FightPower = %s,
FightPowerEx = %s,
EmblemID = %s,
+ EmblemWord = %s,
ADOResult = %s,
'''%(
self.ID,
@@ -860,6 +866,7 @@
self.FightPower,
self.FightPowerEx,
self.EmblemID,
+ self.EmblemWord,
self.ADOResult,
)
return output
@@ -870,6 +877,12 @@
self.Name = Str
else:
self.Name = Str[:33]
+
+ def SetEmblemWord(self,Str):
+ if len(Str)<=3:
+ self.EmblemWord = Str
+ else:
+ self.EmblemWord = Str[:3]
# 家族成员表 #tagDBFamilyMem
@@ -891,7 +904,10 @@
('OffTime', ctypes.c_ulong),
('FmLV', ctypes.c_ubyte),
('ContribTotal', ctypes.c_ulong),
- ('ContribWeek', ctypes.c_ulong),
+ ('ContribDay', ctypes.c_ulong),
+ ('DonateCntTotal', ctypes.c_ulong),
+ ('DonateCntDay', ctypes.c_ubyte),
+ ('TitleID', ctypes.c_ulong),
('ADOResult', ctypes.c_ulong),
]
@@ -924,7 +940,10 @@
self.OffTime, pos = CommFunc.ReadDWORD(buf, pos)
self.FmLV, pos = CommFunc.ReadBYTE(buf, pos)
self.ContribTotal, pos = CommFunc.ReadDWORD(buf, pos)
- self.ContribWeek, pos = CommFunc.ReadDWORD(buf, pos)
+ self.ContribDay, pos = CommFunc.ReadDWORD(buf, pos)
+ self.DonateCntTotal, pos = CommFunc.ReadDWORD(buf, pos)
+ self.DonateCntDay, pos = CommFunc.ReadBYTE(buf, pos)
+ self.TitleID, pos = CommFunc.ReadDWORD(buf, pos)
return self.getLength()
@@ -953,7 +972,10 @@
OffTime = %s,
FmLV = %s,
ContribTotal = %s,
- ContribWeek = %s,
+ ContribDay = %s,
+ DonateCntTotal = %s,
+ DonateCntDay = %s,
+ TitleID = %s,
ADOResult = %s,
'''%(
self.PlayerID,
@@ -971,7 +993,10 @@
self.OffTime,
self.FmLV,
self.ContribTotal,
- self.ContribWeek,
+ self.ContribDay,
+ self.DonateCntTotal,
+ self.DonateCntDay,
+ self.TitleID,
self.ADOResult,
)
return output
@@ -1126,9 +1151,12 @@
('RealmLV', ctypes.c_ubyte),
('Face', ctypes.c_int),
('FacePic', ctypes.c_int),
+ ('ModelMark', ctypes.c_ulong),
+ ('EquipShowSwitch', ctypes.c_ulong),
('FamilyID', ctypes.c_ulong),
('FamilyName', ctypes.c_char * 33),
('FamilyEmblemID', ctypes.c_ushort),
+ ('FamilyEmblemWord', ctypes.c_char * 3),
('TitleID', ctypes.c_ulong),
('FightPower', ctypes.c_ulong),
('FightPowerEx', ctypes.c_ulong),
@@ -1152,9 +1180,12 @@
self.RealmLV = 0
self.Face = 0
self.FacePic = 0
+ self.ModelMark = 0
+ self.EquipShowSwitch = 0
self.FamilyID = 0
self.FamilyName = ''
self.FamilyEmblemID = 0
+ self.FamilyEmblemWord = ''
self.TitleID = 0
self.FightPower = 0
self.FightPowerEx = 0
@@ -1177,9 +1208,12 @@
self.RealmLV, pos = CommFunc.ReadBYTE(buf, pos)
self.Face, pos = CommFunc.ReadDWORD(buf, pos)
self.FacePic, pos = CommFunc.ReadDWORD(buf, pos)
+ self.ModelMark, pos = CommFunc.ReadDWORD(buf, pos)
+ self.EquipShowSwitch, pos = CommFunc.ReadDWORD(buf, pos)
self.FamilyID, pos = CommFunc.ReadDWORD(buf, pos)
self.FamilyName, pos = CommFunc.ReadString(buf, pos, 33)
self.FamilyEmblemID, pos = CommFunc.ReadWORD(buf, pos)
+ self.FamilyEmblemWord, pos = CommFunc.ReadString(buf, pos, 3)
self.TitleID, pos = CommFunc.ReadDWORD(buf, pos)
self.FightPower, pos = CommFunc.ReadDWORD(buf, pos)
self.FightPowerEx, pos = CommFunc.ReadDWORD(buf, pos)
@@ -1200,9 +1234,12 @@
buf = CommFunc.WriteBYTE(buf, self.RealmLV)
buf = CommFunc.WriteDWORD(buf, self.Face)
buf = CommFunc.WriteDWORD(buf, self.FacePic)
+ buf = CommFunc.WriteDWORD(buf, self.ModelMark)
+ buf = CommFunc.WriteDWORD(buf, self.EquipShowSwitch)
buf = CommFunc.WriteDWORD(buf, self.FamilyID)
buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 33, self.FamilyName)
buf = CommFunc.WriteWORD(buf, self.FamilyEmblemID)
+ buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 3, self.FamilyEmblemWord)
buf = CommFunc.WriteDWORD(buf, self.TitleID)
buf = CommFunc.WriteDWORD(buf, self.FightPower)
buf = CommFunc.WriteDWORD(buf, self.FightPowerEx)
@@ -1223,8 +1260,11 @@
length += sizeof(ctypes.c_int)
length += sizeof(ctypes.c_int)
length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_char) * 33
length += sizeof(ctypes.c_ushort)
+ length += sizeof(ctypes.c_char) * 3
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ulong)
@@ -1244,9 +1284,12 @@
RealmLV = %s,
Face = %s,
FacePic = %s,
+ ModelMark = %s,
+ EquipShowSwitch = %s,
FamilyID = %s,
FamilyName = %s,
FamilyEmblemID = %s,
+ FamilyEmblemWord = %s,
TitleID = %s,
FightPower = %s,
FightPowerEx = %s,
@@ -1264,9 +1307,12 @@
self.RealmLV,
self.Face,
self.FacePic,
+ self.ModelMark,
+ self.EquipShowSwitch,
self.FamilyID,
self.FamilyName,
self.FamilyEmblemID,
+ self.FamilyEmblemWord,
self.TitleID,
self.FightPower,
self.FightPowerEx,
@@ -1296,6 +1342,12 @@
self.FamilyName = Str
else:
self.FamilyName = Str[:33]
+
+ def SetFamilyEmblemWord(self,Str):
+ if len(Str)<=3:
+ self.FamilyEmblemWord = Str
+ else:
+ self.FamilyEmblemWord = Str[:3]
# 邮件个人邮件表 #tagDBMailPersonal
@@ -1723,6 +1775,7 @@
('CmpValue', ctypes.c_ulong),
('CmpValue2', ctypes.c_ulong),
('CmpValue3', ctypes.c_ulong),
+ ('Time', ctypes.c_ulong),
('DataLen', ctypes.c_ushort),
('UserData', ctypes.c_char_p),
('ADOResult', ctypes.c_ulong),
@@ -1752,6 +1805,7 @@
self.CmpValue = 0
self.CmpValue2 = 0
self.CmpValue3 = 0
+ self.Time = 0
self.DataLen = 0
self.UserData = ''
@@ -1780,6 +1834,7 @@
self.CmpValue, pos = CommFunc.ReadDWORD(buf, pos)
self.CmpValue2, pos = CommFunc.ReadDWORD(buf, pos)
self.CmpValue3, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Time, pos = CommFunc.ReadDWORD(buf, pos)
self.DataLen, pos = CommFunc.ReadWORD(buf, pos)
tmp, pos = CommFunc.ReadString(buf, pos, self.DataLen)
self.UserData = ctypes.c_char_p(tmp)
@@ -1806,6 +1861,7 @@
buf = CommFunc.WriteDWORD(buf, self.CmpValue)
buf = CommFunc.WriteDWORD(buf, self.CmpValue2)
buf = CommFunc.WriteDWORD(buf, self.CmpValue3)
+ buf = CommFunc.WriteDWORD(buf, self.Time)
buf = CommFunc.WriteWORD(buf, self.DataLen)
buf = CommFunc.WriteString(buf, self.DataLen, self.UserData)
return buf
@@ -1820,6 +1876,7 @@
length += sizeof(ctypes.c_char) * 33
length += sizeof(ctypes.c_char) * 65
length += sizeof(ctypes.c_ubyte)
+ length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ulong)
@@ -1856,6 +1913,7 @@
CmpValue = %s,
CmpValue2 = %s,
CmpValue3 = %s,
+ Time = %s,
DataLen = %s,
UserData = %s,
ADOResult = %s,
@@ -1879,6 +1937,7 @@
self.CmpValue,
self.CmpValue2,
self.CmpValue3,
+ self.Time,
self.DataLen,
self.UserData,
self.ADOResult,
@@ -1899,10 +1958,389 @@
self.Name2 = Str[:65]
+# 通用记录表新 #tagDBGameRec
+class tagDBGameRec(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ('RecType', ctypes.c_ushort),
+ ('RecID', ctypes.c_ulong),
+ ('Time', ctypes.c_double),
+ ('Value1', ctypes.c_ulong),
+ ('Value2', ctypes.c_ulong),
+ ('Value3', ctypes.c_ulong),
+ ('Value4', ctypes.c_ulong),
+ ('Value5', ctypes.c_ulong),
+ ('Value6', ctypes.c_ulong),
+ ('Value7', ctypes.c_ulong),
+ ('Value8', ctypes.c_ulong),
+ ('UserDataLen', ctypes.c_ushort),
+ ('UserData', ctypes.c_char_p),
+ ('ADOResult', ctypes.c_ulong),
+ ]
+
+ def __init__(self):
+ Structure.__init__(self)
+ self.clear()
+
+ def clear(self):
+ self.RecType = 0
+ self.RecID = 0
+ self.Time = 0.0
+ self.Value1 = 0
+ self.Value2 = 0
+ self.Value3 = 0
+ self.Value4 = 0
+ self.Value5 = 0
+ self.Value6 = 0
+ self.Value7 = 0
+ self.Value8 = 0
+ self.UserDataLen = 0
+ self.UserData = ''
+
+ def readData(self, buf, pos = 0, length = 0):
+ if not pos <= length:
+ return -1
+ if len(buf) < pos + self.getLength():
+ return -1
+ self.clear()
+ self.RecType, pos = CommFunc.ReadWORD(buf, pos)
+ self.RecID, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Time, pos = CommFunc.ReadDouble(buf, pos)
+ self.Value1, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value2, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value3, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value4, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value5, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value6, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value7, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value8, pos = CommFunc.ReadDWORD(buf, pos)
+ self.UserDataLen, pos = CommFunc.ReadWORD(buf, pos)
+ tmp, pos = CommFunc.ReadString(buf, pos, self.UserDataLen)
+ self.UserData = ctypes.c_char_p(tmp)
+ return self.getLength()
+
+ def getBuffer(self):
+ buf = ''
+ buf = CommFunc.WriteWORD(buf, self.RecType)
+ buf = CommFunc.WriteDWORD(buf, self.RecID)
+ buf = CommFunc.WriteDouble(buf, self.Time)
+ buf = CommFunc.WriteDWORD(buf, self.Value1)
+ buf = CommFunc.WriteDWORD(buf, self.Value2)
+ buf = CommFunc.WriteDWORD(buf, self.Value3)
+ buf = CommFunc.WriteDWORD(buf, self.Value4)
+ buf = CommFunc.WriteDWORD(buf, self.Value5)
+ buf = CommFunc.WriteDWORD(buf, self.Value6)
+ buf = CommFunc.WriteDWORD(buf, self.Value7)
+ buf = CommFunc.WriteDWORD(buf, self.Value8)
+ buf = CommFunc.WriteWORD(buf, self.UserDataLen)
+ buf = CommFunc.WriteString(buf, self.UserDataLen, self.UserData)
+ return buf
+
+ def getLength(self):
+ length = 0
+ length += sizeof(ctypes.c_ushort)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_double)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ushort)
+ length += self.UserDataLen
+ return length
+
+ def outputString(self):
+ output = '''// 通用记录表新 #tagDBGameRec:
+ RecType = %s,
+ RecID = %s,
+ Time = %s,
+ Value1 = %s,
+ Value2 = %s,
+ Value3 = %s,
+ Value4 = %s,
+ Value5 = %s,
+ Value6 = %s,
+ Value7 = %s,
+ Value8 = %s,
+ UserDataLen = %s,
+ UserData = %s,
+ ADOResult = %s,
+ '''%(
+ self.RecType,
+ self.RecID,
+ self.Time,
+ self.Value1,
+ self.Value2,
+ self.Value3,
+ self.Value4,
+ self.Value5,
+ self.Value6,
+ self.Value7,
+ self.Value8,
+ self.UserDataLen,
+ self.UserData,
+ self.ADOResult,
+ )
+ return output
+
+
+# 功能队伍表 #tagDBFuncTeam
+class tagDBFuncTeam(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ('TeamID', ctypes.c_ulong),
+ ('TeamName', ctypes.c_char * 33),
+ ('ZoneID', ctypes.c_ubyte),
+ ('FuncMapID', ctypes.c_ulong),
+ ('FuncMapEx', ctypes.c_ulong),
+ ('CreateTime', ctypes.c_ulong),
+ ('CaptainID', ctypes.c_ulong),
+ ('MinLV', ctypes.c_ushort),
+ ('MinFightPower', ctypes.c_ulong),
+ ('MinFightPowerEx', ctypes.c_ulong),
+ ('ServerOnly', ctypes.c_ubyte),
+ ('NeedCheck', ctypes.c_ubyte),
+ ('ApplyIDLen', ctypes.c_ushort),
+ ('ApplyIDList', ctypes.c_char_p),
+ ('Value1', ctypes.c_ulong),
+ ('Value2', ctypes.c_ulong),
+ ('Value3', ctypes.c_ulong),
+ ('Value4', ctypes.c_ulong),
+ ('Value5', ctypes.c_ulong),
+ ('ADOResult', ctypes.c_ulong),
+ ]
+
+ def __init__(self):
+ Structure.__init__(self)
+ self.clear()
+
+ def clear(self):
+ self.TeamID = 0
+ self.TeamName = ''
+ self.ZoneID = 0
+ self.FuncMapID = 0
+ self.FuncMapEx = 0
+ self.CreateTime = 0
+ self.CaptainID = 0
+ self.MinLV = 0
+ self.MinFightPower = 0
+ self.MinFightPowerEx = 0
+ self.ServerOnly = 0
+ self.NeedCheck = 0
+ self.ApplyIDLen = 0
+ self.ApplyIDList = ''
+ self.Value1 = 0
+ self.Value2 = 0
+ self.Value3 = 0
+ self.Value4 = 0
+ self.Value5 = 0
+
+ def readData(self, buf, pos = 0, length = 0):
+ if not pos <= length:
+ return -1
+ if len(buf) < pos + self.getLength():
+ return -1
+ self.clear()
+ self.TeamID, pos = CommFunc.ReadDWORD(buf, pos)
+ self.TeamName, pos = CommFunc.ReadString(buf, pos, 33)
+ self.ZoneID, pos = CommFunc.ReadBYTE(buf, pos)
+ self.FuncMapID, pos = CommFunc.ReadDWORD(buf, pos)
+ self.FuncMapEx, pos = CommFunc.ReadDWORD(buf, pos)
+ self.CreateTime, pos = CommFunc.ReadDWORD(buf, pos)
+ self.CaptainID, pos = CommFunc.ReadDWORD(buf, pos)
+ self.MinLV, pos = CommFunc.ReadWORD(buf, pos)
+ self.MinFightPower, pos = CommFunc.ReadDWORD(buf, pos)
+ self.MinFightPowerEx, pos = CommFunc.ReadDWORD(buf, pos)
+ self.ServerOnly, pos = CommFunc.ReadBYTE(buf, pos)
+ self.NeedCheck, pos = CommFunc.ReadBYTE(buf, pos)
+ self.ApplyIDLen, pos = CommFunc.ReadWORD(buf, pos)
+ tmp, pos = CommFunc.ReadString(buf, pos, self.ApplyIDLen)
+ self.ApplyIDList = ctypes.c_char_p(tmp)
+ self.Value1, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value2, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value3, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value4, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value5, pos = CommFunc.ReadDWORD(buf, pos)
+ return self.getLength()
+
+ def getBuffer(self):
+ buf = ''
+ buf = CommFunc.WriteDWORD(buf, self.TeamID)
+ buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 33, self.TeamName)
+ buf = CommFunc.WriteBYTE(buf, self.ZoneID)
+ buf = CommFunc.WriteDWORD(buf, self.FuncMapID)
+ buf = CommFunc.WriteDWORD(buf, self.FuncMapEx)
+ buf = CommFunc.WriteDWORD(buf, self.CreateTime)
+ buf = CommFunc.WriteDWORD(buf, self.CaptainID)
+ buf = CommFunc.WriteWORD(buf, self.MinLV)
+ buf = CommFunc.WriteDWORD(buf, self.MinFightPower)
+ buf = CommFunc.WriteDWORD(buf, self.MinFightPowerEx)
+ buf = CommFunc.WriteBYTE(buf, self.ServerOnly)
+ buf = CommFunc.WriteBYTE(buf, self.NeedCheck)
+ buf = CommFunc.WriteWORD(buf, self.ApplyIDLen)
+ buf = CommFunc.WriteString(buf, self.ApplyIDLen, self.ApplyIDList)
+ buf = CommFunc.WriteDWORD(buf, self.Value1)
+ buf = CommFunc.WriteDWORD(buf, self.Value2)
+ buf = CommFunc.WriteDWORD(buf, self.Value3)
+ buf = CommFunc.WriteDWORD(buf, self.Value4)
+ buf = CommFunc.WriteDWORD(buf, self.Value5)
+ return buf
+
+ def getLength(self):
+ length = 0
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_char) * 33
+ length += sizeof(ctypes.c_ubyte)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ushort)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ubyte)
+ length += sizeof(ctypes.c_ubyte)
+ length += sizeof(ctypes.c_ushort)
+ length += self.ApplyIDLen
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ length += sizeof(ctypes.c_ulong)
+ return length
+
+ def outputString(self):
+ output = '''// 功能队伍表 #tagDBFuncTeam:
+ TeamID = %s,
+ TeamName = %s,
+ ZoneID = %s,
+ FuncMapID = %s,
+ FuncMapEx = %s,
+ CreateTime = %s,
+ CaptainID = %s,
+ MinLV = %s,
+ MinFightPower = %s,
+ MinFightPowerEx = %s,
+ ServerOnly = %s,
+ NeedCheck = %s,
+ ApplyIDLen = %s,
+ ApplyIDList = %s,
+ Value1 = %s,
+ Value2 = %s,
+ Value3 = %s,
+ Value4 = %s,
+ Value5 = %s,
+ ADOResult = %s,
+ '''%(
+ self.TeamID,
+ self.TeamName,
+ self.ZoneID,
+ self.FuncMapID,
+ self.FuncMapEx,
+ self.CreateTime,
+ self.CaptainID,
+ self.MinLV,
+ self.MinFightPower,
+ self.MinFightPowerEx,
+ self.ServerOnly,
+ self.NeedCheck,
+ self.ApplyIDLen,
+ self.ApplyIDList,
+ self.Value1,
+ self.Value2,
+ self.Value3,
+ self.Value4,
+ self.Value5,
+ self.ADOResult,
+ )
+ return output
+
+ #Char数组类型Set接口,使用该接口对此类型数据赋值,防止赋值的数据过长报错
+ def SetTeamName(self,Str):
+ if len(Str)<=33:
+ self.TeamName = Str
+ else:
+ self.TeamName = Str[:33]
+
+
+# 功能队伍成员表 #tagDBFuncTeamMem
+class tagDBFuncTeamMem(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ('TeamID', ctypes.c_ulong),
+ ('PlayerID', ctypes.c_ulong),
+ ('Value1', ctypes.c_ulong),
+ ('Value2', ctypes.c_ulong),
+ ('Value3', ctypes.c_ulong),
+ ('Value4', ctypes.c_ulong),
+ ('Value5', ctypes.c_ulong),
+ ('ADOResult', ctypes.c_ulong),
+ ]
+
+ def __init__(self):
+ Structure.__init__(self)
+ self.clear()
+
+
+ def clear(self):
+ memset(addressof(self), 0, self.getLength())
+
+ def readData(self, buf, pos = 0, length = 0):
+ if not pos <= length:
+ return -1
+ if len(buf) < pos + self.getLength():
+ return -1
+ self.clear()
+ self.TeamID, pos = CommFunc.ReadDWORD(buf, pos)
+ self.PlayerID, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value1, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value2, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value3, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value4, pos = CommFunc.ReadDWORD(buf, pos)
+ self.Value5, pos = CommFunc.ReadDWORD(buf, pos)
+ return self.getLength()
+
+
+ def getBuffer(self):
+ buf = create_string_buffer(self.getLength())
+ memmove(addressof(buf), addressof(self), self.getLength())
+ return string_at(addressof(buf), self.getLength())
+
+ def getLength(self):
+ return sizeof(tagDBFuncTeamMem)
+
+ def outputString(self):
+ output = '''// 功能队伍成员表 #tagDBFuncTeamMem:
+ TeamID = %s,
+ PlayerID = %s,
+ Value1 = %s,
+ Value2 = %s,
+ Value3 = %s,
+ Value4 = %s,
+ Value5 = %s,
+ ADOResult = %s,
+ '''%(
+ self.TeamID,
+ self.PlayerID,
+ self.Value1,
+ self.Value2,
+ self.Value3,
+ self.Value4,
+ self.Value5,
+ self.ADOResult,
+ )
+ return output
+
+
+
#服务器世界数据表版本号
GAMEWORLD_DATA_VERSION_NO = ctypes.c_ulong (\
sizeof(tagDBEventTrig) + sizeof(tagDBFamily) + sizeof(tagDBFamilyMem) + sizeof(tagDBFamilyAction) +
sizeof(tagDBPlayerViewCache) + sizeof(tagDBMailPersonal) + sizeof(tagDBMailServer) + sizeof(tagDBMailItem) +
- sizeof(tagDBMailPlayerRec) + sizeof(tagDBBillboard)
+ sizeof(tagDBMailPlayerRec) + sizeof(tagDBBillboard) + sizeof(tagDBGameRec) + sizeof(tagDBFuncTeam) + sizeof(tagDBFuncTeamMem)
).value
\ No newline at end of file
--
Gitblit v1.8.0