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

130 lines
4.1 KiB

require("game.common.BaseAlert")
require("game.common.AlertTypeOne")
require("game.common.AlertTypeTwo")
require("game.common.AlertTypeThree")
require("game.common.AlertTypeFour")
require("game.common.AlertTypeFive")
require("game.common.AlertTypeSix")
require("game.common.AlertTypeSeven")
require("game.common.AlertTypeaAward")
require("game.common.AlertTypeItem")
Alert = Alert or {}
--每种类型分别实现 以免杂乱
Alert.Type = {
One = "Alert.Type.ONE",
Two = "Alert.Type.TWO",
Three = "Alert.Type.THREE",
Four = "Alert.Type.FOUR",
Five = "Alert.Type.Five",
Six = "Alert.Type.Six",
Seven = "Alert.Type.Seven",
CheckBox = "Alert.Type.CHECKBOX",
Timer = "Alert.Type.TIMER",
Award = "Alert.Type.Award",
Item = "Alert.Type.Item",
}
Alert.curr_view = nil
function Alert.show(show_content, type,
ok_callback, cancel_callback,
ok_text, cancel_text,
left_time,is_close_hide,consumable,content_align,ok_left,toggle_text,layer_name,
bg_res, alert_title, close_callback, defalut_toggle,toggle_function,ok_btn_gray,cancel_btn_gray)
if Alert.curr_view and Alert.curr_view:HasOpen() then
Alert.curr_view:Close()
Alert.curr_view = nil
end
local class_name = nil
type = type or Alert.Type.One
if type == Alert.Type.One then
class_name = AlertTypeOne
elseif type == Alert.Type.Two then
class_name = AlertTypeTwo
elseif type == Alert.Type.Three then
class_name = AlertTypeThree
elseif type == Alert.Type.Four then
class_name = AlertTypeFour
elseif type == Alert.Type.Five then
class_name = AlertTypeFive
elseif type == Alert.Type.Six then
class_name = AlertTypeSix
elseif type == Alert.Type.Seven then
class_name = AlertTypeSeven
elseif type == Alert.Type.Award then
class_name = AlertTypeaAward
elseif type == Alert.Type.Item then
class_name = AlertTypeItem
end
if class_name then
Alert.curr_view = class_name.New(show_content, type,
ok_callback, cancel_callback,
ok_text, cancel_text,
left_time,is_close_hide,consumable,content_align,ok_left,toggle_text,layer_name,
bg_res, alert_title, close_callback, defalut_toggle, toggle_function, ok_btn_gray, cancel_btn_gray)
Alert.curr_view:Open()
end
return Alert.curr_view
end
function Alert.showbytable(data)
if Alert.curr_view and Alert.curr_view:HasOpen() then
Alert.curr_view:Close()
Alert.curr_view = nil
end
local class_name = nil
local show_content = data.show_content or ""
local type = data.type or Alert.Type.One
if type == Alert.Type.One then
class_name = AlertTypeOne
elseif type == Alert.Type.Two then
class_name = AlertTypeTwo
elseif type == Alert.Type.Three then
class_name = AlertTypeThree
elseif type == Alert.Type.Four then
class_name = AlertTypeFour
elseif type == Alert.Type.Five then
class_name = AlertTypeFive
elseif type == Alert.Type.Six then
class_name = AlertTypeSix
elseif type == Alert.Type.Seven then
class_name = AlertTypeSeven
elseif type == Alert.Type.Award then
class_name = AlertTypeaAward
elseif type == Alert.Type.Item then
class_name = AlertTypeItem
end
local ok_callback = data.ok_callback
local cancel_callback = data.cancel_callback
local ok_text = data.ok_text
local cancel_text = data.cancel_text
local left_time = data.left_time
local is_close_hide = data.is_close_hide
local consumable = data.consumable
local content_align = data.content_align
local ok_left = data.ok_left
local toggle_text = data.toggle_text
local bg_res = data.bg_res
local alert_title = data.alert_title
local close_callback = data.close_callback
local toggle_function = data.toggle_function
local ok_btn_gray = data.ok_btn_gray
local cancel_btn_gray = data.cancel_btn_gray
if class_name then
Alert.curr_view = class_name.New(show_content,type,
ok_callback, cancel_callback,
ok_text, cancel_text,
left_time,is_close_hide,consumable,content_align,ok_left,toggle_text,nil,
bg_res, alert_title,close_callback,defalut_toggle, toggle_function,ok_btn_gray,cancel_btn_gray)
Alert.curr_view:Open()
end
return Alert.curr_view
end
function Alert.close()
if Alert.curr_view and Alert.curr_view:HasOpen() then
Alert.curr_view:Close()
Alert.curr_view = nil
end
end