ChangeHeadItemCtr.lua 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. local ChangeHeadItemCtr = {}
  2. function ChangeHeadItemCtr:SetData(wnd, itemlua, logicData, enterType, onClickOwner, onClickCB)
  3. local cfgId = logicData.cfgId
  4. local selected = logicData.selected or false
  5. local cfgData = ManagerContainer.CfgMgr:GetHeadPortraitDataById(cfgId)
  6. local HeadProtraitData = ManagerContainer.DataMgr.HeadProtraitData
  7. local state = HeadProtraitData:GetState(cfgId)
  8. local used = (ManagerContainer.DataMgr.UserData:GetUserHeadPortraitId() == cfgId)
  9. local noComplete = (state == Enum.TaskStateType.NoCompeleted)
  10. local locked = (state ~= Enum.TaskStateType.Received)
  11. itemlua.used:SetActive(used)
  12. itemlua.locked:SetActive(locked)
  13. itemlua.icon:SetActive(noComplete)
  14. itemlua.selected:SetActive(selected)
  15. if cfgData.HeadPortraitPic and cfgData.HeadPortraitPic ~= '' then
  16. CommonUtil.LoadIcon(wnd, cfgData.HeadPortraitPic, function (sprite)
  17. itemlua.head.image.sprite = sprite
  18. end)
  19. end
  20. if onClickOwner and onClickCB then
  21. itemlua.button.interactable = true
  22. onClickOwner.uiBase:AddButtonUniqueEventListener(itemlua.button, onClickOwner, onClickCB, logicData)
  23. else
  24. itemlua.button.interactable = false
  25. end
  26. end
  27. return ChangeHeadItemCtr