From 40f41d737bb9f7df71c6260b766756ba8a2ea1fc Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 20 六月 2024 21:14:13 +0800
Subject: [PATCH] Merge branch 'hyyngame' of http://192.168.1.20:10010/r/SnxxServerCode into hyyngame

---
 ServerPython/CoreServerGroup/GameServer/Script/IPY_Family.py                       |   22 +++++++
 ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py                 |  110 ++++++++++++++++++++++++++++++++++--
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IPY_GameObj.py |    3 +
 ServerPython/CoreServerGroup/GameServer/Script/IPY_Team.py                         |    4 +
 ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py                |    4 +
 ServerPython/CoreServerGroup/GameServer/Script/IPY_BillboardManager.py             |   16 +++++
 6 files changed, 151 insertions(+), 8 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IPY_BillboardManager.py b/ServerPython/CoreServerGroup/GameServer/Script/IPY_BillboardManager.py
index 0efea77..586fe9b 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IPY_BillboardManager.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IPY_BillboardManager.py
@@ -244,9 +244,17 @@
     def GetType2(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetType2(self)
     def GetValue1(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue1(self)
     def GetValue2(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue2(self)
+    def GetValue3(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue3(self)
+    def GetValue4(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue4(self)
+    def GetValue5(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue5(self)
+    def GetValue6(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue6(self)
+    def GetValue7(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue7(self)
+    def GetValue8(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetValue8(self)
     def GetCmpValue(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetCmpValue(self)
     def GetCmpValue2(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetCmpValue2(self)
     def GetCmpValue3(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetCmpValue3(self)
+    def GetDataLen(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetDataLen(self)
+    def GetUserData(self): return _IPY_BillboardManager.IPY_DBBillboardData_GetUserData(self)
     def SetType(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetType(self, *args)
     def SetID(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetID(self, *args)
     def SetID2(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetID2(self, *args)
@@ -255,9 +263,17 @@
     def SetType2(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetType2(self, *args)
     def SetValue1(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue1(self, *args)
     def SetValue2(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue2(self, *args)
+    def SetValue3(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue3(self, *args)
+    def SetValue4(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue4(self, *args)
+    def SetValue5(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue5(self, *args)
+    def SetValue6(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue6(self, *args)
+    def SetValue7(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue7(self, *args)
+    def SetValue8(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetValue8(self, *args)
     def SetCmpValue(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetCmpValue(self, *args)
     def SetCmpValue2(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetCmpValue2(self, *args)
     def SetCmpValue3(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetCmpValue3(self, *args)
+    def SetDataLen(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetDataLen(self, *args)
+    def SetUserData(self, *args): return _IPY_BillboardManager.IPY_DBBillboardData_SetUserData(self, *args)
 IPY_DBBillboardData_swigregister = _IPY_BillboardManager.IPY_DBBillboardData_swigregister
 IPY_DBBillboardData_swigregister(IPY_DBBillboardData)
 
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IPY_Family.py b/ServerPython/CoreServerGroup/GameServer/Script/IPY_Family.py
index 8d50dee..0c1d17e 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IPY_Family.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IPY_Family.py
@@ -269,10 +269,20 @@
     def SetExattr4(self, *args): return _IPY_Family.IPY_PlayerFamily_SetExattr4(self, *args)
     def GetExattr5(self): return _IPY_Family.IPY_PlayerFamily_GetExattr5(self)
     def SetExattr5(self, *args): return _IPY_Family.IPY_PlayerFamily_SetExattr5(self, *args)
+    def GetExattr6(self): return _IPY_Family.IPY_PlayerFamily_GetExattr6(self)
+    def SetExattr6(self, *args): return _IPY_Family.IPY_PlayerFamily_SetExattr6(self, *args)
+    def GetExattr7(self): return _IPY_Family.IPY_PlayerFamily_GetExattr7(self)
+    def SetExattr7(self, *args): return _IPY_Family.IPY_PlayerFamily_SetExattr7(self, *args)
+    def GetExattr8(self): return _IPY_Family.IPY_PlayerFamily_GetExattr8(self)
+    def SetExattr8(self, *args): return _IPY_Family.IPY_PlayerFamily_SetExattr8(self, *args)
     def GetOfficialRank(self): return _IPY_Family.IPY_PlayerFamily_GetOfficialRank(self)
     def SetOfficialRank(self, *args): return _IPY_Family.IPY_PlayerFamily_SetOfficialRank(self, *args)
     def GetOperateInfo(self): return _IPY_Family.IPY_PlayerFamily_GetOperateInfo(self)
     def SetOperateInfo(self, *args): return _IPY_Family.IPY_PlayerFamily_SetOperateInfo(self, *args)
+    def GetFace(self): return _IPY_Family.IPY_PlayerFamily_GetFace(self)
+    def SetFace(self, *args): return _IPY_Family.IPY_PlayerFamily_SetFace(self, *args)
+    def GetFacePic(self): return _IPY_Family.IPY_PlayerFamily_GetFacePic(self)
+    def SetFacePic(self, *args): return _IPY_Family.IPY_PlayerFamily_SetFacePic(self, *args)
 IPY_PlayerFamily_swigregister = _IPY_Family.IPY_PlayerFamily_swigregister
 IPY_PlayerFamily_swigregister(IPY_PlayerFamily)
 
@@ -339,6 +349,18 @@
     def Broadcast_FamilyChange(self): return _IPY_Family.IPY_FamilyInfo_Broadcast_FamilyChange(self)
     def Broadcast_FamilyTechChange(self, *args): return _IPY_Family.IPY_FamilyInfo_Broadcast_FamilyTechChange(self, *args)
     def Broadcast_DeleteFamilyTech(self, *args): return _IPY_Family.IPY_FamilyInfo_Broadcast_DeleteFamilyTech(self, *args)
+    def GetExtra6(self): return _IPY_Family.IPY_FamilyInfo_GetExtra6(self)
+    def SetExtra6(self, *args): return _IPY_Family.IPY_FamilyInfo_SetExtra6(self, *args)
+    def GetExtra7(self): return _IPY_Family.IPY_FamilyInfo_GetExtra7(self)
+    def SetExtra7(self, *args): return _IPY_Family.IPY_FamilyInfo_SetExtra7(self, *args)
+    def GetExtra8(self): return _IPY_Family.IPY_FamilyInfo_GetExtra8(self)
+    def SetExtra8(self, *args): return _IPY_Family.IPY_FamilyInfo_SetExtra8(self, *args)
+    def GetExtra9(self): return _IPY_Family.IPY_FamilyInfo_GetExtra9(self)
+    def SetExtra9(self, *args): return _IPY_Family.IPY_FamilyInfo_SetExtra9(self, *args)
+    def GetExtra10(self): return _IPY_Family.IPY_FamilyInfo_GetExtra10(self)
+    def SetExtra10(self, *args): return _IPY_Family.IPY_FamilyInfo_SetExtra10(self, *args)
+    def GetServerID(self): return _IPY_Family.IPY_FamilyInfo_GetServerID(self)
+    def SetServerID(self, *args): return _IPY_Family.IPY_FamilyInfo_SetServerID(self, *args)
 IPY_FamilyInfo_swigregister = _IPY_Family.IPY_FamilyInfo_swigregister
 IPY_FamilyInfo_swigregister(IPY_FamilyInfo)
 
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/IPY_Team.py b/ServerPython/CoreServerGroup/GameServer/Script/IPY_Team.py
index 9c4f719..fc4130e 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/IPY_Team.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/IPY_Team.py
@@ -254,6 +254,10 @@
     def SetPlayerJobLevel(self, *args): return _IPY_Team.IPY_TeamMemberInfo_SetPlayerJobLevel(self, *args)
     def SetPlayerLV(self, *args): return _IPY_Team.IPY_TeamMemberInfo_SetPlayerLV(self, *args)
     def SetPlayerRealmLV(self, *args): return _IPY_Team.IPY_TeamMemberInfo_SetPlayerRealmLV(self, *args)
+    def GetFace(self): return _IPY_Team.IPY_TeamMemberInfo_GetFace(self)
+    def SetFace(self, *args): return _IPY_Team.IPY_TeamMemberInfo_SetFace(self, *args)
+    def GetFacePic(self): return _IPY_Team.IPY_TeamMemberInfo_GetFacePic(self)
+    def SetFacePic(self, *args): return _IPY_Team.IPY_TeamMemberInfo_SetFacePic(self, *args)
 IPY_TeamMemberInfo_swigregister = _IPY_Team.IPY_TeamMemberInfo_swigregister
 IPY_TeamMemberInfo_swigregister(IPY_TeamMemberInfo)
 
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py
index 2692310..a495da4 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/CreateRole.py
@@ -240,7 +240,9 @@
                                     IPY_GameServer.TYPE_Price_Gold_Paper,   #默认使用金票     (金子/金票)
                                     IPY_GameServer.TYPE_Price_Silver_Money, #默认使用银子     (银子/银票)
                                     80,                             #默认自动回血设定   inputHPRestoreSetting
-                                    80                              #默认自动回魔设定   inputMPRestoreSetting
+                                    80,                              #默认自动回魔设定   inputMPRestoreSetting
+                                    0,                              #roleType
+                                    0                               #modelMark
                                     )
     
     # 创角流向
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py b/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
index a04b1fa..2a3aa80 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/PyGameDataStruct.py
@@ -160,6 +160,7 @@
             self.LimitTime = Str[:30]
             
 
+#------------------------------------------------------
 # 跨服排行榜 #tagDBCrossBillboard
 class tagDBCrossBillboard(Structure):
     _pack_ = 1
@@ -174,9 +175,17 @@
         ('Type2', ctypes.c_ubyte),
         ('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),
         ('CmpValue', ctypes.c_ulong),
         ('CmpValue2', ctypes.c_ulong),
         ('CmpValue3', ctypes.c_ulong),
+        ('DataLen', ctypes.c_ushort),
+        ('UserData', ctypes.c_char_p),
         ('ADOResult', ctypes.c_ulong),
     ]
 
@@ -184,9 +193,28 @@
         Structure.__init__(self)
         self.clear()
 
-
     def clear(self):
-        memset(addressof(self), 0, self.getLength())
+        self.GroupValue1 = 0
+        self.GroupValue2 = 0
+        self.BillboardType = 0
+        self.ID = 0
+        self.ID2 = 0
+        self.Name1 = ''
+        self.Name2 = ''
+        self.Type2 = 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.CmpValue = 0
+        self.CmpValue2 = 0
+        self.CmpValue3 = 0
+        self.DataLen = 0
+        self.UserData = ''
 
     def readData(self, buf, pos = 0, length = 0):
         if not pos <= length:
@@ -204,19 +232,69 @@
         self.Type2, pos = CommFunc.ReadBYTE(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.CmpValue, pos = CommFunc.ReadDWORD(buf, pos)
         self.CmpValue2, pos = CommFunc.ReadDWORD(buf, pos)
         self.CmpValue3, 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)
         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())
+        buf = ''
+        buf = CommFunc.WriteBYTE(buf, self.GroupValue1)
+        buf = CommFunc.WriteBYTE(buf, self.GroupValue2)
+        buf = CommFunc.WriteBYTE(buf, self.BillboardType)
+        buf = CommFunc.WriteDWORD(buf, self.ID)
+        buf = CommFunc.WriteDWORD(buf, self.ID2)
+        buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 33, self.Name1)
+        buf = CommFunc.WriteString(buf, sizeof(ctypes.c_char) * 33, self.Name2)
+        buf = CommFunc.WriteBYTE(buf, self.Type2)
+        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.WriteDWORD(buf, self.CmpValue)
+        buf = CommFunc.WriteDWORD(buf, self.CmpValue2)
+        buf = CommFunc.WriteDWORD(buf, self.CmpValue3)
+        buf = CommFunc.WriteWORD(buf, self.DataLen)
+        buf = CommFunc.WriteString(buf, self.DataLen, self.UserData)
+        return buf
 
     def getLength(self):
-        return sizeof(tagDBCrossBillboard)
+        length = 0
+        length += sizeof(ctypes.c_ubyte)
+        length += sizeof(ctypes.c_ubyte)
+        length += sizeof(ctypes.c_ubyte)
+        length += sizeof(ctypes.c_ulong)
+        length += sizeof(ctypes.c_ulong)
+        length += sizeof(ctypes.c_char) * 33
+        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_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.DataLen
+        return length
 
     def outputString(self):
         output = '''// 跨服排行榜 #tagDBCrossBillboard:
@@ -230,9 +308,17 @@
             Type2 = %s,
             Value1 = %s,
             Value2 = %s,
+            Value3 = %s,
+            Value4 = %s,
+            Value5 = %s,
+            Value6 = %s,
+            Value7 = %s,
+            Value8 = %s,
             CmpValue = %s,
             CmpValue2 = %s,
             CmpValue3 = %s,
+            DataLen = %s,
+            UserData = %s,
             ADOResult = %s,
             '''%(
                 self.GroupValue1,
@@ -245,9 +331,17 @@
                 self.Type2,
                 self.Value1,
                 self.Value2,
+                self.Value3,
+                self.Value4,
+                self.Value5,
+                self.Value6,
+                self.Value7,
+                self.Value8,
                 self.CmpValue,
                 self.CmpValue2,
                 self.CmpValue3,
+                self.DataLen,
+                self.UserData,
                 self.ADOResult,
             )
         return output
@@ -266,6 +360,8 @@
             self.Name2 = Str[:33]
             
 
+
+
 # 协助感谢表 #tagDBAssistThanks
 class tagDBAssistThanks(Structure):
     _pack_ = 1
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IPY_GameObj.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IPY_GameObj.py
index c50d6c0..22e91b7 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IPY_GameObj.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IPY_GameObj.py
@@ -937,6 +937,7 @@
     def GetName(self): return _IPY_GameObj.IPY_Player_GetName(self)
     def GetSex(self): return _IPY_GameObj.IPY_Player_GetSex(self)
     def GetFace(self): return _IPY_GameObj.IPY_Player_GetFace(self)
+    def SetFace(self, *args): return _IPY_GameObj.IPY_Player_SetFace(self, *args)
     def GetJob(self): return _IPY_GameObj.IPY_Player_GetJob(self)
     def GetReincarnationLv(self): return _IPY_GameObj.IPY_Player_GetReincarnationLv(self)
     def GetLV(self): return _IPY_GameObj.IPY_Player_GetLV(self)
@@ -1877,6 +1878,8 @@
     def GetVsRoomId(self): return _IPY_GameObj.IPY_Player_GetVsRoomId(self)
     def GetModelMark(self): return _IPY_GameObj.IPY_Player_GetModelMark(self)
     def SetModelMark(self, *args): return _IPY_GameObj.IPY_Player_SetModelMark(self, *args)
+    def GetRoleType(self): return _IPY_GameObj.IPY_Player_GetRoleType(self)
+    def SetRoleType(self, *args): return _IPY_GameObj.IPY_Player_SetRoleType(self, *args)
     def SetMapTransferUserData(self, *args): return _IPY_GameObj.IPY_Player_SetMapTransferUserData(self, *args)
     def GetMapTransferUserData(self): return _IPY_GameObj.IPY_Player_GetMapTransferUserData(self)
     def SetLastOrderId(self, *args): return _IPY_GameObj.IPY_Player_SetLastOrderId(self, *args)

--
Gitblit v1.8.0