9823 9265【主干】【小7】【骨折】跨服云购修改(增加使用的模板ID存储)
1个文件已修改
29 ■■■■ 已修改文件
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossLuckyCloudBuy.py 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossLuckyCloudBuy.py
@@ -60,6 +60,7 @@
value5:lotteryTime       开奖时间
StrValue1:luckyPlayerName    中奖玩家名
StrValue2:templateID    使用模板ID
StrValue3:lotteryInfo        分区信息|大奖信息|中奖玩家账号
'''
@@ -103,11 +104,12 @@
        self.serverIDRangeList = [] # 分区信息
        self.superItemInfo = [] # 大奖信息
        self.luckyPlayerAccID = "" # 中奖玩家账号
        self.templateID = 0 # 使用模板ID
        return
    
    def GetString(self):
        return {"idTime":self.idTime, "cfgID":self.cfgID, "zoneID":self.zoneID, "roundNum":self.roundNum, "luckyPlayerID":self.luckyPlayerID, 
                "lotteryNum":self.lotteryNum, "lotteryTime":self.lotteryTime, "luckyPlayerName":self.luckyPlayerName,
                "lotteryNum":self.lotteryNum, "lotteryTime":self.lotteryTime, "luckyPlayerName":self.luckyPlayerName, "templateID":self.templateID,
                "serverIDRangeList":self.serverIDRangeList, "superItemInfo":self.superItemInfo, "luckyPlayerAccID":self.luckyPlayerAccID}
        
    def SetAttrByDict(self, attrDict):
@@ -168,6 +170,7 @@
        lotteryRec.lotteryTime = recData.GetValue5()
        
        lotteryRec.luckyPlayerName = recData.GetStrValue1()
        lotteryRec.templateID = GameWorld.ToIntDef(recData.GetStrValue2())
        strValue3 = recData.GetStrValue3()
        lotteryRec.serverIDRangeList, lotteryRec.superItemInfo, lotteryRec.luckyPlayerAccID = [], [], ""
        if strValue3:
@@ -227,6 +230,7 @@
            recData.SetValue5(lotteryRec.lotteryTime)
            
            recData.SetStrValue1(lotteryRec.luckyPlayerName)
            recData.SetStrValue2("%s" % lotteryRec.templateID)
            recData.SetStrValue3("%s|%s|%s" % (str(lotteryRec.serverIDRangeList).replace(" ", ""), 
                                               str(lotteryRec.superItemInfo).replace(" ", ""), 
                                               lotteryRec.luckyPlayerAccID))
@@ -453,6 +457,7 @@
    lotteryRec.cfgID = cfgID
    lotteryRec.zoneID = zoneID
    lotteryRec.roundNum = nextRoundNum
    lotteryRec.templateID = templateID
    
    lotteryRec.serverIDRangeList = serverIDRangeList
    lotteryRec.superItemInfo = superItemInfo
@@ -758,12 +763,11 @@
    if serverGroupID != curServerGroupID:
        return
    
    templateIDList = ipyDataInfo.get("TemplateIDList")
    if not templateIDList:
    lotteryRecList = PyGameData.g_luckyCloudBuyLotteryDict.get(zoneID, [])
    lotteryRec = None if not lotteryRecList else lotteryRecList[-1] # 取最新一期的
    if not lotteryRec:
        return
    dayIndex = actInfo.get(ShareDefine.ActKey_DayIndex, 0)
    templateID = templateIDList[dayIndex] if len(templateIDList) > dayIndex else templateIDList[-1]
    templateID = lotteryRec.templateID
    templateIpyData = IpyGameDataPY.GetIpyGameData("CrossActLuckyCloudBuyTemplate", templateID)
    if not templateIpyData:
        return
@@ -856,22 +860,17 @@
    if not zoneID:
        return
    
    templateIDList = ipyDataInfo.get("TemplateIDList")
    if not templateIDList:
    lotteryRecList = PyGameData.g_luckyCloudBuyLotteryDict.get(zoneID, [])
    lotteryRec = None if not lotteryRecList else lotteryRecList[-1] # 取最新一期的
    if not lotteryRec:
        return
    templateID = lotteryRec.templateID
    
    dayIndex = actInfo.get(ShareDefine.ActKey_DayIndex, 0)
    templateID = templateIDList[dayIndex] if len(templateIDList) > dayIndex else templateIDList[-1]
    templateIpyData = IpyGameDataPY.GetIpyGameData("CrossActLuckyCloudBuyTemplate", templateID)
    if not templateIpyData:
        return
    baseAwardInfo = templateIpyData.GetBaseAwardInfo()
    randAwardWeightInfo = templateIpyData.GetRandAwardWeightInfo()
    lotteryRecList = PyGameData.g_luckyCloudBuyLotteryDict.get(zoneID, [])
    lotteryRec = None if not lotteryRecList else lotteryRecList[-1] # 取最新一期的
    if not lotteryRec:
        return
    
    roundTimeList = []
    StartTimeList = ipyDataInfo.get("StartTimeList")