Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_CampaignMenuUI.c
Go to the documentation of this file.
1
class
SCR_CampaignMenuUI
:
SCR_SuperMenuBase
2
{
3
protected
const
ResourceName
TILES_LAYOUT
=
"{056BE72745839C20}UI/layouts/Menus/ContentBrowser/CampaignMenu/CampaignTile_Vertical.layout"
;
4
protected
const
ResourceName
CONFIG
=
"{0B1DDB81597DFF04}Configs/MainMenu/CampaignMenuEntries.conf"
;
5
6
//------------------------------------------------------------------------------------------------
7
protected
override
void
OnMenuOpen
()
8
{
9
super.OnMenuOpen();
10
11
SCR_InputButtonComponent
buttonBack =
m_DynamicFooter
.FindButton(
UIConstants
.BUTTON_BACK);
12
if
(buttonBack)
13
buttonBack.
m_OnActivated
.Insert(
Close
);
14
15
bool
disableContent =
GetGame
().GetGameInstallStatus() != 1.0;
16
PrepareTiles
(disableContent);
17
18
if
(
System
.GetPlatform() ==
EPlatform
.PS5 ||
System
.GetPlatform() ==
EPlatform
.PS4 ||
System
.GetPlatform() ==
EPlatform
.PS5_PRO)
19
{
20
// Hide tabs for PS
21
if
(
m_SuperMenuComponent
&&
m_SuperMenuComponent
.GetTabView())
22
m_SuperMenuComponent
.GetTabView().RemoveTab(
EScenarioSubMenuMode
.MODE_SAVES);
23
24
// Hide news menu button (top right corner) on PS
25
Widget
newsButton =
GetRootWidget
().FindAnyWidget(
"NewsButton"
);
26
if
(newsButton)
27
{
28
newsButton.SetVisible(
false
);
29
newsButton.SetEnabled(
false
);
30
}
31
}
32
}
33
34
//------------------------------------------------------------------------------------------------
35
protected
void
PrepareTiles
(
bool
isContentDisabled =
false
)
36
{
37
Resource
resource =
BaseContainerTools
.LoadContainer(
CONFIG
);
38
if
(!resource)
39
return
;
40
41
BaseContainer
container = resource.GetResource().ToBaseContainer();
42
SCR_CampaignMenuConfiguration
menuConf =
SCR_CampaignMenuConfiguration
.Cast(
BaseContainerTools
.CreateInstanceFromContainer(container));
43
if
(!menuConf)
44
return
;
45
46
array<ResourceName> missions = menuConf.m_aCampaignMenuScenarios;
47
48
Widget
scenarioWidgetParent =
GetRootWidget
().FindAnyWidget(
"ScenariosHorizontalLayout"
);
49
50
foreach
(
int
i,
ResourceName
mission : missions)
51
{
52
Widget
w =
GetGame
().GetWorkspace().CreateWidgets(
TILES_LAYOUT
, scenarioWidgetParent);
53
if
(!w)
54
continue
;
55
56
SCR_CampaignTileComponent
tile =
SCR_CampaignTileComponent
.Cast(w.GetChildren().FindHandler(
SCR_CampaignTileComponent
));
57
if
(!tile)
58
continue
;
59
60
if
(i == 0)
61
AlignableSlot
.SetPadding(w, 0, 0, 0, 0);
62
63
MissionWorkshopItem
item =
SCR_ScenarioUICommon
.
GetInGameScenario
(mission);
64
65
tile.
ShowMission
(item);
66
if
(tile.
UpdateCampaignButtons
())
67
{
68
Widget
focusWidget = w.GetChildren();
69
if
(focusWidget)
70
GetGame
().GetWorkspace().SetFocusedWidget(focusWidget);
71
}
72
73
if
(isContentDisabled)
74
tile.
DisableTile
();
75
}
76
}
77
}
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
EScenarioSubMenuMode
EScenarioSubMenuMode
Definition
SCR_ContentBrowser_ScenarioSubMenu.c:2
GetRootWidget
Widget GetRootWidget()
Definition
SCR_ModularButtonComponent.c:189
Close
proto native void Close()
Definition
SCR_WorkshopDialogs.c:77
AlignableSlot
Definition
AlignableSlot.c:13
BaseContainer
Definition
BaseContainer.c:13
BaseContainerTools
Definition
BaseContainerTools.c:13
MenuRootBase::m_DynamicFooter
SCR_DynamicFooterComponent m_DynamicFooter
Definition
MenuRootBase.c:39
MissionWorkshopItem
Definition
MissionWorkshopItem.c:13
Resource
Object holding reference to resource. In destructor release the resource.
Definition
Resource.c:25
ResourceName
Definition
ResourceName.c:13
SCR_CampaignMenuConfiguration
Definition
SCR_CampaignMenuConfiguration.c:3
SCR_CampaignMenuUI
Definition
SCR_CampaignMenuUI.c:2
SCR_CampaignMenuUI::OnMenuOpen
override void OnMenuOpen()
Definition
SCR_CampaignMenuUI.c:7
SCR_CampaignMenuUI::CONFIG
const ResourceName CONFIG
Definition
SCR_CampaignMenuUI.c:4
SCR_CampaignMenuUI::TILES_LAYOUT
const ResourceName TILES_LAYOUT
Definition
SCR_CampaignMenuUI.c:3
SCR_CampaignMenuUI::PrepareTiles
void PrepareTiles(bool isContentDisabled=false)
Definition
SCR_CampaignMenuUI.c:35
SCR_CampaignTileComponent
Definition
SCR_CampaignTileComponent.c:2
SCR_CampaignTileComponent::ShowMission
override void ShowMission(notnull MissionWorkshopItem item, bool showRecommended=false)
Definition
SCR_CampaignTileComponent.c:61
SCR_CampaignTileComponent::DisableTile
override void DisableTile()
Definition
SCR_CampaignTileComponent.c:71
SCR_CampaignTileComponent::UpdateCampaignButtons
bool UpdateCampaignButtons()
Definition
SCR_CampaignTileComponent.c:43
SCR_InputButtonComponent
Definition
SCR_InputButtonComponent.c:2
SCR_InputButtonComponent::m_OnActivated
ref ScriptInvoker m_OnActivated
Definition
SCR_InputButtonComponent.c:153
SCR_ScenarioUICommon
Definition
SCR_ScenarioUICommon.c:5
SCR_ScenarioUICommon::GetInGameScenario
static MissionWorkshopItem GetInGameScenario(ResourceName resource)
Definition
SCR_ScenarioUICommon.c:245
SCR_SuperMenuBase
Definition
SCR_SuperMenuBase.c:7
SCR_SuperMenuBase::m_SuperMenuComponent
SCR_SuperMenuComponent m_SuperMenuComponent
Definition
SCR_SuperMenuBase.c:8
System
Definition
System.c:13
UIConstants
Definition
Constants.c:151
Widget
Definition
Widget.c:13
EPlatform
EPlatform
Definition
EPlatform.c:13
scripts
Game
UI
Menu
CampaignMenu
SCR_CampaignMenuUI.c
Generated by
1.17.0