From 5d79b486b2974522c2d1978dc90c3081827224e0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 26 二月 2026 15:46:46 +0800
Subject: [PATCH] 493 【活动内容】武将登场-服务端

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBBillboard.py |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBBillboard.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBBillboard.py
index 66cd2fa..2818ac5 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBBillboard.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DB/StructData/DBBillboard.py
@@ -70,6 +70,8 @@
     def SetCmpValue2(self, cmpValue2): self.__dbData.CmpValue2 = cmpValue2
     def GetCmpValue3(self): return self.__dbData.CmpValue3
     def SetCmpValue3(self, cmpValue3): self.__dbData.CmpValue3 = cmpValue3
+    def GetTime(self): return self.__dbData.Time
+    def SetTime(self, updTime): self.__dbData.Time = updTime
     def GetUserData(self): return self.__dbData.UserData
     def SetUserData(self, userData):
         if not isinstance(userData, str):
@@ -105,6 +107,7 @@
         copyData.SetCmpValue(self.GetCmpValue())
         copyData.SetCmpValue2(self.GetCmpValue2())
         copyData.SetCmpValue3(self.GetCmpValue3())
+        copyData.SetTime(self.GetTime())
         return copyData
     
 class Billboard():
@@ -125,13 +128,13 @@
     def GetGroupValue1(self): return self.__groupValue1
     def GetGroupValue2(self): return self.__groupValue2
     
-    def ClearData(self):
+    def ClearData(self, drName=""):
         if not self.__billboardList:
             return
-        GameWorld.Log("Billboard ClearData billboardType=%s,groupValue1=%s,groupValue2=%s,dataCount=%s" 
-                      % (self.__billboardType, self.__groupValue1, self.__groupValue2, len(self.__billboardList)))
-        if GameWorld.IsCrossServer():
-            self.SaveDRData("Clear")
+        GameWorld.Log("Billboard ClearData billboardType=%s,groupValue1=%s,groupValue2=%s,dataCount=%s,drName=%s" 
+                      % (self.__billboardType, self.__groupValue1, self.__groupValue2, len(self.__billboardList), drName))
+        if drName or GameWorld.IsCrossServer():
+            self.SaveDRData(drName if drName else "Clear")
         self.__billboardList = [] # [BillboardData, ...] 
         self.__idOrderDict = {} # {id:名次, ...}
         self.__idIndexDict = {}
@@ -140,7 +143,7 @@
     def SortData(self):
         GameWorld.DebugLog("榜单排序: billboardType=%s,groupValue1=%s,groupValue2=%s,dataCount=%s" 
                       % (self.__billboardType, self.__groupValue1, self.__groupValue2, len(self.__billboardList)))
-        self.__billboardList.sort(key=lambda b: (b.GetCmpValue(), b.GetCmpValue2(), b.GetCmpValue3()), reverse=True)
+        self.__billboardList.sort(key=lambda b: (b.GetCmpValue(), b.GetCmpValue2(), b.GetCmpValue3(), -b.GetTime()), reverse=True)
         self.__idOrderDict = {} # 排序后重置,下次查询时更新并缓存
         self.__idIndexDict = {}
         self.__sortDelay = False
@@ -239,7 +242,7 @@
                         "Value5":bData.GetValue5(), "Value6":bData.GetValue6(),
                         "Value7":bData.GetValue7(), "Value8":bData.GetValue8(),
                         "CmpValue":bData.GetCmpValue(), "CmpValue2":bData.GetCmpValue2(), 
-                        "CmpValue3":bData.GetCmpValue3(), "UserData":bData.GetUserData()}
+                        "CmpValue3":bData.GetCmpValue3(), "Time":bData.GetTime(), "UserData":bData.GetUserData()}
             DataRecordPack.SendEventPack(eventTypeStr, dataDict)
             
         return

--
Gitblit v1.8.0