源战役客户端
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

137 lines
3.8 KiB

NewerTaskPartView = NewerTaskPartView or BaseClass(BaseView)
local NewerTaskPartView = NewerTaskPartView
function NewerTaskPartView:__init()
self.base_file = "newerTask"
self.layout_file = "NewerTaskPartView"
self.layer_name = "Activity"
self.destroy_imm = true
self.use_background = true
self.change_scene_close = true
self.append_to_ctl_queue = false --是否要添加进界面堆栈
self.need_show_money = false --是否要显示顶部的金钱栏
self.model = NewerTaskModel:getInstance()
self.load_callback = function ()
self:LoadSuccess()
self:AddEvent()
end
self.open_callback = function ( )
self:OpenSuccess()
GlobalEventSystem:Fire(EventName.STOP_AUTO_DO_TASK)
end
self.destroy_callback = function ( )
self:DestroySuccess()
end
end
function NewerTaskPartView:Open( task_id )
self.task_id = task_id
BaseView.Open(self)
end
function NewerTaskPartView:Close( )
-- if self.trigger_id then
-- GuideController.Instance:TriggerHelper(GuideModel.TASK_TRIGGER_TYPE, self.trigger_id)
-- end
-- BaseView.Close(self)
local target_pos = MainUIController.Instance:GetNewerTaskMotoPos( )
target_pos.x = target_pos.x
target_pos.y = target_pos.y + 50
local target_time = 0.4
local target_scale = Vector3(0.1,0.1,0.1)
local function call_back( )
-- if self.trigger_id then
-- GuideController.Instance:TriggerHelper(GuideModel.TASK_TRIGGER_TYPE, self.trigger_id)
-- end
GlobalEventSystem:Fire(NewerTaskConst.OPEN_MAIN_VIEW, true, true)
BaseView.Close(self)
end
if self.get_btn.transform then
self:ClearUIEffect(self.get_btn.transform)
end
TweenLite.to(self, self.cont.transform, TweenLite.UiAnimationType.POS, target_pos, target_time)
TweenLite.to(self, self.cont.transform, TweenLite.UiAnimationType.SCALE, target_scale, target_time, call_back)
end
function NewerTaskPartView:LoadSuccess()
self.nodes = {
"cont", "cont/get_btn:obj", "cont/icon:img", "cont/title:tmp", "cont/desc:tmp", "cont/effect"
}
self:GetChildren(self.nodes)
if not IsNull(self.background_wnd) then
SetLocalScale(self.background_wnd.transform, 1.5, 1.5, 1.5)
end
self.transform.anchoredPosition = Vector2(0, -60)
self:AddCloseTimer()
end
function NewerTaskPartView:AddEvent()
local function on_click( obj )
if obj == self.get_btn_obj then
self:Close()
end
end
AddClickEvent(self.get_btn_obj, on_click)
end
function NewerTaskPartView:OpenSuccess()
self:UpdateView()
end
function NewerTaskPartView:UpdateView()
local index = 0
local cfg
local info = self.model:GetCurShowInfo()
for k,v in ipairs(info) do
if v.task_id == self.task_id then
index = k
cfg = v
end
end
if cfg then
local icon_name = NewerTaskConst.ItemIcon[index]
lua_resM:setImageSprite(self,self.icon_img, "newerTask_asset", icon_name, true)
end
self:AddUIEffect("ui_jujiaodianji", self.get_btn.transform, self.layer_name, nil, 1, true)
local desc_cfg = NewerTaskConst.PartTaskId[self.task_id]
if desc_cfg then
self.title_tmp.text = desc_cfg.title
self.desc_tmp.text = desc_cfg.desc
self.trigger_id = desc_cfg.trigger_id
end
end
function NewerTaskPartView:AddCloseTimer( )
if self.close_clock_id then
GlobalTimerQuest:CancelQuest(self.close_clock_id)
self.close_clock_id = nil
end
self.time = 6
local function clockFun()
if self.time <= 0 then
-- self.lb_close_tmp.text = ""
self:Close()
else
-- self.lb_close_tmp.text = string.format( "<color=#2cf89a>%d</color> 秒后自动关闭" ,self.time)
self.time = self.time - 1
end
end
self.close_clock_id = GlobalTimerQuest:AddPeriodQuest(clockFun, 1, -1)
clockFun()
end
function NewerTaskPartView:DestroySuccess( )
if self.get_btn.transform then
self:ClearUIEffect(self.get_btn.transform)
end
if self.close_clock_id then
GlobalTimerQuest:CancelQuest(self.close_clock_id)
self.close_clock_id = nil
end
end