16 卡牌服务端(修复排行榜数据重复bug;暂去除排行榜功能开启上榜限制;)
| | |
| | | self.SortData()
|
| | | return
|
| | |
|
| | | def AddNewBillboardData(self):
|
| | | def AddNewBillboardData(self, dataID):
|
| | | newData = None
|
| | | if self.IsFull():
|
| | | return newData
|
| | |
| | | newData.SetType(self.__billboardType)
|
| | | newData.SetGroupValue1(self.__groupValue1)
|
| | | newData.SetGroupValue2(self.__groupValue2)
|
| | | newData.SetID(dataID)
|
| | | self.AddBillboardData(newData)
|
| | | return newData
|
| | |
|
| | |
| | |
|
| | | def DoBillboardOpen(curPlayer):
|
| | | ## 排行榜开启时需要处理的
|
| | | UpdatePlayerBillboardOnLeaveServer(curPlayer, True) # 主动同步一次榜单
|
| | | OpenServerCampaign.DoBillboardOpen(curPlayer) # 同步开服活动榜单
|
| | | #UpdatePlayerBillboardOnLeaveServer(curPlayer, True) # 主动同步一次榜单
|
| | | #OpenServerCampaign.DoBillboardOpen(curPlayer) # 同步开服活动榜单
|
| | | return
|
| | |
|
| | | def BillboardOnLogin(curPlayer):
|
| | |
| | | ## 玩家可否上榜通用检查
|
| | | if not GameWorld.IsNormalPlayer(curPlayer):
|
| | | return False
|
| | | if not GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Billboard):
|
| | | GameWorld.DebugLog("排行榜未开启,无法上榜!curLV=%s" % (curPlayer.GetLV()), curPlayer.GetPlayerID())
|
| | | return False
|
| | | #if not GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Billboard):
|
| | | # GameWorld.DebugLog("排行榜未开启,无法上榜!curLV=%s" % (curPlayer.GetLV()), curPlayer.GetPlayerID())
|
| | | # return False
|
| | |
|
| | | return True
|
| | |
|
| | |
| | |
|
| | | def UpdateBillboard(billboardType, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue,
|
| | | cmpValue2=0, cmpValue3=0, groupValue2=0, id2=0, autoSort=True, **kwargs):
|
| | | ''' 更新跨服排行榜
|
| | | ''' 更新排行榜
|
| | | @param billboardType: 排行榜索引类型,同个榜单类型可以有多个分组榜单数据,独立排序
|
| | | @param groupValue1: 榜单分组1
|
| | | @param dataID: 榜单唯一数据ID,如玩家ID等
|
| | |
| | | billboardData = lastBillBoardData
|
| | | billboardData.Clear()
|
| | | else:
|
| | | billboardData = billboardObj.AddNewBillboardData()
|
| | | billboardData = billboardObj.AddNewBillboardData(dataID)
|
| | | if not billboardData:
|
| | | return
|
| | |
|
| | |
| | | billboardData.SetCmpValue2(cmpValue2)
|
| | | billboardData.SetCmpValue3(cmpValue3)
|
| | |
|
| | | GameWorld.DebugLog("更新跨服排行榜值: billboardType=%s,groupValue1=%s,groupValue2=%s,dataID=%s,isNewData=%s,cmpValueChange=%s,type2=%s,value1=%s,value2=%s,cmpValue=%s,cmpValue2=%s,cmpValue3=%s,%s" |
| | | GameWorld.DebugLog("更新排行榜值: billboardType=%s,groupValue1=%s,groupValue2=%s,dataID=%s,isNewData=%s,cmpValueChange=%s,type2=%s,value1=%s,value2=%s,cmpValue=%s,cmpValue2=%s,cmpValue3=%s,%s" |
| | | % (billboardType, groupValue1, groupValue2, dataID, isNewData, cmpValueChange,
|
| | | type2, value1, value2, cmpValue, cmpValue2, cmpValue3, kwargs), dataID)
|
| | | if not autoSort:
|