From 905bad6a43c7ed07a436781600c8fe7ad41dd887 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 25 二月 2019 15:14:51 +0800
Subject: [PATCH] 6250 【后端】【2.0】拍卖行开发单(封包)
---
ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py | 13 +++++++++++++
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 18 ++++++++++++++++--
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 18 ++++++++++++++++--
3 files changed, 45 insertions(+), 4 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index bd952cb..f1b67ab 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -7419,6 +7419,7 @@
ItemID = 0 #(DWORD ItemID)
ItemCount = 0 #(WORD ItemCount)
AddTime = "" #(char AddTime[19])//上架时间 yyyy-MM-dd hh:mm:ss
+ BidderID = 0 #(DWORD BidderID)//竞拍玩家ID,也就是当前最高竞价玩家ID
BidderPrice = 0 #(WORD BidderPrice)//竞拍玩家出价
UserDataLen = 0 #(WORD UserDataLen)
UserData = "" #(String UserData)//自定义数据
@@ -7435,6 +7436,7 @@
self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
self.ItemCount,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.AddTime,_pos = CommFunc.ReadString(_lpData, _pos,19)
+ self.BidderID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
self.BidderPrice,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.UserDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.UserData,_pos = CommFunc.ReadString(_lpData, _pos,self.UserDataLen)
@@ -7446,6 +7448,7 @@
self.ItemID = 0
self.ItemCount = 0
self.AddTime = ""
+ self.BidderID = 0
self.BidderPrice = 0
self.UserDataLen = 0
self.UserData = ""
@@ -7458,6 +7461,7 @@
length += 4
length += 2
length += 19
+ length += 4
length += 2
length += 2
length += len(self.UserData)
@@ -7471,6 +7475,7 @@
data = CommFunc.WriteDWORD(data, self.ItemID)
data = CommFunc.WriteWORD(data, self.ItemCount)
data = CommFunc.WriteString(data, 19, self.AddTime)
+ data = CommFunc.WriteDWORD(data, self.BidderID)
data = CommFunc.WriteWORD(data, self.BidderPrice)
data = CommFunc.WriteWORD(data, self.UserDataLen)
data = CommFunc.WriteString(data, self.UserDataLen, self.UserData)
@@ -7483,6 +7488,7 @@
ItemID:%d,
ItemCount:%d,
AddTime:%s,
+ BidderID:%d,
BidderPrice:%d,
UserDataLen:%d,
UserData:%s
@@ -7493,6 +7499,7 @@
self.ItemID,
self.ItemCount,
self.AddTime,
+ self.BidderID,
self.BidderPrice,
self.UserDataLen,
self.UserData
@@ -8003,6 +8010,7 @@
# B5 03 拍卖行玩家拍卖记录 #tagGCPlayerAuctionRecordInfo
class tagGCPlayerAuctionRecord(Structure):
+ ItemGUID = "" #(char ItemGUID[40])
FamilyID = 0 #(DWORD FamilyID)//有值时为仙盟拍品
RecordType = 0 #(BYTE RecordType)//记录类型 0-流拍 1-拍卖成交 2-回收 3-竞价成功 4-竞价失败
RecordTime = "" #(char RecordTime[19])//记录时间 yyyy-MM-dd hh:mm:ss
@@ -8019,6 +8027,7 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
self.FamilyID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
self.RecordType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
self.RecordTime,_pos = CommFunc.ReadString(_lpData, _pos,19)
@@ -8030,6 +8039,7 @@
return _pos
def Clear(self):
+ self.ItemGUID = ""
self.FamilyID = 0
self.RecordType = 0
self.RecordTime = ""
@@ -8042,6 +8052,7 @@
def GetLength(self):
length = 0
+ length += 40
length += 4
length += 1
length += 19
@@ -8055,6 +8066,7 @@
def GetBuffer(self):
data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
data = CommFunc.WriteDWORD(data, self.FamilyID)
data = CommFunc.WriteBYTE(data, self.RecordType)
data = CommFunc.WriteString(data, 19, self.RecordTime)
@@ -8067,6 +8079,7 @@
def OutputString(self):
DumpString = '''
+ ItemGUID:%s,
FamilyID:%d,
RecordType:%d,
RecordTime:%s,
@@ -8077,6 +8090,7 @@
UserData:%s
'''\
%(
+ self.ItemGUID,
self.FamilyID,
self.RecordType,
self.RecordTime,
@@ -8092,7 +8106,7 @@
class tagGCPlayerAuctionRecordInfo(Structure):
Head = tagHead()
Count = 0 #(BYTE Count)
- AuctionRecordList = list() #(vector<tagGCPlayerAuctionRecordInfo> AuctionRecordList)
+ AuctionRecordList = list() #(vector<tagGCPlayerAuctionRecord> AuctionRecordList)
data = None
def __init__(self):
@@ -8106,7 +8120,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.Count):
- temAuctionRecordList = tagGCPlayerAuctionRecordInfo()
+ temAuctionRecordList = tagGCPlayerAuctionRecord()
_pos = temAuctionRecordList.ReadData(_lpData, _pos)
self.AuctionRecordList.append(temAuctionRecordList)
return _pos
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py b/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
index ced9f6a..8e1aa6e 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
@@ -79,6 +79,7 @@
class tagDBAuctionRecord(Structure):
_pack_ = 1
_fields_ = [
+ ('ItemGUID', ctypes.c_char * 40),
('PlayerID', ctypes.c_ulong),
('FamilyID', ctypes.c_ulong),
('RecordType', ctypes.c_ubyte),
@@ -96,6 +97,7 @@
self.clear()
def clear(self):
+ self.ItemGUID = ''
self.PlayerID = 0
self.FamilyID = 0
self.RecordType = 0
@@ -112,6 +114,7 @@
if len(buf) < pos + self.getLength():
return -1
self.clear()
+ self.ItemGUID, pos = CommFunc.ReadString(buf, pos, 40)
self.PlayerID, pos = CommFunc.ReadDWORD(buf, pos)
self.FamilyID, pos = CommFunc.ReadDWORD(buf, pos)
self.RecordType, pos = CommFunc.ReadBYTE(buf, pos)
@@ -126,6 +129,7 @@
def getBuffer(self):
buf = ''
+ buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 40, self.ItemGUID)
buf = CommFunc.WriteDWORD(buf, self.PlayerID)
buf = CommFunc.WriteDWORD(buf, self.FamilyID)
buf = CommFunc.WriteBYTE(buf, self.RecordType)
@@ -139,6 +143,7 @@
def getLength(self):
length = 0
+ length += sizeof(ctypes.c_char) * 40
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ulong)
length += sizeof(ctypes.c_ubyte)
@@ -152,6 +157,7 @@
def outputString(self):
output = '''// 拍卖记录表 #tagDBAuctionRecord:
+ ItemGUID = %s,
PlayerID = %s,
FamilyID = %s,
RecordType = %s,
@@ -163,6 +169,7 @@
UserData = %s,
ADOResult = %s,
'''%(
+ self.ItemGUID,
self.PlayerID,
self.FamilyID,
self.RecordType,
@@ -177,6 +184,12 @@
return output
#Char数组类型Set接口,使用该接口对此类型数据赋值,防止赋值的数据过长报错
+ def SetItemGUID(self,Str):
+ if len(Str)<=40:
+ self.ItemGUID = Str
+ else:
+ self.ItemGUID = Str[:40]
+
def SetRecordTime(self,Str):
if len(Str)<=19:
self.RecordTime = Str
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index bd952cb..f1b67ab 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -7419,6 +7419,7 @@
ItemID = 0 #(DWORD ItemID)
ItemCount = 0 #(WORD ItemCount)
AddTime = "" #(char AddTime[19])//上架时间 yyyy-MM-dd hh:mm:ss
+ BidderID = 0 #(DWORD BidderID)//竞拍玩家ID,也就是当前最高竞价玩家ID
BidderPrice = 0 #(WORD BidderPrice)//竞拍玩家出价
UserDataLen = 0 #(WORD UserDataLen)
UserData = "" #(String UserData)//自定义数据
@@ -7435,6 +7436,7 @@
self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
self.ItemCount,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.AddTime,_pos = CommFunc.ReadString(_lpData, _pos,19)
+ self.BidderID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
self.BidderPrice,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.UserDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
self.UserData,_pos = CommFunc.ReadString(_lpData, _pos,self.UserDataLen)
@@ -7446,6 +7448,7 @@
self.ItemID = 0
self.ItemCount = 0
self.AddTime = ""
+ self.BidderID = 0
self.BidderPrice = 0
self.UserDataLen = 0
self.UserData = ""
@@ -7458,6 +7461,7 @@
length += 4
length += 2
length += 19
+ length += 4
length += 2
length += 2
length += len(self.UserData)
@@ -7471,6 +7475,7 @@
data = CommFunc.WriteDWORD(data, self.ItemID)
data = CommFunc.WriteWORD(data, self.ItemCount)
data = CommFunc.WriteString(data, 19, self.AddTime)
+ data = CommFunc.WriteDWORD(data, self.BidderID)
data = CommFunc.WriteWORD(data, self.BidderPrice)
data = CommFunc.WriteWORD(data, self.UserDataLen)
data = CommFunc.WriteString(data, self.UserDataLen, self.UserData)
@@ -7483,6 +7488,7 @@
ItemID:%d,
ItemCount:%d,
AddTime:%s,
+ BidderID:%d,
BidderPrice:%d,
UserDataLen:%d,
UserData:%s
@@ -7493,6 +7499,7 @@
self.ItemID,
self.ItemCount,
self.AddTime,
+ self.BidderID,
self.BidderPrice,
self.UserDataLen,
self.UserData
@@ -8003,6 +8010,7 @@
# B5 03 拍卖行玩家拍卖记录 #tagGCPlayerAuctionRecordInfo
class tagGCPlayerAuctionRecord(Structure):
+ ItemGUID = "" #(char ItemGUID[40])
FamilyID = 0 #(DWORD FamilyID)//有值时为仙盟拍品
RecordType = 0 #(BYTE RecordType)//记录类型 0-流拍 1-拍卖成交 2-回收 3-竞价成功 4-竞价失败
RecordTime = "" #(char RecordTime[19])//记录时间 yyyy-MM-dd hh:mm:ss
@@ -8019,6 +8027,7 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
self.FamilyID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
self.RecordType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
self.RecordTime,_pos = CommFunc.ReadString(_lpData, _pos,19)
@@ -8030,6 +8039,7 @@
return _pos
def Clear(self):
+ self.ItemGUID = ""
self.FamilyID = 0
self.RecordType = 0
self.RecordTime = ""
@@ -8042,6 +8052,7 @@
def GetLength(self):
length = 0
+ length += 40
length += 4
length += 1
length += 19
@@ -8055,6 +8066,7 @@
def GetBuffer(self):
data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
data = CommFunc.WriteDWORD(data, self.FamilyID)
data = CommFunc.WriteBYTE(data, self.RecordType)
data = CommFunc.WriteString(data, 19, self.RecordTime)
@@ -8067,6 +8079,7 @@
def OutputString(self):
DumpString = '''
+ ItemGUID:%s,
FamilyID:%d,
RecordType:%d,
RecordTime:%s,
@@ -8077,6 +8090,7 @@
UserData:%s
'''\
%(
+ self.ItemGUID,
self.FamilyID,
self.RecordType,
self.RecordTime,
@@ -8092,7 +8106,7 @@
class tagGCPlayerAuctionRecordInfo(Structure):
Head = tagHead()
Count = 0 #(BYTE Count)
- AuctionRecordList = list() #(vector<tagGCPlayerAuctionRecordInfo> AuctionRecordList)
+ AuctionRecordList = list() #(vector<tagGCPlayerAuctionRecord> AuctionRecordList)
data = None
def __init__(self):
@@ -8106,7 +8120,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
for i in range(self.Count):
- temAuctionRecordList = tagGCPlayerAuctionRecordInfo()
+ temAuctionRecordList = tagGCPlayerAuctionRecord()
_pos = temAuctionRecordList.ReadData(_lpData, _pos)
self.AuctionRecordList.append(temAuctionRecordList)
return _pos
--
Gitblit v1.8.0