|
|
- --新功能开放
- SkillFuncOpenView = SkillFuncOpenView or BaseClass(FuncOpenView)
-
- function SkillFuncOpenView:__init()
- self.base_file = "func"
- self.layout_file = "FuncOpenView"
- self.layer_name = "Activity"
- self.destroy_imm = true
-
- self.model = FuncOpenModel:getInstance()
-
- self.curr_time = 0
- self.anim_step_table = {} --用来记录步骤执行了没有
-
- self.open_image_list = {} --针对技能
- self.oepn_vo_list = {}
-
- self.total_time = 5
- self.time_diff = self.total_time
-
- self.has_skill_type = false
- self.skill_type_finish = true
-
- self.load_callback = function ()
- self:LoadSuccess()
- self:InitEvent()
- end
- self.open_callback = function ()
- GlobalEventSystem:Fire(EventName.STOP_AUTO_DO_TASK)
- GlobalEventSystem:Fire(EventName.STOPAUTOFIGHT)
- self:LayoutUI()
- end
- self.close_callback = function ()
- GlobalEventSystem:Fire(EventName.START_AUTO_DO_TASK)
- --local helpVo = GuideModel:getInstance():GetCurHelpVo()
- --GlobalEventSystem:Fire(EventName.FINISH_CURRENT_HELP_STEP,helpVo)
- local function next_func()
- self.curr_time = 0
- self.anim_step_table = {} --用来记录步骤执行了没有
- self.open_image_list = {} --针对技能
- self.oepn_vo_list = {}
- self.total_time = 5
- self.time_diff = self.total_time
- self.has_skill_type = false
- self.skill_type_finish = true
- GlobalEventSystem:Fire(EventName.OPEN_SKILL_FUNC_OPEN_VIEW, self.voList, self.index + 1)
- end
- GlobalTimerQuest:AddDelayQuest(next_func, 0.1)
- end
- self.destroy_callback = function ()
- self:Clear()
- end
- end
-
- function SkillFuncOpenView:Open(voList, index)
- self.voList = voList
- self.index = index or 1
-
- if self.voList[self.index] then
- BaseView.Open(self)
- end
- end
-
- function SkillFuncOpenView:InitEvent()
-
- end
-
- function SkillFuncOpenView:PlaySound()
- local helpVo = self.voList[self.index]
-
- if helpVo and helpVo.help_type == HelpType.NEW_FUNC_OPEN then
- if helpVo.sound and Trim(helpVo.sound) ~= "" then
- if lua_soundM then
- lua_soundM:PlayEffect(self, Trim(helpVo.sound),false,LuaSoundManager.SOUND_TYPE.FUNC)
- end
- end
- end
- end
-
- function SkillFuncOpenView:LayoutUI()
- local image_root
- local image_icon
- local vo = self.voList[self.index]
-
- image_root = UiFactory.createChild(self.skill_canvas_con.transform,UIType.ImageExtend)
- image_icon = image_root:GetComponent("ImageExtend")
-
- self.has_skill_type = true
- self.skill_type_finish = false
- --self.skill_desc,self.skill_name = SkillManager.Instance:GetSkillFromConfigByIdAndLevel(vo.id,1)
- --self.skill_name_txt.text = self.skill_name or ""
- table.insert(self.oepn_vo_list,vo)
- table.insert(self.open_image_list,image_icon)
-
- image_root.transform.localPosition = Vector3(0,39.5,0)
- image_root.transform.localScale= Vector3(0,0,0)
- self:SetFuncIconImage(image_icon,vo)
-
- self.skill_con:SetActive(true)
- self.func_con:SetActive(false)
- self:AddUIEffect("ui_huodexinjineng", self.skill_text_image, self.layer_name, nil, nil, false,-1,nil,nil)
-
- self:PlaySound()
-
- Runner:getInstance():AddRunObj(self, 3)
- end
-
- --主界面主功能开放
- function SkillFuncOpenView:SetFuncIconImage(icon_image,vo)
- lua_resM:setOutsideImageSprite(self,icon_image,GameResPath.GetSkillIcon(vo.id),true)
- end
-
- --主界面技能开放
- function FuncOpenView:SkillFuncRunner(now_time, elapse_time)
- if self.curr_time >= 0 and not self.anim_step_table["skill_step_0"] then
- self.anim_step_table["skill_step_0"] = true
- TweenLite.to(self,self.skill_border_image,TweenLite.UiAnimationType.ALPHA,1,0.2)
- --TweenLite.to(self,self.skill_name_txt, TweenLite.UiAnimationType.ALPHA_OLD, 1, 0.2)
-
- if self.skill_show_effect == nil then
- self.skill_show_effect = true
- local function load_end_func( )
- self:SetGameObjectDepth(self.skill_canvas_con.gameObject)
- end
- self:AddUIEffect("huodeiwupin", self.skill_effect_con, self.layer_name, nil, nil, false,nil,nil,nil,load_end_func)
- end
- end
-
- if self.curr_time >= 0.2 and not self.anim_step_table["skill_step_1"] then
- self.anim_step_table["skill_step_1"] = true
- for k = 1,#self.open_image_list do
- self.open_image_list[k].transform.localScale = Vector3(0,0,0)
- self.open_image_list[k].gameObject:SetActive(true)
- TweenLite.to(self, self.open_image_list[k].transform, TweenLite.UiAnimationType.SCALE, Vector3(1,1,1), 0.1)
- end
- end
-
- if self.curr_time >= 0.8 + self.total_time and not self.anim_step_table["skill_step_2"] then
- self.anim_step_table["skill_step_2"] = true
-
- TweenLite.to(self,self.mask_image,TweenLite.UiAnimationType.ALPHA,0,1)
- TweenLite.to(self,self.skill_border_image,TweenLite.UiAnimationType.ALPHA,0,0.2)
- --TweenLite.to(self,self.skill_name_txt, TweenLite.UiAnimationType.ALPHA_OLD,0, 0.2)
- self:ClearUIEffect(self.skill_effect_con)
- self:ClearUIEffect(self.skill_text_image)
- self.skill_type_finish = true
- end
-
- --[[if self.curr_time >= 1.1 + self.total_time and not self.anim_step_table["skill_step_3"] then
- self.anim_step_table["skill_step_3"] = true
-
- for k = 1,#self.open_image_list do
- TweenLite.to(self, self.open_image_list[k].transform, TweenLite.UiAnimationType.POS, self.oepn_vo_list[k].pos,0.4)
- TweenLite.to(self, self.open_image_list[k].transform, TweenLite.UiAnimationType.SCALE, Vector3(1,1,1), 0.4)
- end
- end
-
- if self.curr_time >= 1.5 + self.total_time and not self.anim_step_table["skill_step_4"] then
- self.anim_step_table["skill_step_4"] = true
- for k = 1,#self.open_image_list do
- self:AddUIEffect("ui_effect_tubiao_shanguang", self.open_image_list[k].transform, "Activity", nil, nil, false)
- end
- end
-
- if self.curr_time >= 2.3 + self.total_time and not self.anim_step_table["skill_step_5"] then
- GlobalEventSystem:Fire(EventName.SHOW_FUNC_OPEN_ICON,self.voList)
- self.anim_step_table["skill_step_5"] = true
- self.skill_type_finish = true
- end--]]
- end
-
- function SkillFuncOpenView:Update(now_time, elapse_time)
- self.curr_time = self.curr_time + elapse_time
-
- if self.has_func_type then
- self:MainFuncRunner(now_time,elapse_time)
- end
-
- if self.has_sub_type then
- self:SubFuncRunner(now_time,elapse_time)
- end
-
- if self.has_skill_type then
- self:SkillFuncRunner(now_time,elapse_time)
- end
-
- if self.curr_time >= 0.8 and not self.anim_step_table["show_sec"] then
- self.anim_step_table["show_sec"] = true
- self:ShowSecTimer()
- end
-
- if self.skill_type_finish then
- self:Close()
- end
- end
|