From 388823edfe6308cba6f76ca6dc4f20022c5cb2be Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 30 六月 2025 19:03:50 +0800 Subject: [PATCH] 10431 【英文】看广告获得限时代金券 --- ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py | 25 ++++++++++++++++++------- 1 files changed, 18 insertions(+), 7 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py b/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py index 6c24b99..00c1eb6 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GM/Commands/GMT_QueryBillboard.py @@ -21,6 +21,7 @@ #导入 +import PlayerBillboard import ShareDefine import GMCommon import GameWorld @@ -38,7 +39,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 +55,27 @@ if not billBoard: GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_TypeNumErr) return False - - billBoardInfo = [] - for index in range(0, billBoard.GetCount()): - - if index >= topNum: + billboardMgr = PlayerBillboard.GetBillboardMgr() + billboardObj = billboardMgr.GetBillboardObj(billBoardType) + idOrderDict = billboardObj.GetIDOrderDict() + + 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 = idOrderDict.get(billBoardData.GetID(), index + 1) billBoardDict = { + "Index":index, + "Rank":rank, "ID":billBoardData.GetID(), "ID2":billBoardData.GetID2(), "Name1":billBoardData.GetName1(), @@ -91,7 +102,7 @@ GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_MaxLimit) return - backMsg = {"BillBoardType":billBoardType, "BillBoardInfo":billBoardInfo} + backMsg = {"BillBoardType":billBoardType, "BillBoardInfo":billBoardInfo, "dataTotal":dataTotal} #执行成功 GMCommon.GMCommandResult(orderId, gmCmdDict, GMCommon.Def_Success, backMsg) return -- Gitblit v1.8.0