RechargeSevenDayGiftInfo.lua 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. ---@class RechargeSevenDayGiftInfo 开服充值七日累积登录
  2. RechargeSevenDayGiftInfo = class()
  3. local this = RechargeSevenDayGiftInfo
  4. this.countDay = 0
  5. this.hadReceiveReward = {}
  6. function this:Init()
  7. self:RegistMessages()
  8. self:Reset()
  9. end
  10. function this:Reset()
  11. self.countDay = 0
  12. self.hadReceiveReward = {}
  13. end
  14. function this:RegistMessages()
  15. -- SL:RegisterLUAEvent(LUA_EVENT_ROLE_LOGIN, self.EnterGame, self)
  16. SL:RegisterLuaNetMsg(LuaMessageIdToClient.RES_RECEIVE_RECHARGE_LOGIN_REWARD, self.InfoChangeCallBack, self)
  17. SL:RegisterLuaNetMsg(LuaMessageIdToClient.RES_RECHARGE_LOGIN_INFO_CHANGE, self.InfoChangeCallBack, self)
  18. end
  19. function this:InfoChangeCallBack(_, message)
  20. self.countDay = message.countDay
  21. self.hadReceiveReward = message.hadReceiveReward
  22. self:RefreshRedPoint()
  23. SL:onLUAEvent(LUA_EVENT_RECHAGE_SEVEN_DAY_GIFT)
  24. end
  25. function this:EnterGame()
  26. end
  27. function this:RefreshRedPoint()
  28. local allReward = SL:GetConfigTable("cfg_rechargeSevenDayGift")
  29. local isShow = false
  30. for index, value in ipairs(allReward) do
  31. if value.accumulateDay<= self.countDay and not table.contains(self.hadReceiveReward,value.id) then
  32. isShow = true
  33. break
  34. end
  35. end
  36. InfoManager.mainRechargeInfo:RefreshMainRechargeRedPoint("tog_rechargeSevenDayGift",isShow)
  37. end