From bb6cd0bde854e5998022a0bce4fdc8bf554be3a6 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 19 七月 2024 14:03:00 +0800
Subject: [PATCH] 5541 【越南】批量使用宝箱获得道具超过65535

---
 ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py |   29 +++++++++++++++++++++--------
 1 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py b/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py
index a7a5818..8c6485e 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py
@@ -38,7 +38,9 @@
     if billType != None:
         billBoardType = billType
     
-    topNum = GameWorld.ToIntDef(gmCmdDict.get('topNum', ''), 10)
+    queryCount = GameWorld.ToIntDef(gmCmdDict.get('queryCount', ''), 10)
+    startRank = GameWorld.ToIntDef(gmCmdDict.get('startRank', ''), 1)
+    startRank = max(1, startRank)
     
     if billBoardType == None:
         GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_TypeNumErr)
@@ -52,19 +54,22 @@
     if not billBoard:
         GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_TypeNumErr)
         return False
-
-    billBoardInfo = []
     
-    for index in range(0, billBoard.GetCount()):
-        
-        if index >= topNum:
+    dataTotal = billBoard.GetCount()
+    fromIndex = startRank - 1
+    toIndex = fromIndex + queryCount
+    billBoardInfo = []
+    for index in xrange(fromIndex, toIndex):
+        if index >= dataTotal:
             break
         
         billBoardData = billBoard.At(index)
         if not billBoardData:
             continue
         
+        rank = index + 1
         billBoardDict = {
+                        "Rank":rank,
                         "ID":billBoardData.GetID(),
                         "ID2":billBoardData.GetID2(),
                         "Name1":billBoardData.GetName1(),
@@ -72,9 +77,16 @@
                         "Type2":billBoardData.GetType2(),
                         "Value1":billBoardData.GetValue1(),
                         "Value2":billBoardData.GetValue2(),
+                        "Value3":billBoardData.GetValue3(),
+                        "Value4":billBoardData.GetValue4(),
+                        "Value5":billBoardData.GetValue5(),
+                        "Value6":billBoardData.GetValue6(),
+                        "Value7":billBoardData.GetValue7(),
+                        "Value8":billBoardData.GetValue8(),
                         "CmpValue":billBoardData.GetCmpValue(),
                         "CmpValue2":billBoardData.GetCmpValue2(),
                         "CmpValue3":billBoardData.GetCmpValue3(),
+                        "UserData":billBoardData.GetUserData(),
                          }
         
         billBoardInfo.append(billBoardDict)
@@ -83,9 +95,10 @@
         #数据过大
         GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_MaxLimit)   
         return
-      
+    
+    backMsg = {"BillBoardType":billBoardType, "BillBoardInfo":billBoardInfo, "dataTotal":dataTotal}
     #执行成功
-    GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_Success, billBoardInfo)        
+    GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_Success, backMsg)        
     return
 
     

--
Gitblit v1.8.0