UIVoyageRobberyCtr.lua 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. local UIVoyageRobberyCtr = class("UIVoyageRobberyCtr", require("UICtrBase"))
  2. function UIVoyageRobberyCtr:Init(view)
  3. self.view = view
  4. end
  5. function UIVoyageRobberyCtr:SetData(data)
  6. self.asyncIdx = 0
  7. if data == nil then return end
  8. self.data = data
  9. end
  10. function UIVoyageRobberyCtr:GetAsyncIdx()
  11. self.asyncIdx = self.asyncIdx + 1
  12. return self.asyncIdx
  13. end
  14. function UIVoyageRobberyCtr:GetData()
  15. return self.data
  16. end
  17. function UIVoyageRobberyCtr:OnDispose()
  18. self.numLimit = nil
  19. self.airShipData = nil
  20. self.quality = nil
  21. self.beChallengeNum = nil
  22. self.data = nil
  23. self.view = nil
  24. end
  25. function UIVoyageRobberyCtr:InitData()
  26. self.numLimit = GlobalConfig.Instance:GetConfigIntValue(325)
  27. if self.data then
  28. self.airShipData = ManagerContainer.DataMgr.VoyageDataMgr:GetAirShipDataByUid(self.data)
  29. else
  30. self.airShipData = nil
  31. end
  32. end
  33. function UIVoyageRobberyCtr:GetAirShipData()
  34. return self.airShipData
  35. end
  36. function UIVoyageRobberyCtr:RefreshAndGetAirShipData()
  37. if not self.data then
  38. return nil
  39. end
  40. local airShipData = ManagerContainer.DataMgr.VoyageDataMgr:GetAirShipDataByUid(self.data)
  41. if not airShipData then
  42. return nil
  43. end
  44. return airShipData
  45. end
  46. function UIVoyageRobberyCtr:GetRemindRobNum()
  47. local num = ManagerContainer.DataMgr.VoyageDataMgr:GetChallengeNum()
  48. return Mathf.Max(0, (self.numLimit - num))
  49. end
  50. function UIVoyageRobberyCtr:RefreshQuality()
  51. if not self.airShipData then
  52. return nil
  53. end
  54. if self.airShipData.quality == self.quality then
  55. return nil
  56. end
  57. self.quality = self.airShipData.quality
  58. return self.quality
  59. end
  60. function UIVoyageRobberyCtr:RefreshBeChallengeNum()
  61. if not self.airShipData then
  62. return nil
  63. end
  64. if self.airShipData.beChallengeNum == self.beChallengeNum then
  65. return nil
  66. end
  67. self.beChallengeNum = self.airShipData.beChallengeNum
  68. return self.beChallengeNum
  69. end
  70. function UIVoyageRobberyCtr:SendChallengeReq(uid, endTime)
  71. if not ManagerContainer.DataMgr.VoyageDataMgr:SendChallengeReq(uid, endTime) then
  72. return 100007
  73. end
  74. return 0
  75. end
  76. function UIVoyageRobberyCtr:SendCheckInfoReq(uid, endTime)
  77. if not ManagerContainer.DataMgr.VoyageDataMgr:SendCheckInfoReq(uid, endTime) then
  78. return 100007
  79. end
  80. return 0
  81. end
  82. return UIVoyageRobberyCtr