10408 【BT】【GM】【英语】【越南】【砍树】红装分解(支持根据品质额外再给奖励)
1个文件已修改
15 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEquipDecompose.py 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerEquipDecompose.py
@@ -22,6 +22,7 @@
import NetPackCommon
import PlayerControl
import ChConfig
import FormulaControl
import DataRecordPack
import PlayerSuccess
import GameFuncComm
@@ -152,6 +153,7 @@
    totalAddExp = 0
    allitemCnt = 0
    awardItemDict = {}
    eatEquipAwardExDict = IpyGameDataPY.GetFuncEvalCfg("EquipDecomposeAward2", 1, {})
    eatEquipAwardItemID = IpyGameDataPY.GetFuncCfg("EquipDecomposeAward", 4)
    petEatItemAddExpPer = PlayerVip.GetPrivilegeValue(curPlayer, ChConfig.VIPPrivilege_EatItem)
    itemPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
@@ -183,6 +185,19 @@
                awardItemDict[eatEquipAwardItemID] = awardItemDict.get(eatEquipAwardItemID, 0) + awardCount
                GameWorld.DebugLog("分解橙装以上额外奖励: eatEquip=%s,itemClass=%s,itemColor=%s,isSuite=%s,awardCount=%s total:%s" 
                                   % (eatItem.GetItemTypeID(), itemClass, itemColor, isSuite, awardCount, awardItemDict))
            # 高品质额外奖励
            for exAwardColor, exAwardInfo in eatEquipAwardExDict.items():
                if itemColor < int(exAwardColor):
                    continue
                exItemID, exItemCountFormat = exAwardInfo
                exAwardCount = eval(FormulaControl.GetCompileFormula("EquipDecomposeAwardEx%s" % exAwardColor, exItemCountFormat))
                if not exItemID or exAwardCount <= 0:
                    continue
                awardItemDict[exItemID] = awardItemDict.get(exItemID, 0) + exAwardCount
                GameWorld.DebugLog("分解高级品质额外奖励: eatEquip=%s,itemClass=%s,itemColor=%s,isSuite=%s,exAwardColor=%s,exItemID=%s,exAwardCount=%s total:%s"
                                   % (eatItem.GetItemTypeID(), itemClass, itemColor, isSuite, exAwardColor, exItemID, exAwardCount, awardItemDict))
        else:
            GameWorld.ErrLog('    不可分解的道具index=%s eatItemID=%s'%(index, eatItemID))
            continue