| | |
| | |
|
| | |
|
| | | #导入
|
| | | import PlayerBillboard
|
| | | import ShareDefine
|
| | | import GMCommon
|
| | | import GameWorld
|
| | |
| | | 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)
|
| | |
| | | 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(),
|
| | |
| | | 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
|