require("game.proto.145.Require145") require("game.equipCollect.EquipCollectModel") require("game.equipCollect.EquipCollectConst") require("game.equipCollect.EquipCollectView")--装备大全界面 require("game.equipCollect.EquipCollectEquipItem")--装备大全装备item require("game.equipCollect.EquipCollectLeftItem")--装备大全左边滚动item require("game.equipCollect.EquipCollectAttrItem")--装备大全属性item require("game.equipCollect.EquipCollectTipView")--弹出的装备收集tip require("game.equipCollect.EquipCollectTipItem")--弹出的装备收集tipItem require("game.equipCollect.EquipCollectProgressItem")--装备收集界面里面的进度条小点点 require("game.equipCollect.EquipCollectSubView")--装备收集子界面 require("game.equipCollect.EquipCollectMainView")--装备考核主界面 require("game.equipCollect.EquipCollectRightItem")--装备收集右边的item require("game.equipCollect.EquipCollectTabItem")--右边的页签tab require("game.equipCollect.EquipExamTaskItem")--装备考核任务的item require("game.equipCollect.EquipExamTaskTabItem")--装备考核任务的页签item require("game.equipCollect.EquipExamTaskView")--装备考核任务 require("game.equipCollect.EquipExamBossView")--装备考核boss require("game.equipCollect.EquipExamBossItem")--装备考核boss页签 require("game.equipCollect.EquipExamBossAwardItem")--装备考核boss奖励 require("game.equipCollect.EquipExamBossRedPacketView")--装备考核boss红包 require("game.equipCollect.EquipExamUpgradeView")--装备考核进阶 require("game.equipCollect.EquipExamUpgradeItem")--装备考核进阶item require("game.equipCollect.EquipExamUpgradeAttrView")--装备升星总属性界面 require("game.equipCollect.EquipExamUpgradeAttrItem")--装备升星总属性界面item require("game.equipCollect.EquipCollectSuitTipView")--装备考核弹出来的套装tip EquipCollectController = EquipCollectController or BaseClass(BaseController) function EquipCollectController:__init() EquipCollectController.Instance = self self.model = EquipCollectModel:getInstance() self.mainVo = RoleManager.Instance.mainRoleInfo self:InitEvent() self:RegisterAllProtocals() end function EquipCollectController:InitEvent( ) local function on_open_main_view( show, index, id, sub_id, show_first_effect) if show then if not self.EquipCollectMainView then self.EquipCollectMainView = EquipCollectMainView.New() end self.EquipCollectMainView:Open(index, id, sub_id, show_first_effect) else if self.EquipCollectMainView and self.EquipCollectMainView:HasOpen() then self.EquipCollectMainView:Close() end end end self.model:Bind(EquipCollectConst.OPEN_EC_MAIN_VIEW, on_open_main_view) local function on_open_tip_view( data ) if self.model:IsCollectSuit() then if not self.EquipCollectSuitTipView then self.EquipCollectSuitTipView = EquipCollectSuitTipView.New() end if self.EquipCollectSuitTipView:HasOpen() then self.EquipCollectSuitTipView:ReOpen(data) else self.EquipCollectSuitTipView:Open(data) end else if not self.EquipCollectTipView then self.EquipCollectTipView = EquipCollectTipView.New() end if self.EquipCollectTipView:HasOpen() then self.EquipCollectTipView:ReOpen(data) else self.EquipCollectTipView:Open(data) end end end self.model:Bind(EquipCollectConst.SHOW_EQUIP_COLLECT_TIP, on_open_tip_view) local function update_red_dot_by_tab_id_func( tab_id )--主要的更新红点方法 if not tab_id then self.model:IsEquipExamNeedRedAll() else self.model:IsEquipExamNeedRed(tab_id) end local red_dot = self.model:GetAllEquipExamRedDot() local bool = false for i,v in pairs(red_dot) do if v then bool = true break end end -- GlobalEventSystem:Fire(ActivityIconManager.UPDATE_ICON_TIPS,15208,bool) end self.model:Bind(EquipCollectConst.UPDATE_EQUIP_COLLECT_RED,update_red_dot_by_tab_id_func) local function on_open_total_attr_view( ) if not self.EquipExamUpgradeAttrView then self.EquipExamUpgradeAttrView = EquipExamUpgradeAttrView.New() end self.EquipExamUpgradeAttrView:Open() end self.model:Bind(EquipCollectConst.OPEN_EC_UPGRADE_ATTR_VIEW, on_open_total_attr_view) local function on_level_icon_open( level )--等级 if level == Config.Moduleid[145].open_lv then self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,15218) self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,14510) elseif level == Config.Modulesub["145@2"].open_lv then self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT, 14501) end end RoleManager.Instance.mainRoleInfo:Bind(EventName.CHANGE_LEVEL, on_level_icon_open) local function on_task_icon_open( task_id )--任务 if Config.Moduleid[145].task_id == task_id then self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,15218) self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,14510) end end GlobalEventSystem:Bind(TaskEvent.ANS_FINISHED_TASK_LIST, on_task_icon_open) local function init_open_day( ... )--开服天数初始化 if GetModuleIsOpen(145) then self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,15218) self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,14510) self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT, 14501) end end GlobalEventSystem:Bind(EventName.OPEN_DAY_INIT,init_open_day) local function onRequestProtocal(...) local args = {...} if args[1] == 15220 then self:SendFmtToGame(args[1], "cc", args[2], args[3]) elseif args[1] == 14512 then self:SendFmtToGame(args[1], "i", args[2]) elseif args[1] == 14502 then self:SendFmtToGame(args[1], "ic", args[2], args[3]) else self:SendFmtToGame(args[1]) end end self.model:Bind(EquipCollectConst.REQUEST_SCMD_EVENT, onRequestProtocal) local onEquipStarRed = function (id, flag) if id == EquipModel.MainTab.Evolution then self.model:IsEquipExamNeedRed(EquipCollectConst.TAB_ID.UPGRADE) end end EquipModel:getInstance():Bind(EquipModel.UPDATE_VIEW_RED, onEquipStarRed) local function onEquipExamBossRedPacketView( show, boss_id, is_open) if show then if not self.EquipExamBossRedPacketView then self.EquipExamBossRedPacketView = EquipExamBossRedPacketView.New() end self.EquipExamBossRedPacketView:Open(boss_id, is_open) else if self.EquipExamBossRedPacketView and self.EquipExamBossRedPacketView:HasOpen() then self.EquipExamBossRedPacketView:Close() end end end self.model:Bind(EquipCollectConst.OPEN_RED_PACKET_VIEW, onEquipExamBossRedPacketView) end function EquipCollectController:RegisterAllProtocals( ) self:RegisterProtocal(15218, "Handle15218")--装备收集信息 self:RegisterProtocal(15219, "Handle15219")--装备收集-新增一件收集 self:RegisterProtocal(15220, "Handle15220")--装备收集-激活进度 self:RegisterProtocal(14510, "Handle14510")--装备考核-装备任务-基本信息 self:RegisterProtocal(14511, "Handle14511")--装备考核-装备任务-单条任务-变更主推 self:RegisterProtocal(14512, "Handle14512")--装备考核-装备任务-任务领奖 self:RegisterProtocal(14501, "Handle14501")--装备考核-BOSS首杀-基本信息 self:RegisterProtocal(14502, "Handle14502")--装备考核-BOSS首杀-完成某个首杀-主推 self:RegisterProtocal(14503, "Handle14503")--装备考核-BOSS首杀-领奖 end -- ############## 装备收集信息 ############## -- protocol=15218 -- { -- c2s{ -- } -- s2c{ -- list:array{ -- type :int8 // 代数 -- sub_type :int8 // 品质 -- equipment_list:array{ // -- goods_id:int32 // 已收集的装备id -- } -- active_progress:int8 // 激活进度 -- } -- } -- } function EquipCollectController:Handle15218( ) local vo = SCMD15218.New(true) self.model:SetEquipCollectInfo(vo) if self.model:IsNeedShowTip() then local data = DeepCopy(self.model:GetEquipCollectNeedShowTipData()) self.model:Fire(EquipCollectConst.SHOW_EQUIP_COLLECT_TIP,data) end self.model:Fire(EquipCollectConst.UPDATE_EQUIP_COLLECT_RED, EquipCollectConst.TAB_ID.COLLECT) end -- ############## 装备收集-新增一件收集 ############## -- protocol=15219 -- { -- c2s{ -- } -- s2c{ -- type :int8 // 代数 -- sub_type :int8 // 品质 -- goods_id :int32 // 收集的装备id -- } -- } function EquipCollectController:Handle15219( ) local vo = SCMD15219.New(true) local data = { id = vo.type, sub_id = vo.sub_type, goods_id = vo.goods_id, } self.model:SetEquipCollectNeedShowTipData(data) self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,15218) -- self.model:AddOneEquipCollectInfo(vo) end -- ############## 装备收集-激活进度 ############## -- protocol=15220 -- { -- c2s{ -- type :int8 // 代数 -- sub_type :int8 // 品质 -- } -- s2c{ -- res :int32 // 错误码 -- type :int8 // 代数 -- sub_type :int8 // 品质 -- active_progress:int8 // 激活进度 -- } -- } function EquipCollectController:Handle15220( ) local vo = SCMD15220.New(true) if vo.res == 1 then Message.show("激活套装属性成功", "success") self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT,15218) if vo.type == 1 and vo.sub_type == 1 then GlobalEventSystem:Fire(EventName.TEST_HELP_STEP,11001) end else ErrorCodeShow(vo.res) end end function EquipCollectController:Handle14510( ) local vo = SCMD14510.New(true) self.model:SetEquipCollectTaskInfo(vo) self.model:Fire(EquipCollectConst.UPDATE_EQUIP_COLLECT_RED, EquipCollectConst.TAB_ID.TASK) end function EquipCollectController:Handle14511( ) local vo = SCMD14511.New(true) self.model:SetEquipCollectTaskOneInfo(vo) self.model:Fire(EquipCollectConst.UPDATE_EQUIP_COLLECT_RED, EquipCollectConst.TAB_ID.TASK) end function EquipCollectController:Handle14512( )--会主推14511 local vo = SCMD14512.New(true) if vo.res == 1 then Message.show("奖励领取成功") else ErrorCodeShow(vo.res) end end --[[############## 装备考核-BOSS首杀-基本信息 ############## protocol=14501 { c2s{ } s2c{ list:array{ boss_id :int32 // BOSS killer:string // 首杀者 time:int32 // 首杀时间 self_kill_status:int8 // 自己首杀领取状态:0不可领|1可领未领|2已领奖 server_award_status:int8 // 全服奖励领取状态:0未领|1已领 } } }--]] function EquipCollectController:Handle14501( ) local vo = SCMD14501.New(true) -- print('=======Msh:EquipCollectController.lua[277] ===TABLE====') -- PrintTable(vo) self.model:SetBossData(vo) self.model:Fire(EquipCollectConst.UPDATE_BOSS_VIEW) self.model:Fire(EquipCollectConst.UPDATE_EQUIP_COLLECT_RED, EquipCollectConst.TAB_ID.BOSS) end --[[############## 装备考核-BOSS首杀-完成某个首杀-主推 ############## protocol=14503 { s2c{ type:int8 // 1个人首杀|2全服首杀 boss_id :int32 // BOSS } }--]] function EquipCollectController:Handle14503( ) local vo = SCMD14503.New(true) -- if self.EquipCollectMainView and self.EquipCollectMainView:HasOpen() then -- 界面正在打开 self.model:Fire(EquipCollectConst.REQUEST_SCMD_EVENT, 14501) -- end end --[[############## 装备考核-BOSS首杀-领奖 ############## protocol=14502 { c2s{ boss_id :int32 // BOSS type:int8 // 1全服首杀奖励|2自己首杀奖励 } s2c{ boss_id :int32 // BOSS type:int8 // 1全服首杀奖励|2自己首杀奖励 res:int32 } }--]] function EquipCollectController:Handle14502( ) local vo = SCMD14502.New(true) -- print('=======Msh:EquipCollectController.lua[329] ===TABLE====') -- PrintTable(vo) if vo.res == 1 then self.model:UpdateBossData(vo) end end