源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

96 lines
2.6 KiB

StartTimeTip = StartTimeTip or BaseClass(BaseView)
local StartTimeTip = StartTimeTip
--[[
活动开始321倒计时
使用范例
local data = {
time = time,--倒计时时间(目前只有3/2/1,多的数字要去加资源哦)
call_back = function() --时间到期回调函数
self.model:Fire(BeachConst.REQ_QUIT_SCENE)
end,
}
GlobalEventSystem:Fire(EventName.OPEN_START_TIME_TIP,data)
--]]
function StartTimeTip:__init()
self.base_file = "common"
self.layout_file = "StartTimeTip"
self.layer_name = "Main"
self.destroy_imm = true
self.change_scene_close = false
self.append_to_ctl_queue = false --是否要添加进界面堆栈
self.need_show_money = false --是否要显示顶部的金钱栏
self.change_scene_close = true
-- self.is_set_zdepth = true
self.click_bg_toClose = false
------------------------
-- 一级全屏界面:
self.hide_maincancas = false --隐藏主界面
self.use_background = false --不一定显示遮罩
------------------------
self.load_callback = function ()
self:LoadSuccess()
end
self.open_callback = function ( )
self:OpenSuccess()
end
self.close_win_callback = function ( )
self:Close()
end
self.destroy_callback = function ( )
self:DestroySuccess()
end
end
function StartTimeTip:Open( data )
self.data = data
self.data.end_time = data.time + TimeUtil:getServerTime() --把时间段转为时间戳,兼容计时器帧率不稳定的问题
BaseView.Open(self)
end
function StartTimeTip:LoadSuccess()
local nodes = {
"container/startTimeText:txt", "container:obj", "container/startTimeBg:img",
}
self:GetChildren(nodes)
lua_resM:setOutsideImageSprite(self, self.startTimeBg_img, GameResPath.GetCommonImage("com_start_tip"),true)
self:AddEvent()
-------------------------
SetSizeDelta(self.transform, ScreenWidth, ScreenHeight)
SetAnchoredPositionY(self.container, -209)
end
function StartTimeTip:AddEvent()
end
function StartTimeTip:OpenSuccess()
self:UpdateView()
end
function StartTimeTip:UpdateView()
self.clock_time = self.data.end_time - TimeUtil:getServerTime()
local call_back = self.data and self.data.call_back
local function clockFun()
self.startTimeText_txt.text = math.ceil(self.clock_time)
self.clock_time = self.data.end_time - TimeUtil:getServerTime()
if self.clock_time <= 0 then
self:Close()
if call_back then
call_back()
end
end
end
-- clockFun()
self.close_time_id = self.close_time_id or GlobalTimerQuest:AddPeriodQuest(clockFun, 0.3, -1)
end
function StartTimeTip:DestroySuccess( )
if self.close_time_id then
GlobalTimerQuest:CancelQuest(self.close_time_id)
self.close_time_id = nil
end
end