local f0_local0 = module local f0_local1, f0_local2 = ... f0_local0( f0_local1, package.seeall ) DebugPrint( "Registering " .. _NAME ) f0_local0 = function ( f1_arg0, f1_arg1 ) local f1_local0 = LUI.FlowManager.GetMenuScopedDataFromElement( f1_arg0 ) f1_local0.ContinueMessageVisible = false if f1_arg0.properties.linkTo == "controls" then f1_local0.ContinueMessageVisible = true f1_arg0:dispatchEventToRoot( { name = "continue_message_visible" } ) end f1_local0.OriginalVertMargin = Engine.GetDvarFloat( "profileMenuOption_safeAreaVert" ) f1_local0.OriginalHorzMargin = Engine.GetDvarFloat( "profileMenuOption_safeAreaHorz" ) f1_local0.VertMarginMinAmount = SliderBounds.VertMargin.Min f1_local0.VertMarginMaxAmount = SliderBounds.VertMargin.Max f1_local0.VertMarginIncrement = SliderBounds.VertMargin.Step f1_local0.HorzMarginMinAmount = SliderBounds.HorzMargin.Min f1_local0.HorzMarginMaxAmount = SliderBounds.HorzMargin.Max f1_local0.HorzMarginIncrement = SliderBounds.HorzMargin.Step f1_arg0:dispatchEventToChildren( { name = "vertical_margin_over" } ) f1_arg0:dispatchEventToChildren( { name = "horizontal_margin_over" } ) end f0_local1 = function ( f2_arg0, f2_arg1, f2_arg2, f2_arg3, f2_arg4, f2_arg5 ) local f2_local0 = LUI.FlowManager.GetMenuScopedDataFromElement( f2_arg0 ) local f2_local1 = math.min( f2_arg2, math.max( f2_arg1, Engine.GetDvarFloat( f2_arg4 ) + f2_arg3 ) ) Engine.SetDvarFloat( f2_arg4, f2_local1 ) Engine.ExecNow( "profile_menuDvarsFinish" ) f2_arg0:dispatchEventToRoot( { name = "margin_updated" } ) if f2_local1 <= f2_arg1 or f2_arg2 <= f2_local1 then Engine.PlaySound( CoD.SFX.DenyAdjustSafeArea ) else Engine.PlaySound( CoD.SFX.AdjustSafeArea ) end if f2_local0.ContinueMessageVisible == false and f2_local1 ~= f2_arg5 then f2_local0.ContinueMessageVisible = true f2_arg0:dispatchEventToRoot( { name = "continue_message_visible" } ) end end f0_local2 = function ( f3_arg0, f3_arg1 ) local f3_local0 = LUI.FlowManager.GetMenuScopedDataFromElement( f3_arg0 ) if f3_local0.ContinueMessageVisible then local f3_local1 = LUI.FlowManager.RequestAddMenu local f3_local2 = f3_arg0 local f3_local3 = f3_arg0.properties.linkTo local f3_local4 = f3_arg0:getParent() f3_local1( f3_local2, f3_local3, f3_local4.properties.continueExclusive, f3_arg1.controller, true, { focusSafeArea = true } ) end end function boot_screen_margins() return { type = "UIElement", id = "boot_screen_margins_id", states = { default = { topAnchor = true, bottomAnchor = true, leftAnchor = true, rightAnchor = true, top = 0, bottom = 0, left = 0, right = 0 } }, handlers = { menu_create = f0_local0 }, properties = { linkTo = "main_menu", continueExclusive = false }, children = { { type = "margins_guide" }, { type = "UIText", id = "boot_screen_margins_title_txt_id", properties = { text = Engine.Localize( "@MENU_HUD_MARGINS_CAPS" ) }, states = { default = { topAnchor = true, bottomAnchor = false, leftAnchor = true, rightAnchor = true, top = 60, bottom = 60 + CoD.TextSettings.ExtraBigFont.Height, left = 100, right = 0, font = CoD.TextSettings.ExtraBigFont.Font, alignment = LUI.Alignment.Left } } }, { type = "UIText", id = "boot_screen_margins_instruction_txt1_id", properties = { text = Engine.Localize( "@MENU_ADJUST_SCREENMARGINS" ) }, states = { default = { topAnchor = true, bottomAnchor = false, leftAnchor = true, rightAnchor = true, top = 210, bottom = 210 + CoD.TextSettings.NormalFont.Height, left = 0, right = 0, font = CoD.TextSettings.NormalFont.Font, alignment = LUI.Alignment.Center, red = Colors.primary_text_color.r, green = Colors.primary_text_color.g, blue = Colors.primary_text_color.b } } }, { type = "UIText", id = "boot_screen_margins_instruction_txt2_id", properties = { text = Engine.Localize( "@MENU_ADJUST_SCREENMARGINS_DESC" ) }, states = { default = { topAnchor = true, bottomAnchor = false, leftAnchor = true, rightAnchor = true, top = 210 + CoD.TextSettings.NormalFont.Height, bottom = 210 + 2 * CoD.TextSettings.NormalFont.Height, left = 0, right = 0, font = CoD.TextSettings.NormalFont.Font, alignment = LUI.Alignment.Center, red = Colors.primary_text_color.r, green = Colors.primary_text_color.g, blue = Colors.primary_text_color.b } } }, { type = "UIText", id = "boot_screen_margins_instruction_txt3_id", properties = { text = Engine.Localize( "@MENU_ADJUST_SCREENMARGINS_INST1" ) }, states = { default = { topAnchor = false, bottomAnchor = false, leftAnchor = true, rightAnchor = true, top = -1.2 * CoD.TextSettings.BoldFont.Height, bottom = 0, left = 0, right = 0, font = CoD.TextSettings.BoldFont.Font, alignment = LUI.Alignment.Center, red = Colors.primary_text_color.r, green = Colors.primary_text_color.g, blue = Colors.primary_text_color.b } } }, { type = "UIText", id = "boot_screen_margins_instruction_txt4_id", properties = { text = Engine.Localize( "@MENU_ADJUST_SCREENMARGINS_INST2" ) }, states = { default = { topAnchor = false, bottomAnchor = false, leftAnchor = true, rightAnchor = true, top = 0, bottom = 1.2 * CoD.TextSettings.BoldFont.Height, left = 0, right = 0, font = CoD.TextSettings.BoldFont.Font, alignment = LUI.Alignment.Center, red = Colors.primary_text_color.r, green = Colors.primary_text_color.g, blue = Colors.primary_text_color.b } } }, { type = "UIButton", id = "boot_screen_margins_continue_btn_id", states = { default = { topAnchor = false, bottomAnchor = true, leftAnchor = false, rightAnchor = false, top = -1 * (CoD.TextSettings.BoldFont.Height + 105), bottom = -100, left = -200, right = 200, alpha = 0 }, visible = { alpha = 1 } }, handlers = { button_action = f0_local2, continue_message_visible = MBh.AnimateToState( "visible", 0 ) }, children = { { type = "UIText", properties = { text = Engine.Localize( "@PLATFORM_UI_PRESS_TO_CONTINUE" ) }, states = { default = { topAnchor = true, bottomAnchor = true, leftAnchor = true, rightAnchor = true, top = 0, bottom = 0, left = 0, right = 0, font = CoD.TextSettings.NormalFont.Font, alignment = LUI.Alignment.Center } } } } }, { type = "UIBindButton", id = "boot_screen_margins_bind_btn_id", handlers = { button_up = function ( f5_arg0, f5_arg1 ) local f5_local0 = LUI.FlowManager.GetMenuScopedDataFromElement( f5_arg0 ) f0_local1( f5_arg0, f5_local0.VertMarginMinAmount, f5_local0.VertMarginMaxAmount, f5_local0.VertMarginIncrement, "profileMenuOption_safeAreaVert", f5_local0.OriginalVertMargin ) end , button_down = function ( f6_arg0, f6_arg1 ) local f6_local0 = LUI.FlowManager.GetMenuScopedDataFromElement( f6_arg0 ) f0_local1( f6_arg0, f6_local0.VertMarginMinAmount, f6_local0.VertMarginMaxAmount, -f6_local0.VertMarginIncrement, "profileMenuOption_safeAreaVert", f6_local0.OriginalVertMargin ) end , button_left = function ( f7_arg0, f7_arg1 ) local f7_local0 = LUI.FlowManager.GetMenuScopedDataFromElement( f7_arg0 ) f0_local1( f7_arg0, f7_local0.HorzMarginMinAmount, f7_local0.HorzMarginMaxAmount, -f7_local0.HorzMarginIncrement, "profileMenuOption_safeAreaHorz", f7_local0.OriginalHorzMargin ) end , button_right = function ( f8_arg0, f8_arg1 ) local f8_local0 = LUI.FlowManager.GetMenuScopedDataFromElement( f8_arg0 ) f0_local1( f8_arg0, f8_local0.HorzMarginMinAmount, f8_local0.HorzMarginMaxAmount, f8_local0.HorzMarginIncrement, "profileMenuOption_safeAreaHorz", f8_local0.OriginalHorzMargin ) end } } } } end LUI.MenuBuilder.registerDef( "boot_screen_margins", boot_screen_margins ) LockTable( _M )