|
|
- require("game.proto.164.Require164")
- require("game.reincarnation.ReincarnationConst")
- require("game.reincarnation.ReincarnationModel")
- require("game.reincarnation.ReinSucceedView") -- 转职成功弹出界面
- require("game.reincarnation.ReinSucceedSkillItem") -- 转职成功弹出界面技能item节点
- require("game.reincarnation.ReinTaskView") -- 转职任务界面
- require("game.reincarnation.ReinTaskDataItem") -- 转职任务界面提升信息节点
- -- require("game.reincarnation.ReinTaskBtnItem") -- 转职任务界面任务按钮节点
- require("game.reincarnation.ReinTaskScrollItem") -- 转职任务界面任务容器节点
- require("game.reincarnation.ReinTaskTabItem") -- 转职任务界面任务页签节点
- require("game.reincarnation.ReinTaskSkillItem") -- 转职任务界面技能item
- require("game.reincarnation.ReinUnlockItem") -- 转职解锁道具item
- require("game.reincarnation.ReinMainTaskView") -- 转职任务弹出界面
-
- ReincarnationController = ReincarnationController or BaseClass(BaseController)
-
- function ReincarnationController:__init()
- ReincarnationController.Instance = self
- self.model = ReincarnationModel:getInstance()
-
- self.last_refresh_time = 0
- self:RegisterProtocals()
- self:AddAllEvent()
- end
-
- function ReincarnationController:RegisterProtocals()
- self:RegisterProtocal(13040,"Handler13040")
- self:RegisterProtocal(13041,"Handler13041")
- end
-
- function ReincarnationController:AddAllEvent()
- -- -- 检查转职按钮打开情况
- -- local function checkReinFunctionIcon()
- -- local mainVo = RoleManager.Instance.mainRoleInfo
- -- local bool = self.model:FindIsInTurn() -- 当前是否在进行转职任务
- -- bool = bool or (mainVo.turn_stage and mainVo.turn_stage ~= 0) -- 当前是否在转职阶段
- -- bool = bool and self.model:CheckReinOpenDayLimit(mainVo.trun, mainVo.trun_stage)
- -- if bool then
- -- local cur_turn = self.model:GetCurTurn()
- -- ActivityIconManager:getInstance():addIcon(16400 + cur_turn, -1, "进行中")
- -- else -- 没有转生任务的情况则调用一次全部删除的逻辑
- -- ActivityIconManager:getInstance():deleteIcon(16401)
- -- ActivityIconManager:getInstance():deleteIcon(16402)
- -- ActivityIconManager:getInstance():deleteIcon(16403)
- -- ActivityIconManager:getInstance():deleteIcon(16404)
- -- ActivityIconManager:getInstance():deleteIcon(16405)
- -- ActivityIconManager:getInstance():deleteIcon(16406)
- -- end
- -- end
- -- -- 转职状态变化
- -- RoleManager.Instance.mainRoleInfo:BindOne("turn_stage", checkReinFunctionIcon)
- -- -- 转职任务更新
- -- GlobalEventSystem:Bind(EventName.SET_REINCARNATION_ICON, checkReinFunctionIcon)
- -- -- 跨天
- -- GlobalEventSystem:Bind(EventName.CHANE_DAY, checkReinFunctionIcon)
-
- -- 初始化
- local function onInitCurRein()
- self.model:InitCurRein()
- -- checkReinFunctionIcon()
- end
- GlobalEventSystem:Bind(EventName.GAME_START, onInitCurRein)
-
- local function openReinSucceedView(show, rein_lv)
- if (show and rein_lv) or not show then
- self:OpenView("ReinSucceedView", show, rein_lv)
- end
- end
- self.model:Bind(ReincarnationModel.OPEN_REIN_SUCCEED_VIEW, openReinSucceedView)
-
- local function openReinMainTaskView(show, rein_lv)
- -- print("Saber:ReincarnationController [72] : ",debug.traceback())
- if (show and rein_lv) or not show then
- self:OpenView("ReinMainTaskView", show, rein_lv)
- end
- end
- self.model:Bind(ReincarnationModel.OPEN_REIN_MAIN_TASK_VIEW, openReinMainTaskView)
-
- -- 更新转职任务
- local function updateReinTask()
- self.model:UpdateCurReinTask()
- self.model:Fire(ReincarnationModel.REFRESH_REIN_TASK)
- end
- TaskModel:getInstance():Bind(TaskEvent.TASK_LIST_INIT, updateReinTask)
- end
-
- ---------------------协议相关----------------------------
- function ReincarnationController:Handler13040()
- local scmd = {
- career = self:ReadFmt("c"),
- sex = self:ReadFmt("c"),
- turn = self:ReadFmt("c"),
- stage = self:ReadFmt("c"),
- }
- local mainVo = RoleManager:getInstance().mainRoleInfo
- mainVo:ChangeVar("turn",scmd.turn)
- mainVo:ChangeVar("turn_stage",scmd.stage)
- -- 刷新model中的转生数据,并删除转生按钮
- self.model:InitCurRein()
- -- ActivityIconManager:getInstance():deleteIcon(2)
- ActivityIconManager:getInstance():deleteIcon(16400 + scmd.turn)
- -- self:TipItemUse()
- -- self.model:Fire(ReincarnationModel.Update_Finish_Rein,scmd)
- -- 关闭转生任务界面
- GlobalEventSystem:Fire(EventName.CLOSE_NEW_MAIN_ROLE_VIEW)
- -- 打开转职成功界面
- self.model:Fire(ReincarnationModel.OPEN_REIN_SUCCEED_VIEW, true, scmd.turn)
- -- 更换头像为转职头像
- local turn_cfg = self.model:GetReinCareerHeadData(scmd.career, scmd.turn)
- if turn_cfg then
- GlobalEventSystem:Fire(EventName.REQ_CHANGE_ROLEHEAD, turn_cfg.image_id)
- end
- end
-
- function ReincarnationController:TipItemUse( )
- local data = GoodsModel:getInstance().bag_goods_list--所有背包物品的属性列表
- local list = {}
- for i,v in ipairs(data) do
- if v.type == GoodsModel.TYPE.EQUIP then
- local is_can_wear = EquipModel:getInstance():IsCanWear(v)
- if is_can_wear then
- ItemUseModel:getInstance():AddUseTip(v)
- end
- end
- end
- -- ItemUseModel:getInstance():ShowItemUseView()
- end
-
- function ReincarnationController:Handler13041()
- local stage = self:ReadFmt("c")
- RoleManager:getInstance().mainRoleInfo:ChangeVar("turn_stage",stage)
- self.model:SetCurStage(stage)
- end
-
|