hch
2019-04-16 fab0b1bd0579614f960c243fa1de53fdbbf827c8
Merge branch 'master' of http://192.168.0.87:10010/r/SnxxServerCode
1个文件已修改
24 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_QueenRelics.py 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_QueenRelics.py
@@ -503,11 +503,19 @@
    needSyncFBData = False
    overDict = {}
    if isPass:
        curGrade = GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, lineID, False, [dataMapID])
        if curGrade < grade:
            GameWorld.DebugLog("    更新过关评级: dataMapID=%s,lineID=%s,curGrade=%s,rewardGrade=%s"
                               % (dataMapID, lineID, curGrade, grade), curPlayer.GetPlayerID())
            GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, lineID, grade, False, [dataMapID])
            needSyncFBData = True
        overDict = {FBCommon.Over_costTime:costTime, FBCommon.Over_grade:grade}
        if not nextLineID:#没有下一层则给奖励!!
            rewardRet = __GivePlayerQueenRelicsReward(curPlayer, dataMapID, rewardLine - 1, lineID, grade, maxGrade, rewardRateList)
            if rewardRet:
                needSyncFBData, startRewardLineID, totalSP, rewardItemList = rewardRet
                startRewardLineID, totalSP, rewardItemList = rewardRet
                overDict.update({FBCommon.Over_sp:totalSP, FBCommon.Over_itemInfo:FBCommon.GetJsonItemList(rewardItemList), 
                                 "startRewardLineID":startRewardLineID})
        if lineID+1 > curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FBHistoryMaxLine % dataMapID):
@@ -528,7 +536,7 @@
        isInFBOnDay = gameFB.GetPlayerGameFBDictByKey(playerID, FBPKey_IsInFBOnDay)
        if not isInFBOnDay:
            GameWorld.DebugLog("首次结算奖励,增加挑战次数!", playerID)
            needSyncFBData = True
            needSyncFBData = False
            FBCommon.AddEnterFBCount(curPlayer, dataMapID)
            addXianyuanCoin, reason = FBHelpBattle.DoFBAddXianyuanCoin(curPlayer, mapID, lineID)
            overDict[FBCommon.Over_xianyuanCoin] = [addXianyuanCoin, reason]
@@ -562,18 +570,12 @@
        return
    
    startRewardLineID = rewardLineID + 1
    needSyncFBData = False
    # 统计奖励,本关卡之前的都给最高级奖励, 当前层以本次评级为准
    for giveLineID in xrange(startRewardLineID, curLineID + 1):
        
        rewardGrade = maxGrade if giveLineID < curLineID else passGrade
        curGrade = GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, giveLineID, False, [dataMapID])
        if curGrade < rewardGrade:
            GameWorld.DebugLog("    更新过关评级: dataMapID=%s,giveLineID=%s,curGrade=%s,rewardGrade=%s"
                               % (dataMapID, giveLineID, curGrade, rewardGrade), curPlayer.GetPlayerID())
            GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, giveLineID, rewardGrade, False, [dataMapID])
            needSyncFBData = True
        lineReward = FBCommon.GetFBLineReward(dataMapID, giveLineID)
        rewardSP = lineReward[0]
        rewardItemList = lineReward[1:]
@@ -617,7 +619,7 @@
            ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, 0, [IPY_GameWorld.rptItem], event=["QueenRelics", False, {}])
            
    GameWorld.DebugLog("    总奖励:totalSP=%s,rewardItemList=%s" % (totalSP, rewardItemList), curPlayer.GetPlayerID())
    return needSyncFBData, startRewardLineID, totalSP, rewardItemList
    return startRewardLineID, totalSP, rewardItemList
## 副本行为