local buttonSpacing = 40 local f0_local1 = 10 local f0_local2 = function(f1_arg0, f1_arg1, f1_arg2) if 0 < f1_arg2 then local f1_local0, f1_local1, f1_local2, f1_local3 = f1_arg0:getLocalRect() local f1_local4 = f1_local3 - f1_local1 f1_arg0:SetTop(f1_local1 - (f1_local4 + f1_arg1) * f1_arg2) f1_arg0:SetBottom(f1_local3 - (f1_local4 + f1_arg1) * f1_arg2) end end local f0_local3 = function(f2_arg0, f2_arg1, f2_arg2) assert(f2_arg0.ConquestButton) if CONDITIONS.IsStoreAllowed(f2_arg0) then assert(f2_arg0.StoreButton) end local f2_local0 = not CONDITIONS.IsTrialLicense(f2_arg0) if f2_local0 then assert(f2_arg0.CustomGameButton) end f2_arg0.buttonSpacing = _1080p * buttonSpacing local f2_local1 = function() return Lobby.IsInPrivateParty() and not Lobby.IsPrivatePartyHost() end local f2_local2 = function() local f4_local0 = f2_local1() f2_arg0.ConquestButton:SetButtonDisabled(f4_local0) if f2_arg0.MLGGameBattlesButton ~= nil then f2_arg0.MLGGameBattlesButton:SetButtonDisabled(f4_local0) end if f2_local0 then f2_arg0.CustomGameButton:SetButtonDisabled(f4_local0) end end local f2_local3 = LUI.DataSourceInGlobalModel.new("frontEnd.lobby.areWeGameHost") local f2_local4 = DataSources.frontEnd.lobby.memberCount f2_arg0:SubscribeToModel(f2_local3:GetModel(f2_arg1), f2_local2) f2_arg0:SubscribeToModel(f2_local4:GetModel(f2_arg1), f2_local2) f2_arg0.ConquestButton:addEventHandler("button_action", function(f5_arg0, f5_arg1) Engine.SetDvarBool("cg_mlg_gamebattles_match", false) local f5_local0 = function() LUI.FlowManager.RequestAddMenu("Missions", false, f5_arg1.controller, false, {}, true) end if not Onboarding:BeginFlow(Onboarding.RigTutorial, f2_arg1) then f5_local0() else LUI.FlowManager.RequestPopupMenu(nil, "MPFullScreenVideoOverlay", true, f2_arg1, nil, { videoRef = "mp_wolverines_mission_commander", allowSkip = true, doIntroFadeOut = false, doIntroFadeIn = false, doOutroFadeIn = true, doOutroFadeOut = true, fadeColor = COLORS.black }, nil, true, true) local f5_local1 = f2_arg0:Wait(500) f5_local1.onComplete = f5_local0 end end) if CONDITIONS.IsGameBattlesAllowed(f2_arg0) then f2_arg0.MLGGameBattlesButton:addEventHandler("button_action", function(f7_arg0, f7_arg1) if Engine.GetDvarBool("splitscreen") then LUI.FlowManager.RequestPopupMenu(f2_arg0, "MLGGamebattlesSplitscreenPopup", true, f7_arg1.controller, false, { controllerIndex = f2_arg1 }) elseif Lobby.IsNotAloneInPrivateParty() then LUI.FlowManager.RequestPopupMenu(f2_arg0, "DisbandPartyEnterGameBattlesLobbyPopup", true, f7_arg1.controller, false, { controllerIndex = f2_arg1 }) else OpenGameBattlesLobby(f7_arg1.controller) end end) end if f2_local0 then f2_arg0.CustomGameButton:addEventHandler("button_action", function(f8_arg0, f8_arg1) OpenPrivateMatchLobby(f8_arg1) end) end f2_arg0.ModsButton:addEventHandler("button_action", function(arg0, arg1) LUI.FlowManager.RequestAddMenu("ModSelectMenu", true, arg1.controller, false) end) if CONDITIONS.IsStoreAllowed(f2_arg0) then f2_arg0.StoreButton:addEventHandler("button_action", function(f9_arg0, f9_arg1) local f9_local0 = STORE.GoToStore local f9_local1 = f9_arg1.controller local f9_local2 = f9_arg0:GetCurrentMenu() f9_local0(f9_local1, f9_local2.id, f9_arg0.id) end) end local f2_local5 = _1080p * f0_local1 local f2_local6 = 0 if f2_arg0.MLGGameBattlesButton == nil then f2_local6 = 1 end if f2_arg0.CustomGameButton then f0_local2(f2_arg0.CustomGameButton, f2_local5, f2_local6) else f2_local6 = f2_local6 + 1 end if f2_arg0.ModsButton then f0_local2(f2_arg0.ModsButton, f2_local5, f2_local6) else f2_local6 = f2_local6 + 1 end if CONDITIONS.IsStoreAllowed(f2_arg0) then f0_local2(f2_arg0.StoreButton, f2_local5, f2_local6) else f2_local6 = f2_local6 + 1 end if f2_arg0.StoreButton then f2_arg0.StoreButton:SetButtonDescription(STORE.GetStoreDescription()) if CONDITIONS.IsTrialLicense() then f2_arg0.StoreButton.Text:setText(ToUpperCase(Engine.Localize("LUA_MENU_BUY_NOW"))) end end end function MPMainMenuButtons(menu, controller) local self = LUI.UIVerticalNavigator.new() self:SetAnchorsAndPosition(0, 1, 0, 1, 0, 500 * _1080p, 0, 190 * _1080p) self.id = "MPMainMenuButtons" local controllerIndex = controller and controller.controllerIndex if not controllerIndex and not Engine.InFrontend() then controllerIndex = self:getRootController() end assert(controllerIndex) local ConquestButton = nil ConquestButton = MenuBuilder.BuildRegisteredType("MenuButton", { controllerIndex = controllerIndex }) ConquestButton.id = "ConquestButton" ConquestButton.buttonDescription = Engine.Localize("LUA_MENU_PUBLIC_MATCH_DESC") ConquestButton.Text:setText(Engine.Localize("LUA_MENU_PUBLIC_MATCH_CAPS"), 0) ConquestButton:SetAnchorsAndPosition(0, 1, 0, 1, 0, _1080p * 500, 0, _1080p * 30) self:addElement(ConquestButton) self.ConquestButton = ConquestButton local MLGGameBattlesButton = nil if CONDITIONS.IsGameBattlesAllowed(self) then MLGGameBattlesButton = MenuBuilder.BuildRegisteredType("MenuButton", { controllerIndex = controllerIndex }) MLGGameBattlesButton.id = "MLGGameBattlesButton" if CONDITIONS.IsGameBattlesAllowed(self) then else end if CONDITIONS.IsGameBattlesAllowed(self) then MLGGameBattlesButton.buttonDescription = Engine.Localize("LUA_MENU_MLG_GAMEBATTLES_DESC") end MLGGameBattlesButton.Text:setText(Engine.Localize("LUA_MENU_MLG_GAMEBATTLES_CAPS"), 0) MLGGameBattlesButton:SetAnchorsAndPosition(0, 1, 0, 1, 0, _1080p * 500, _1080p * 40, _1080p * 70) self:addElement(MLGGameBattlesButton) self.MLGGameBattlesButton = MLGGameBattlesButton end local CustomGameButton = nil CustomGameButton = MenuBuilder.BuildRegisteredType("MenuButton", { controllerIndex = controllerIndex }) CustomGameButton.id = "CustomGameButton" CustomGameButton.buttonDescription = Engine.Localize("LUA_MENU_CUSTOM_GAME_DESC") CustomGameButton.Text:setText(Engine.Localize("LUA_MENU_CUSTOM_GAME_CAPS"), 0) CustomGameButton:SetAnchorsAndPosition(0, 1, 0, 1, 0, _1080p * 500, _1080p * 80, _1080p * 110) self:addElement(CustomGameButton) self.CustomGameButton = CustomGameButton local ModsButton = nil ModsButton = MenuBuilder.BuildRegisteredType("MenuButton", { controllerIndex = controllerIndex }) ModsButton.id = "ModsButton" ModsButton.buttonDescription = Engine.Localize("LUA_MENU_MODS_DESC") ModsButton.Text:setText(ToUpperCase(Engine.Localize("LUA_MENU_MODS_CAPS")), 0) ModsButton:SetAnchorsAndPosition(0, 1, 0, 1, 0, _1080p * 500, _1080p * 120, _1080p * 150) self:addElement(ModsButton) self.ModsButton = ModsButton local StoreButton = nil if CONDITIONS.IsStoreAllowed(self) then StoreButton = MenuBuilder.BuildRegisteredType("MenuButton", { controllerIndex = controllerIndex }) StoreButton.id = "StoreButton" StoreButton.buttonDescription = Engine.Localize("LUA_MENU_STORE_DESC") StoreButton.Text:setText(Engine.Localize("LUA_MENU_STORE_CAPS"), 0) StoreButton:SetAnchorsAndPosition(0, 1, 0, 1, 0, _1080p * 500, _1080p * 160, _1080p * 190) self:addElement(StoreButton) self.StoreButton = StoreButton end f0_local3(self, controllerIndex, controller) return self end MenuBuilder.m_types["MPMainMenuButtons"] = MPMainMenuButtons