源战役客户端
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

132 行
5.4 KiB

  1. require("game.KfBossTreasure.KfBossTreasureConst")
  2. require("game.KfBossTreasure.KfBossTreasureModel")
  3. require("game.KfBossTreasure.view.KfBossTreasureView")
  4. require("game.KfBossTreasure.view.KfBossTreasureLvItem")
  5. require("game.KfBossTreasure.view.KfBossTreasureTaskView")
  6. require("game.KfBossTreasure.view.KfBossTreasureTaskItem")
  7. require("game.KfBossTreasure.view.KfBossTreasureBuyUnlockView")
  8. require("game.KfBossTreasure.view.KfBossTreasurePreLookView")
  9. require("game.KfBossTreasure.view.KFBossTreasureRewardView")
  10. KfBossTreasureController = KfBossTreasureController or BaseClass(BaseController, true)
  11. local KfBossTreasureController = KfBossTreasureController
  12. function KfBossTreasureController:__init()
  13. KfBossTreasureController.Instance = self
  14. self.model = KfBossTreasureModel:getInstance()
  15. self:AddEvents()
  16. self:RegisterAllProtocal()
  17. end
  18. function KfBossTreasureController:__delete()
  19. end
  20. function KfBossTreasureController:RegisterAllProtocal( )
  21. local register_cfg = {
  22. [33238] = {--基础信息
  23. req_event_data = {KfBossTreasureConst.REQ_BASIC_DATA,"h"},req_func = false,
  24. handler = function(self,scmd)-- handler_manual
  25. if scmd.errcode == 1 then
  26. self.model:SetBasicData(scmd)
  27. self:CheckRedDot()
  28. self.model:Fire(KfBossTreasureConst.ANS_BASIC_DATA)
  29. else
  30. ErrorCodeShow(scmd.errcode)
  31. end
  32. end,
  33. },
  34. [33239] = {--领取等级奖励
  35. -- // 1等级奖励领取|2等级奖励一键领取
  36. -- // 等级|一键时为0
  37. req_event_data = {KfBossTreasureConst.REQ_GET_REWARD,"hcc"},req_func = false,
  38. handler = function(self,scmd)-- handler_manual
  39. if scmd.result == 1 then
  40. GlobalEventSystem:Fire(EventName.PLAY_UI_EFFECT_SOUND,LuaSoundManager.SOUND_UI.SUCCESS)
  41. self.model:Fire(KfBossTreasureConst.SHOW_REWARD_RESULT,scmd)
  42. self.model:Fire(KfBossTreasureConst.REQ_BASIC_DATA,scmd.sub_type)
  43. else
  44. ErrorCodeShow(scmd.result)
  45. end
  46. end,
  47. },
  48. [33240] = {--购买王牌宝典
  49. req_event_data = {KfBossTreasureConst.REQ_PAY_FOR_UNLOCK, "h"},req_func = false,
  50. handler = function(self,scmd)-- handler_manual
  51. if scmd.result == 1 then
  52. Message.show("购买成功!")
  53. GlobalEventSystem:Fire(EventName.PLAY_UI_EFFECT_SOUND,LuaSoundManager.SOUND_UI.SUCCESS)
  54. self.model:RefreshBasicPayStatus(scmd.sub_type,scmd.pay_state)
  55. self:CheckRedDot()
  56. self.model:Fire(KfBossTreasureConst.ANS_PAY_FOR_UNLOCK)
  57. self.model:Fire(KfBossTreasureConst.ANS_BASIC_DATA)
  58. self.model:Fire(KfBossTreasureConst.SHOW_REWARD_LIST,scmd.sub_type,"after_buy")
  59. else
  60. ErrorCodeShow(scmd.result)
  61. end
  62. end,
  63. },
  64. [33241] = {--奖励信息
  65. req_event_data = {KfBossTreasureConst.REQ_REWARD_INFO,"h"},req_func = false,
  66. handler = function(self,scmd)-- handler_manual
  67. if scmd.result == 1 then
  68. self.model:SetRewardInfo(scmd.sub_type, scmd.reward_list)
  69. self.model:Fire(KfBossTreasureConst.ANS_REWARD_INFO)
  70. else
  71. ErrorCodeShow(scmd.result)
  72. end
  73. end,
  74. },
  75. [33242] = {--任务完成进度
  76. req_event_data = {KfBossTreasureConst.REQ_TASK_PROCESS,"h"},req_func = false,
  77. handler = function(self,scmd)-- handler_manual
  78. if scmd.result == 1 then
  79. self.model:SetTaskProcessInfo(scmd)
  80. self.model:Fire(KfBossTreasureConst.ANS_TASK_PROCESS)
  81. else
  82. ErrorCodeShow(scmd.result)
  83. end
  84. end,
  85. },
  86. }
  87. self:RegisterProtocalByCFG(register_cfg)
  88. end
  89. function KfBossTreasureController:AddEvents()
  90. local function on_game_start()
  91. self.model:Reset()
  92. end
  93. GlobalEventSystem:Bind(EventName.GAME_START, on_game_start)
  94. local function OPEN_TASK_VIEW( sub_type )
  95. self.kfbosstreasuretaskview = self.kfbosstreasuretaskview or KfBossTreasureTaskView.New()
  96. self.kfbosstreasuretaskview:Open(sub_type)
  97. end
  98. self.model:Bind(KfBossTreasureConst.OPEN_TASK_VIEW,OPEN_TASK_VIEW)
  99. local function SHOW_REWARD_LIST( sub_type,tag )
  100. self.kfbosstreasureprelookview = self.kfbosstreasureprelookview or KfBossTreasurePreLookView.New()
  101. self.kfbosstreasureprelookview:Open(sub_type,tag)
  102. end
  103. self.model:Bind(KfBossTreasureConst.SHOW_REWARD_LIST,SHOW_REWARD_LIST)
  104. local function OPEN_UNLOCK_VIEW( sub_type )
  105. self.kfbosstreasurebuyunlockview = self.kfbosstreasurebuyunlockview or KfBossTreasureBuyUnlockView.New()
  106. self.kfbosstreasurebuyunlockview:Open(sub_type)
  107. end
  108. self.model:Bind(KfBossTreasureConst.OPEN_UNLOCK_VIEW,OPEN_UNLOCK_VIEW)
  109. local function SHOW_REWARD_RESULT( data )
  110. self.kfbosstreasurerewardview = self.kfbosstreasurerewardview or KFBossTreasureRewardView.New()
  111. self.kfbosstreasurerewardview:Open(data)
  112. end
  113. self.model:Bind(KfBossTreasureConst.SHOW_REWARD_RESULT,SHOW_REWARD_RESULT)
  114. end
  115. function KfBossTreasureController:CheckRedDot( )
  116. local function call_backack( )
  117. self.model:GetAllRed(true)
  118. self.model:Fire(KfBossTreasureConst.REFRESH_RED_DOT)
  119. end
  120. TimeManager.GetInstance():StartTime("ContractController_CheckRedDot", 0.5, call_backack)
  121. end