| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- local CardEquipItemCtr = {}
- local IconItemCtr = require("Common/IconItemCtr")
- local ConditionJudge = require("Common/ConditionJudge")
- function CardEquipItemCtr:SetData(wnd, itemLua, logicData, onClickOwner, onClickCB)
- IconItemCtr:SetData(wnd, itemLua.iconItem, logicData, Enum.ItemIEnterType.HeroEquip, onClickOwner, onClickCB)
- local itemCfgData = ManagerContainer.CfgMgr:GetItemById(logicData.cfgId)
- itemLua.textName.text.text = I18N.T(itemCfgData.Name)
- -- 道具类型
- itemLua.belong.text.text = logicData.belongName
- for j = 1, Constant.CARD_SLOT_LIMIT do
- itemLua["slot"..j]:SetActive(false)
- itemLua["slot"..j]["check"]:SetActive(false)
- --itemLua["slot"..j]["shadow"]:SetActive(false)
- end
- local hasSlot = false
- local cardSlotIndex = 0
- for j = 1, Constant.CARD_SLOT_LIMIT do
- local id = logicData.card_list[j] or 0
- local condition = ManagerContainer.CfgMgr:GetCardUnlockConditionById(logicData.slotType * 100 + j)
- if condition ~= nil then
- local result = ConditionJudge:ConditionPassResult1(condition.UnlockingCondition[1])
- itemLua["slot"..j]:SetActive(result)
- itemLua["slot"..j]["check"]:SetActive(result and id > 0)
- --itemLua["slot"..j]["shadow"]:SetActive(result and id > 0)
- if result then
- if id > 0 then
- local cardData = ManagerContainer.CfgMgr:GetCardDataById(id)
- CommonUtil.LoadIcon(wnd, Constant.Card_Quality_L_Icons[cardData.CardType], function (sprite)
- itemLua["slot"..j]["check"].image.sprite = sprite
- end, itemLua, "cardType"..j)
- else
- hasSlot = true
- if cardSlotIndex == 0 then
- cardSlotIndex = j
- end
- end
- end
- end
- end
- itemLua.btnEquip:SetActive(hasSlot)
- itemLua.btnChange:SetActive(not hasSlot)
- return cardSlotIndex
- end
- return CardEquipItemCtr
|