10385 【越南】【英语】【BT】【GM】【砍树】福地新增鼠管及优化-服务端(优化结算奖励逻辑;)
2个文件已修改
20 ■■■■■ 已修改文件
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py
@@ -1495,7 +1495,7 @@
        itemCount = ipyData.GetItemCount()
        itemLV = ipyData.GetItemLV()
        awardItemDict[itemID] = awardItemDict.get(itemID, 0) + itemCount
        awardInfoList.append([GUID, awardTime, workerCount, areaPlayerID, mineID, itemLV, itemID, itemCount])
        awardInfoList.append([awardTime, workerCount, areaPlayerID, mineID, itemLV, itemID, itemCount])
        
    # 通知地图玩家给物品
    curPlayer.SetDict(MineAreaAwardGetTick, tick)
@@ -1505,17 +1505,17 @@
def __DoMineAreaAwardGetOK(curPlayer, dataMsg):
    
    playerID = curPlayer.GetPlayerID()
    GUIDList, awardItemList = dataMsg
    _, awardItemList = dataMsg
    curPlayer.SetDict(MineAreaAwardGetTick, 0)
    
    awardMgr = PyDataManager.GetDBPyMineAreaAwardManager()
    awardDict = awardMgr.playerAreaAwardDict.get(playerID, {})
    if not awardDict:
        return
    GameWorld.DebugLog("福地结算奖励OK: %s" % len(awardDict), playerID)
    
    for GUID in GUIDList:
        awardDict.pop(GUID, None)
    awardMgr.playerAreaAwardDict[playerID] = {}
    SyncMineAwardAward(curPlayer, 1, awardItemList)
    return
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerMineArea.py
@@ -247,9 +247,8 @@
    awardItemDict = {}
    robCount = 0 # 抢劫数
    selfCount = 0 # 自己数量
    GUIDList = []
    for awardInfo in awardInfoList:
        GUID, awardTime, workerCount, areaPlayerID, mineID, itemLV, itemID, itemCount = awardInfo
        awardTime, workerCount, areaPlayerID, mineID, itemLV, itemID, itemCount = awardInfo
        isToday = GameWorld.CheckTimeIsSameServerDayEx(awardTime)
        if isToday:
            addEnergyUsed += workerCount
@@ -258,9 +257,8 @@
        else:
            selfCount += 1
        awardItemDict[itemID] = awardItemDict.get(itemID, 0) + itemCount
        GUIDList.append(GUID)
        GameWorld.DebugLog("结算福地奖励! areaPlayerID=%s,mineID=%s,itemLV=%s,itemID=%s,itemCount=%s,awardTime=%s,isToday=%s,workerCount=%s %s"
                           % (areaPlayerID, mineID, itemLV, itemID, itemCount, GameWorld.ChangeTimeNumToStr(awardTime), isToday, workerCount, GUID), playerID)
        GameWorld.DebugLog("结算福地奖励! areaPlayerID=%s,mineID=%s,itemLV=%s,itemID=%s,itemCount=%s,awardTime=%s,isToday=%s,workerCount=%s"
                           % (areaPlayerID, mineID, itemLV, itemID, itemCount, GameWorld.ChangeTimeNumToStr(awardTime), isToday, workerCount), playerID)
        __OnMineAreaPullEnd(curPlayer, areaPlayerID, "OK")
        
    if addEnergyUsed:
@@ -280,7 +278,7 @@
    awardItemList = [[itemID, itemCount, 0] for itemID, itemCount in awardItemDict.items()]
    ItemControler.GivePlayerItemOrMail(curPlayer, awardItemList, None, ["MineAreaAward", False, {}])
    
    SendToGameServer_MineArea(curPlayer, "MineAreaAwardGetOK", [GUIDList, awardItemList])
    SendToGameServer_MineArea(curPlayer, "MineAreaAwardGetOK", [None, awardItemList])
    return
def __OnMineAreaPullEnd(curPlayer, areaPlayerID, reason):