| | |
| | | needCntList = ipyData.GetCostItemCnt()
|
| | | if curSkinLV >= len(needCntList):
|
| | | return
|
| | | plusCost = needCntList[curSkinLV + 1]
|
| | | plusCost = needCntList[curSkinLV]
|
| | | costItemID = ipyData.GetUnlockItemID()
|
| | | curPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
|
| | | hasEnough, itemIndexList = ItemCommon.GetItem_FromPack_ByID(costItemID, curPack, plusCost)
|
| | | if not hasEnough:
|
| | | GameWorld.DebugLog("OnPlayerCoatUp() 时装升级材料不足, needCnt=%s" % (plusCost))
|
| | | GameWorld.DebugLog("OnPlayerCoatUp() 时装升级材料不足, coatIndex=%s, costItemID=%s, needCnt=%s" % (coatIndex, costItemID, plusCost))
|
| | | return
|
| | |
|
| | | reduceCnt = plusCost
|
| | |
| | | playerID = curPlayer.GetPlayerID()
|
| | | indexList = clientData.IndexList
|
| | | ItemIDList = clientData.ItemIDList
|
| | |
|
| | | itemPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
|
| | | addExp = 0
|
| | | for i, index in enumerate(indexList):
|
| | |
| | | continue
|
| | | eatItemID = eatItem.GetItemTypeID()
|
| | | if eatItemID != ItemIDList[i]:
|
| | | GameWorld.Log('时装分解 发的物品ID不对应index=%s eatItemID=%s,ItemIDList[i]=%s'%(index, eatItemID, ItemIDList[i]))
|
| | | continue
|
| | | itemData = GameWorld.GetGameData().GetItemByTypeID(eatItemID)
|
| | | if not itemData:
|
| | |
| | | if not ipyData:
|
| | | continue
|
| | | curSkinLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ClothesSkinLV % coatID)
|
| | | if curSkinLV >= ipyData.GetMaxLV():
|
| | | if curSkinLV < ipyData.GetMaxLV():
|
| | | continue
|
| | | itemCnt = eatItem.GetCount()
|
| | | addExp += itemCnt * curEff.GetEffectValue(1)
|
| | | ItemCommon.DelItem(curPlayer, eatItem, itemCnt, True, ChConfig.ItemDel_CoatDecompose)
|
| | | if not addExp:
|
| | | GameWorld.Log(' 时装分解, 没有可分解的ItemIDList=%s'%ItemIDList)
|
| | | return
|
| | | totalExp = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ClothesChestEXP) + addExp
|
| | | curChestLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_ClothesChestLV)
|
| | |
| | | ipyData = IpyGameDataPY.GetIpyGameData('Coat', srcIndex)
|
| | | if not ipyData:
|
| | | return True
|
| | | EquipItemIDList = ipyData.GetEquipItemID
|
| | | EquipItemIDList = ipyData.GetEquipItemID()
|
| | | job = curPlayer.GetJob()
|
| | | if job > len(EquipItemIDList):
|
| | | GameWorld.Log("找不到该职业时装配置,不能穿!srcIndex=%s,job=%s" % (srcIndex, job), playerID)
|
| | |
| | | destIndex = 0
|
| | |
|
| | | isOK = ItemCommon.DoLogicSwitchItemEx(curPlayer, srcBackpack, desBackPack, srcIndex, destIndex)
|
| | | ItemControler.ClearPack(curPlayer, ShareDefine.rptTempSwap)
|
| | | # 下发周围玩家时装穿戴状态
|
| | | if isOK:
|
| | | if desBackPack == IPY_GameWorld.rptEquip:
|