|
|
- require("game.func.FuncOpenModel")
- require("game.func.NewFuncOpenView")
- require("game.func.NewModelOpenView")
- require("game.func.SkillFuncOpenView")
- FuncOpenController = FuncOpenController or BaseClass(BaseController)
-
- function FuncOpenController:__init()
- FuncOpenController.Instance = self
- self.model = FuncOpenModel:getInstance()
-
- self:RegisterProtocals()
- self:InitEvent()
-
- end
-
- function FuncOpenController:RegisterProtocals()
-
- end
-
- function FuncOpenController:InitEvent()
- -- local function on_scene_finish( )
- -- if self.delay_show_skill then
- -- self.delay_show_skill = false
- -- self:ShowSkill(self.skill_data)
- -- end
- -- end
- -- GlobalEventSystem:Bind(EventName.SCENE_LOAD_VIEW_COMPLETE, on_scene_finish)
-
- --打开功能开放界面
- local function onFuncOpenView(key)
- self.model:SetOpenCondition(key)
- local voList = self.model.func_data_list
- if (voList and #voList > 0) then
- local cur_vo = voList[1]
- if cur_vo.help_type == HelpType.NEW_FUNC_OPEN then
- if self.func_open_view == nil then
- self.func_open_view = NewFuncOpenView.New()
- end
- if not self.func_open_view:HasOpen() then
- self.func_open_view:Open(voList)
- end
- GlobalEventSystem:Fire(EventName.OPEN_GUIDE_CLOSE_VIEW)
- elseif cur_vo.help_type == HelpType.TASK_ITEM_SHOW then
- if self.model_open_view == nil then
- self.model_open_view = NewModelOpenView.New()
- end
- if not self.model_open_view:HasOpen() then
- self.model_open_view:Open(voList)
- end
- GlobalEventSystem:Fire(EventName.OPEN_GUIDE_CLOSE_VIEW)
- end
- self.model:ClearOpenCondition()
- self.model:ClearOpenFuncData()
- end
- end
- GlobalEventSystem:Bind(EventName.OPEN_FUNC_OPEN_VIEW,onFuncOpenView)
- end
-
- --新技能开放接口--[101021测试]
- --开启技能展示必传参数skill_id
- --skill_data.skill_id[技能ID]
- --skill_data.ignore_fly[是否不飞默认不飞]
- --skill_data.show_time[界面展示时间默认5s]
- --skill_data.ignore_auto_task[界面关闭不自动任务]
- --skill_data.skill_level[技能等级,默认为1]
- function FuncOpenController:ShowSkill(skill_data)
- if not skill_data then return end
- self.skill_data = skill_data
- local skill_id = skill_data.skill_id
- local skill_cfg = SkillManager.Instance:getSkillFromConfig(skill_id)
- local skill_level = skill_data.skill_level or 1
- if skill_cfg then
- local desc = ""
- if skill_cfg.lvs and skill_cfg.lvs[skill_level] then
- desc = skill_cfg.lvs[skill_level].desc
- end
- local show_vos = {
- {
- type = 2,
- is_out_res=true,
- outside_res = GameResPath.GetSkillIcon(skill_id),
- saying = desc or (skill_cfg and skill_cfg.name or "获取新技能"),
- ignore_fly = skill_data.ignore_fly == nil and true or skill_data.ignore_fly,
- id=skill_data.id or 0,
- show_time = skill_data.show_time or 5,
- skill_id = skill_id,
- name = skill_cfg.name,
- ignore_auto_task = skill_data.ignore_auto_task,
- },
- }
- self.show_vos = show_vos
- end
- -- if SceneManager:getInstance():IsMainCityorYieldScene() then
- local skill_id = self.show_vos[1] and self.show_vos[1].skill_id
- --其他技能展示获得界面就行
- if self.func_open_view == nil then
- self.func_open_view = NewFuncOpenView.New()
- end
- if not self.func_open_view:HasOpen() then
- self.func_open_view:Open(self.show_vos)
- end
- -- else
- -- if not is_agained then
- -- self.delay_show_skill = true
- -- end
- -- end
- end
|