Add game files and server configs
This commit is contained in:
636
data/ui_scripts/server_list/__init__.lua
Normal file
636
data/ui_scripts/server_list/__init__.lua
Normal file
@ -0,0 +1,636 @@
|
||||
if (game:issingleplayer() or not Engine.InFrontend()) then
|
||||
return
|
||||
end
|
||||
|
||||
local Lobby = luiglobals.Lobby
|
||||
local SystemLinkJoinMenu = LUI.mp_menus.SystemLinkJoinMenu
|
||||
|
||||
local controller = nil
|
||||
local server = nil
|
||||
|
||||
COLUMN_0 = 0
|
||||
COLUMN_1 = 460
|
||||
COLUMN_2 = 660
|
||||
COLUMN_3 = 800
|
||||
COLUMN_4 = 985
|
||||
COLUMN_5 = 500
|
||||
|
||||
SystemLinkJoinMenu.UpdateGameList = function(f3_arg0, f3_arg1)
|
||||
local f3_local0 = f3_arg1.controller
|
||||
if not f3_local0 then
|
||||
f3_local0 = Engine.GetFirstActiveController()
|
||||
end
|
||||
local f3_local1 = LUI.FlowManager.GetMenuScopedDataFromElement(f3_arg0)
|
||||
Lobby.UpdateServerDisplayList(f3_local0)
|
||||
local f3_local2 = Lobby.GetServerCount(f3_local0)
|
||||
if f3_local2 ~= f3_local1.serverCount then
|
||||
f3_local1.serverCount = f3_local2
|
||||
f3_arg0:processEvent({
|
||||
name = "menu_refresh",
|
||||
immediate = true
|
||||
})
|
||||
f3_arg0:processEvent({
|
||||
name = "gain_focus",
|
||||
immediate = true
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
SystemLinkJoinMenu.RefreshServers = function(f4_arg0, f4_arg1)
|
||||
local f4_local0 = LUI.FlowManager.GetMenuScopedDataFromElement(f4_arg0)
|
||||
f4_local0.serverCount = 0
|
||||
if f4_local0.serverList then
|
||||
local f4_local1 = Lobby.RefreshServerList
|
||||
local f4_local2 = f4_arg1.controller
|
||||
if not f4_local2 then
|
||||
f4_local2 = Engine.GetFirstActiveController()
|
||||
end
|
||||
f4_local1(f4_local2)
|
||||
f4_local0.serverList:processEvent({
|
||||
name = "lose_focus",
|
||||
immediate = true
|
||||
})
|
||||
f4_local0.serverList:clearSavedState()
|
||||
f4_local0.serverList:processEvent({
|
||||
name = "menu_refresh",
|
||||
dispatchChildren = true
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
function CreateColumnImage(id, shader, leftAnchor, rightAnchor, left, alpha)
|
||||
return {
|
||||
type = "UIImage",
|
||||
id = id,
|
||||
states = {
|
||||
default = {
|
||||
font = CoD.TextSettings.NormalFont.Font,
|
||||
alignment = LUI.Alignment.right,
|
||||
height = 20,
|
||||
width = 20,
|
||||
left = left,
|
||||
red = Colors.cac_label_text.r,
|
||||
green = Colors.cac_label_text.g,
|
||||
blue = Colors.cac_label_text.b,
|
||||
alpha = alpha,
|
||||
material = RegisterMaterial(shader)
|
||||
},
|
||||
},
|
||||
handlers = {
|
||||
button_over = MBh.AnimateToState("over"),
|
||||
button_up = MBh.AnimateToState("default"),
|
||||
button_disable = MBh.AnimateToState("disabled")
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
SystemLinkJoinMenu.CreateHeaderDef = function()
|
||||
local header = {
|
||||
type = "UIElement",
|
||||
id = "header_row_id",
|
||||
states = {
|
||||
default = CoD.ColorizeState(Swatches.Overlay.Color, {
|
||||
topAnchor = true,
|
||||
bottomAnchor = false,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = 2,
|
||||
left = 2,
|
||||
right = -2,
|
||||
height = GenericTitleBarDims.TitleBarHeight,
|
||||
material = RegisterMaterial("white"),
|
||||
alpha = Swatches.Overlay.AlphaMore
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
local columns = {}
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateRowBackground(SystemLinkJoinMenu.Colors.generic_menu_bg_color))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnShade("column_shade_rect_id", false, COLUMN_1, COLUMN_2))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnShade("column_shade_rect_2_id", true, COLUMN_3, -1))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnText("host_header", Engine.Localize("@MENU_HOST_NAME"), true, false, COLUMN_0, COLUMN_1))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnText("map_header", Engine.Localize("@MENU_MAP"), true, false, COLUMN_1, COLUMN_2))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnText("players_header", Engine.Localize("@MENU_NUMPLAYERS"), true, false, COLUMN_2, COLUMN_3))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnText("type_header", Engine.Localize("@MENU_TYPE1"), true, true, COLUMN_3, COLUMN_4))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnText("ping_header", Engine.Localize("@MENU_PING"), true, true, COLUMN_4, COLUMN_5))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnImage("protected_header", "icon_lock", true, true, COLUMN_5, 1))
|
||||
header.children = columns
|
||||
return header
|
||||
end
|
||||
|
||||
SystemLinkJoinMenu.CreateRowDef = function(f6_arg0, f6_arg1, f6_arg2, f6_arg3)
|
||||
local option = {
|
||||
type = "UIButton",
|
||||
id = "row_" .. f6_arg1,
|
||||
disabled = f6_arg2,
|
||||
focusable = not f6_arg2,
|
||||
properties = {
|
||||
button_height = GenericButtonDims.button_height
|
||||
},
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = true,
|
||||
bottomAnchor = false,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = 0,
|
||||
bottom = MBh.Property("button_height"),
|
||||
left = 0,
|
||||
right = 0
|
||||
}
|
||||
},
|
||||
handlers = {
|
||||
button_action = MBh.EmitEventToRoot({
|
||||
name = "select_game",
|
||||
idx = f6_arg1
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
local columns = {}
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateRowBackground(f6_arg3))
|
||||
table.insert(columns, SystemLinkJoinMenu.CreateColumnShade("column_shade_rect_id", false, COLUMN_1, COLUMN_2))
|
||||
local shade = SystemLinkJoinMenu.CreateColumnShade("column_shade_rect_2_id", true, COLUMN_3, -1)
|
||||
table.insert(columns, shade)
|
||||
local hostname = SystemLinkJoinMenu.CreateColumnText("host_text", Lobby.GetServerData(f6_arg0, f6_arg1, SystemLinkJoinMenu.GameDataColumn.Host), true, false, COLUMN_0, COLUMN_1)
|
||||
table.insert(columns, hostname)
|
||||
local mapname = SystemLinkJoinMenu.CreateColumnText("map_text", Lobby.GetServerData(f6_arg0, f6_arg1, SystemLinkJoinMenu.GameDataColumn.Map), true, false, COLUMN_1, COLUMN_2)
|
||||
table.insert(columns, mapname)
|
||||
local players = SystemLinkJoinMenu.CreateColumnText("players_text", Lobby.GetServerData(f6_arg0, f6_arg1, SystemLinkJoinMenu.GameDataColumn.Clients), true, false, COLUMN_2, COLUMN_3)
|
||||
table.insert(columns, players)
|
||||
local gametype = SystemLinkJoinMenu.CreateColumnText("type_text", Lobby.GetServerData(f6_arg0, f6_arg1, SystemLinkJoinMenu.GameDataColumn.Game), true, true, COLUMN_3, COLUMN_4)
|
||||
table.insert(columns, gametype)
|
||||
local ping = SystemLinkJoinMenu.CreateColumnText("ping_text", Lobby.GetServerData(f6_arg0, f6_arg1, SystemLinkJoinMenu.GameDataColumn.Ping), true, true, COLUMN_4, COLUMN_5)
|
||||
table.insert(columns, ping)
|
||||
local is_private = SystemLinkJoinMenu.CreateColumnImage("protected_header", "icon_lock", true, true, COLUMN_5, Lobby.GetServerData(f6_arg0, f6_arg1, 5) == "1" and 1 or 0)
|
||||
table.insert(columns, is_private)
|
||||
option.children = columns
|
||||
return option
|
||||
end
|
||||
|
||||
SystemLinkJoinMenu.OnCreate = function(f1_arg0, f1_arg1)
|
||||
local f1_local0 = LUI.FlowManager.GetMenuScopedDataFromElement(f1_arg0)
|
||||
f1_local0.serverCount = 0
|
||||
f1_arg0:processEvent(LUI.ButtonHelperText.CommonEvents.addBackButton)
|
||||
f1_arg0:processEvent({
|
||||
name = "add_button_helper_text",
|
||||
button_ref = "button_action",
|
||||
helper_text = Engine.Localize("@MENU_JOIN_GAME1"),
|
||||
side = "left",
|
||||
clickable = true
|
||||
})
|
||||
f1_arg0:processEvent({
|
||||
name = "add_button_helper_text",
|
||||
button_ref = "button_alt1",
|
||||
helper_text = Engine.Localize("@MENU_SB_TOOLTIP_BTN_REFRESH"),
|
||||
side = "left",
|
||||
clickable = true
|
||||
})
|
||||
f1_arg0:processEvent({
|
||||
name = "add_button_helper_text",
|
||||
button_ref = "button_alt2",
|
||||
helper_text = Engine.Localize("@LUA_MENU_FILTER"),
|
||||
side = "right",
|
||||
clickable = true
|
||||
})
|
||||
local f1_local1 = Lobby.BuildServerList
|
||||
local f1_local2 = f1_arg1.controller
|
||||
if not f1_local2 then
|
||||
f1_local2 = Engine.GetFirstActiveController()
|
||||
end
|
||||
f1_local1(f1_local2)
|
||||
end
|
||||
|
||||
function ServerListBackground()
|
||||
if Engine.IsAliensMode() then
|
||||
return {
|
||||
image = "frontend_aliens_art",
|
||||
fill_color = {
|
||||
r = 1,
|
||||
g = 1,
|
||||
b = 1
|
||||
},
|
||||
fill_alpha = 1
|
||||
}
|
||||
end
|
||||
|
||||
if Engine.IsCoreMode() then
|
||||
return {
|
||||
image = "white",
|
||||
fill_color = {
|
||||
r = 0.07,
|
||||
g = 0.1,
|
||||
b = 0.11
|
||||
},
|
||||
fill_alpha = 1
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
function JoinGame(f2_arg0, f2_arg1)
|
||||
server = f2_arg1
|
||||
controller = server.controller
|
||||
if not f2_local1 then
|
||||
controller = Engine.GetFirstActiveController()
|
||||
end
|
||||
|
||||
local is_private = Lobby.GetServerData(controller, server.idx, 5)
|
||||
if is_private == "1" then
|
||||
LUI.FlowManager.RequestPopupMenu(server, "server_password_field", false, controller, false)
|
||||
else
|
||||
Lobby.JoinServer(controller, server.idx)
|
||||
end
|
||||
end
|
||||
|
||||
SystemLinkJoinMenu.menu_systemlink_join = function()
|
||||
if Engine.IsCoreMode() then
|
||||
Engine.SetDvarString("ui_customModeName", "mp")
|
||||
elseif Engine.IsAliensMode() then
|
||||
Engine.SetDvarString("ui_customModeName", "aliens")
|
||||
end
|
||||
|
||||
if Engine.GetDvarString("ui_mapvote_entrya_gametype") == nil
|
||||
or Engine.GetDvarString("ui_mapvote_entrya_gametype") then
|
||||
Engine.SetDvarString("ui_mapvote_entrya_gametype", "any")
|
||||
end
|
||||
|
||||
if Engine.GetDvarString("ui_mapvote_entrya_mapname") == nil
|
||||
or Engine.GetDvarString("ui_mapvote_entrya_mapname") == ""
|
||||
or (string.match(Engine.GetDvarString("ui_mapvote_entrya_mapname"), "alien") == nil and Engine.IsAliensMode())
|
||||
or (string.match(Engine.GetDvarString("ui_mapvote_entrya_mapname"), "alien") == "alien" and Engine.IsCoreMode()) then
|
||||
Engine.SetDvarString("ui_mapvote_entrya_mapname", "any")
|
||||
end
|
||||
|
||||
return {
|
||||
type = "UIElement",
|
||||
id = "menu_systemlink_join_root",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = true,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = 0,
|
||||
bottom = 0,
|
||||
left = 0,
|
||||
right = 0
|
||||
}
|
||||
},
|
||||
handlers = {
|
||||
menu_create = SystemLinkJoinMenu.OnCreate,
|
||||
select_game = JoinGame
|
||||
},
|
||||
children = {
|
||||
{
|
||||
type = "UIImage",
|
||||
states = {
|
||||
default = CoD.ColorizeState(Swatches.Overlay.Color, {
|
||||
topAnchor = true,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = 0,
|
||||
bottom = 0,
|
||||
left = 0,
|
||||
right = 0,
|
||||
material = RegisterMaterial("white"),
|
||||
alpha = Swatches.Overlay.AlphaMore,
|
||||
})
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UIElement",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = false,
|
||||
bottomAnchor = false,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
left = 200,
|
||||
right = -200,
|
||||
height = 550
|
||||
}
|
||||
},
|
||||
children = {
|
||||
{
|
||||
type = "generic_drop_shadow",
|
||||
properties = {
|
||||
offset_shadow = 0
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "generic_menu_titlebar",
|
||||
id = "menu_systemlink_join_title_id",
|
||||
properties = {
|
||||
fill_alpha = 1,
|
||||
font = CoD.TextSettings.BoldFont,
|
||||
title_bar_text = Engine.Localize("@PLATFORM_SYSTEM_LINK_TITLE"),
|
||||
title_bar_text_indent = GenericTitleBarDims.TitleBarLCapWidth,
|
||||
title_bar_alignment = LUI.Alignment.Left
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "generic_menu_background",
|
||||
id = "menu_systemlink_join_bg_id",
|
||||
properties = {
|
||||
fill_alpha = Swatches.Overlay.AlphaMore,
|
||||
},
|
||||
children = {
|
||||
SystemLinkJoinMenu.CreateHeaderDef(),
|
||||
{
|
||||
type = "UIVerticalList",
|
||||
id = "menu_systemlink_join_game_list_id",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = true,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = GenericTitleBarDims.TitleBarHeight + 4,
|
||||
bottom = 600,
|
||||
left = 2,
|
||||
right = -2
|
||||
}
|
||||
},
|
||||
childrenFeeder = SystemLinkJoinMenu.LinkGamesFeeder,
|
||||
handlers = {
|
||||
update_game_list = SystemLinkJoinMenu.UpdateGameList,
|
||||
menu_create = function(f12_arg0, f12_arg1)
|
||||
local f12_local0 = LUI.FlowManager.GetMenuScopedDataFromElement(f12_arg0)
|
||||
f12_local0.serverList = f12_arg0
|
||||
SystemLinkJoinMenu.RefreshServers(f12_arg0, f12_arg1)
|
||||
end
|
||||
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "button_helper_text_main",
|
||||
id = "online_vault_helper_text_id",
|
||||
properties = {
|
||||
left_inset = 10,
|
||||
right_inset = -10,
|
||||
top_margin = GenericFooterDims.TopMargin_WithoutBackground,
|
||||
height = 42,
|
||||
spacing = 12,
|
||||
background_alpha = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UITimer",
|
||||
id = "menu_systemlink_join_update_timer",
|
||||
properties = {
|
||||
event = "update_game_list",
|
||||
interval = 250,
|
||||
disposable = false,
|
||||
broadcastToRoot = true
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UIBindButton",
|
||||
id = "menu_systemlink_join_bind_button_id",
|
||||
handlers = {
|
||||
button_secondary = MBh.LeaveMenu(),
|
||||
button_alt1 = SystemLinkJoinMenu.RefreshServers,
|
||||
button_alt2 = OpenFiltersMenu
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
LUI.MenuBuilder.m_definitions["menu_systemlink_join"] = function()
|
||||
local menu = SystemLinkJoinMenu.menu_systemlink_join()
|
||||
|
||||
local rows = menu.children[2].children[3].children
|
||||
local header = rows[1]
|
||||
|
||||
|
||||
-- Increase server list width
|
||||
menu.children[2].states.default.left = 100
|
||||
menu.children[2].states.default.right = -100
|
||||
|
||||
menu.children[3].properties.interval = 10 -- 250
|
||||
|
||||
return menu
|
||||
end
|
||||
|
||||
ServerPasswordListFeeder = function()
|
||||
return {
|
||||
{
|
||||
type = "UIVerticalList",
|
||||
id = "password_field_items",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = true,
|
||||
leftAnchor = true,
|
||||
bottomAnchor = false,
|
||||
rightAnchor = true,
|
||||
}
|
||||
},
|
||||
children = {
|
||||
{
|
||||
type = "UIGenericButton",
|
||||
id = "password_button_id",
|
||||
properties = {
|
||||
variant = GenericButtonSettings.Variants.Plain,
|
||||
button_text = Engine.Localize("PATCH_MENU_CHANGE_PASSWORD_CAPS"),
|
||||
button_display_func = function()
|
||||
local f31_local0 = Engine.GetDvarString("password")
|
||||
if f31_local0 then
|
||||
f31_local0 = Engine.GetDvarString("password") ~= ""
|
||||
end
|
||||
local f31_local1
|
||||
if f31_local0 then
|
||||
f31_local1 = Engine.Localize("PATCH_MENU_PASSWORD_SET")
|
||||
if not f31_local1 then
|
||||
|
||||
else
|
||||
return f31_local1
|
||||
end
|
||||
end
|
||||
f31_local1 = Engine.Localize("MENU_NONE")
|
||||
end,
|
||||
button_action_func = function(f32_arg0, f32_arg1)
|
||||
Engine.ExecNow("setfromdvar ui_password password")
|
||||
Engine.OpenScreenKeyboard(f32_arg1.controller, Engine.Localize("MENU_PASSWORD"), Engine.GetDvarString("ui_password") or "", Lobby.PasswordLength, false, false, CoD.KeyboardInputTypes.Password)
|
||||
end
|
||||
},
|
||||
handlers = {
|
||||
text_input_complete = function(f33_arg0, f33_arg1)
|
||||
if f33_arg1.text then
|
||||
Engine.SetDvarString("password", f33_arg1.text)
|
||||
f33_arg0:processEvent({
|
||||
name = "content_refresh"
|
||||
})
|
||||
end
|
||||
end
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UIGenericButton",
|
||||
id = "connect_button_id",
|
||||
properties = {
|
||||
variant = GenericButtonSettings.Variants.Plain,
|
||||
button_text = Engine.Localize("MENU_JOIN_GAME"), button_action_func = function()
|
||||
Lobby.JoinServer(controller, server.idx)
|
||||
end
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
password_field = function(f50_arg0, f50_arg1)
|
||||
return {
|
||||
type = "UIElement",
|
||||
id = "server_popup_container_id",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = true,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = 0,
|
||||
bottom = 0,
|
||||
left = 0,
|
||||
right = 0
|
||||
}
|
||||
},
|
||||
children = {
|
||||
{
|
||||
type = "UIImage",
|
||||
id = "darken_bg",
|
||||
states = {
|
||||
default = CoD.ColorizeState(Swatches.Overlay.Color, {
|
||||
topAnchor = true,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
left = 0,
|
||||
right = 0,
|
||||
top = 0,
|
||||
bottom = 0,
|
||||
material = RegisterMaterial("white"),
|
||||
alpha = Swatches.Overlay.AlphaMore
|
||||
})
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UIElement",
|
||||
id = "mp_server_filters_popup_id",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = false,
|
||||
bottomAnchor = false,
|
||||
leftAnchor = false,
|
||||
rightAnchor = false,
|
||||
top = -1 * Leaderboards.Layout.FilterHeight * 0.6,
|
||||
width = Leaderboards.Layout.FilterWidth,
|
||||
height = 145
|
||||
}
|
||||
},
|
||||
children = {
|
||||
{
|
||||
type = "generic_drop_shadow",
|
||||
properties = {
|
||||
offset_shadow = 0
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "generic_menu_titlebar",
|
||||
id = "server_filters_popup_title_bar_id",
|
||||
properties = {
|
||||
title_bar_text = Engine.Localize("@LUA_MENU_LOBBY_JOINING"),
|
||||
fill_alpha = 1
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "generic_menu_background",
|
||||
id = "server_filters_popup_background",
|
||||
properties = {
|
||||
fill_alpha = 1
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UIElement",
|
||||
id = "mp_server_password_popup_page_id",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = true,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = AAR.Layout.TitleBarHeight + 1,
|
||||
bottom = -1,
|
||||
left = 1,
|
||||
right = -1,
|
||||
}
|
||||
},
|
||||
children = {
|
||||
{
|
||||
type = "generic_border",
|
||||
properties = {
|
||||
thickness = 2,
|
||||
border_red = Colors.generic_menu_frame_color.r,
|
||||
border_green = Colors.generic_menu_frame_color.g,
|
||||
border_blue = Colors.generic_menu_frame_color.b
|
||||
},
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = true,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = 0,
|
||||
bottom = 0,
|
||||
left = 0,
|
||||
right = 0,
|
||||
alpha = 0.6
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UIVerticalList",
|
||||
id = "server_filters_popup_vlist",
|
||||
states = {
|
||||
default = {
|
||||
topAnchor = false,
|
||||
bottomAnchor = true,
|
||||
leftAnchor = true,
|
||||
rightAnchor = true,
|
||||
top = -90,
|
||||
bottom = 0,
|
||||
left = 0,
|
||||
right = 0,
|
||||
spacing = 5
|
||||
}
|
||||
},
|
||||
childrenFeeder = ServerPasswordListFeeder
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type = "UIBindButton",
|
||||
id = "filters_popup_back_button",
|
||||
handlers = {
|
||||
button_secondary = MBh.DoMultiple({
|
||||
MBh.LeaveMenu(),
|
||||
FiltersPopupClose,
|
||||
ForceRefreshServers
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
end
|
||||
|
||||
LUI.MenuBuilder.registerDef("server_password_field", password_field)
|
Reference in New Issue
Block a user