require("game.proto.452.Require452") require("game.eliteAssess.EliteAssessConst")--精英考核常量 require("game.eliteAssess.EliteAssessModel") require("game.eliteAssess.view.EliteAssessView")--精英考核主界面 require("game.eliteAssess.view.EliteAssessTab")--精英考核主界面tab require("game.eliteAssess.view.EliteAssessItem")--精英考核任务item require("game.eliteAssess.view.EliteAssessShowAwardView")--精英考核奖励展示界面 require("game.eliteAssess.view.EliteAssessAttrItem")--精英考核属性item EliteAssessController = EliteAssessController or BaseClass(BaseController) EliteAssessController.Is_Debug = false function EliteAssessController:__init() EliteAssessController.Instance = self self.model = EliteAssessModel:getInstance() self.mainVo = RoleManager.Instance.mainRoleInfo self:RegisterAllProtocals() self:AddAllEvents() end function EliteAssessController:__delete() end function EliteAssessController:AddAllEvents() local function game_start_func() end GlobalEventSystem:Bind(EventName.GAME_START,game_start_func) -- local function CheckRedPoint( ... ) -- end -- GlobalEventSystem:Bind(GoodsModel.CHANGE_BAGLIST,game_start_func) local onOpenEliteAssessView = function ()--打开精英考核界面 if self.EliteAssessView == nil then self.EliteAssessView = EliteAssessView.New() end if self.EliteAssessView:HasOpen() then self.EliteAssessView:UpdateView() else self.EliteAssessView:Open() end end GlobalEventSystem:Bind(EliteAssessModel.OPEN_ELITE_ASSESS_VIEW, onOpenEliteAssessView) local onCloseEliteAssessView = function ()--打开精英考核界面 if self.EliteAssessView ~= nil then self.EliteAssessView:Close() end end GlobalEventSystem:Bind(EliteAssessModel.CLOSE_ELITE_ASSESS_VIEW, onCloseEliteAssessView) local function openEliteAssessShowAwardView(data,x,y)--打开精英考核奖励展示界面 if self.EliteAssessShowAwardView == nil then self.EliteAssessShowAwardView = EliteAssessShowAwardView.New() end if self.EliteAssessShowAwardView:HasOpen() then -- self.EliteAssessShowAwardView:UpdateView(data) else self.EliteAssessShowAwardView:Open(data,x,y) end end self.model:Bind(EliteAssessModel.OPEN_ELITE_ASSESS_AWARD_SHOW_VIEW, openEliteAssessShowAwardView) local function onSendCmdFunc( ... ) local args_list = {...} -- if args_list[1] == 45202 then -- self:SendFmtToGame(args_list[1],"h",args_list[2]) if args_list[1] == 45201 then self:SendFmtToGame(args_list[1]) elseif args_list[1] == 45203 then --领取任务奖励 self:SendFmtToGame(args_list[1],"hh",args_list[2],args_list[3]) else -- self:SendFmtToGame(args_list[1]) end end self.model:Bind(EliteAssessModel.REQUEST_INFO, onSendCmdFunc) local function init_open_day( ... )--开服天数初始化 self.model:Fire(EliteAssessModel.REQUEST_INFO,45201) end GlobalEventSystem:Bind(EventName.OPEN_DAY_INIT,init_open_day) --升级 local function onLevelUp(level) if GetModuleOpenLevel(452,nil) == level then self.model:Fire(EliteAssessModel.REQUEST_INFO,45201) end local eliteAssess_cfg = self.model:GetEliteAssessListCfg() for i,v in ipairs(eliteAssess_cfg) do if v.open_lv == level then self.model:Fire(EliteAssessModel.REQUEST_INFO,45201) end end end RoleManager.Instance.mainRoleInfo:Bind(EventName.CHANGE_LEVEL, onLevelUp) end function EliteAssessController:RegisterAllProtocals() self:RegisterProtocal(45201, "handle45201") -- 章节信息 -- self:RegisterProtocal(45202, "handle45202") -- 领取章节奖励 self:RegisterProtocal(45203, "handle45203") -- 领取任务奖励 end -- ############## 章节信息 ############## -- protocol=45201 -- { -- c2s{} -- s2c{ -- category_list:array{ -- category :int16 // 章节 -- task_list:array{ -- task_id :int16 // 任务Id -- progress :int32 // 进度 -- status :int8 // 状态 0:未完成 1:已完成未领取 2:已领取 -- } -- } -- } -- } function EliteAssessController:handle45201() local scmd = {} if not EliteAssessController.Is_Debug then scmd = SCMD45201.New(true) -- print("huangcong:EliteAssessController [116]: ",scmd) -- PrintTable(scmd) -- print("Lizhijian:EliteAssessController [start:129] ") -- PrintTable(scmd) -- print("Lizhijian:EliteAssessController [end:129] ") self.model:SetViewInfo(scmd) self.model:Fire(EliteAssessModel.UPDATE_ELITE_ASSESS_VIEW) else scmd = {} scmd.category = 1 scmd.count = 0 scmd.status = 0 local list = {} for i=1,19 do local data = {} data.task_id = 1000+i data.progress = 0 data.status = 0 if i <= 6 then data.sub_category = 1 elseif i > 6 and i <= 12 then data.sub_category = 2 elseif i > 12 then data.sub_category = 3 end list[#list + 1] = data end scmd.list = list self.model:SetViewInfo(scmd) self.model:Fire(EliteAssessModel.UPDATE_ELITE_ASSESS_VIEW) end end -- ############## 领取章节奖励 ############## -- protocol=45202 -- { -- c2s{ -- category :int16 // 当前章节 -- } -- s2c{ -- errcode :int32 // 错误码 -- category :int16 // 当前章节 -- } -- } -- function EliteAssessController:handle45202() -- local scmd = SCMD45202.New(true) -- -- print("huangcong:EliteAssessController [116]: ",scmd) -- -- PrintTable(scmd) -- if scmd.errcode == 1 then -- Message.show("领取成功","success") -- self.model:Fire(EliteAssessModel.REQUEST_INFO, 45201) -- if scmd.category == 2 then--章节二领完就要做动画了 -- self.model:Fire(EliteAssessModel.PLAY_ELITE_ASSESS_ACTION) -- end -- else -- ErrorCodeShow(scmd.errcode) -- end -- end -- ############## 领取任务奖励 ############## -- protocol=45203 -- { -- c2s{ -- category :int16 // 当前章节 -- sub_category :int16 // 子章节 -- task_id :int16 // 任务Id -- } -- s2c{ -- errcode :int32 // 错误码 -- } -- } function EliteAssessController:handle45203() local scmd = SCMD45203.New(true) -- print("huangcong:EliteAssessController [116]: ",scmd) -- PrintTable(scmd) if scmd.errcode == 1 then Message.show("领取成功") lua_soundM:PlayUIEffectSound(LuaSoundManager.SOUND_UI.SUCCESS) local task = self.model:GetEliteAssessChapterTaskCfg(scmd.category) if task.task_id == scmd.task_id then self.model.force_change_tab = true end self.model:Fire(EliteAssessModel.REQUEST_INFO, 45201) else ErrorCodeShow(scmd.errcode) end end