ActivityGoddessItem.lua 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. local ActivityGoddessItem = class("ActivityGoddessItem",require("Activities/ActivityTypeItem"))
  2. function ActivityGoddessItem:ctor()
  3. self.redPointType = Enum.RPNotifyType.ActivityGoddess
  4. self.lv = 0
  5. self.val = 0
  6. end
  7. function ActivityGoddessItem:SyncSrvData(serverData)
  8. if not serverData then return end
  9. local data = serverData.likability_data
  10. if not data then return end
  11. self.lv = data.level
  12. self.val = data.param
  13. end
  14. function ActivityGoddessItem:GetCurLoveLv()
  15. return self.lv
  16. end
  17. function ActivityGoddessItem:GetCurLoveVal()
  18. return self.val
  19. end
  20. function ActivityGoddessItem:HasRedPoint()
  21. if self:IsOutofDate() then
  22. return false
  23. end
  24. local cfgDatas = ManagerContainer.CfgMgr:GetActivityGoddessGiftCfgByActId(self.actId)
  25. if cfgDatas then
  26. for _, cfgData in pairs(cfgDatas) do
  27. local classcostaddlikes = cfgData.Classcostaddlike
  28. if classcostaddlikes then
  29. local ownerNum = CommonUtil.GetOwnResCountByItemId(cfgData.Classitemid)
  30. if ownerNum > 0 then
  31. for i = 1, #classcostaddlikes do
  32. local classcostaddlike = classcostaddlikes[i]
  33. if classcostaddlike and classcostaddlike[1] then
  34. if ownerNum >= classcostaddlike[1] then
  35. return true
  36. end
  37. end
  38. end
  39. end
  40. end
  41. end
  42. end
  43. return false
  44. end
  45. return ActivityGoddessItem