Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_DebriefingScreenMenu.c
Go to the documentation of this file.
1//------------------------------------------------------------------------------------------------
3{
4 protected static const string RESTART_TIMER_WIDGET_NAME = "RestartTimerHolder";
5
6 //------------------------------------------------------------------------------------------------
7 override void OnMenuOpen()
8 {
10 m_PlayerManager = GetGame().GetPlayerManager();
12
13 SCR_DebriefingScreenComponent debriefingScreen = SCR_DebriefingScreenComponent.Cast(m_GameMode.FindComponent(SCR_DebriefingScreenComponent));
14 if (!debriefingScreen)
15 {
16 Close();
17 return;
18 }
19
22 {
23 if (m_GameMode.GetState() != SCR_EGameModeState.GAME)
24 {
25 m_GameMasterButton.SetVisible(false);
26 }
27 else
28 {
30 if (editor)
31 m_GameMasterButton.SetVisible(editor && !editor.IsLimited());
32 else
33 m_GameMasterButton.SetVisible(false);
34 }
35 }
36
37 // Check is the restarting counter is in the layout and make it active
38 Widget restartCounterWidget = GetRootWidget().FindAnyWidget(RESTART_TIMER_WIDGET_NAME);
39 if (restartCounterWidget)
40 restartCounterWidget.SetVisible(true);
41
42 RichTextWidget scenarioTitle = RichTextWidget.Cast(GetRootWidget().FindAnyWidget("DeploySetup"));
43 if (scenarioTitle)
44 //scenarioTitle.SetText(debriefingScreen.GetHeaderTitle());
45 scenarioTitle.SetText("#AR-DebriefingScreen_Debriefing");
46
47 /*RichTextWidget scenarioSubtitle = RichTextWidget.Cast(GetRootWidget().FindAnyWidget("HeaderSubtitle"));
48 if (scenarioSubtitle)
49 scenarioSubtitle.SetText(debriefingScreen.GetHeaderSubtitle());*/
50
51 ServerInfo serverInfo = GetGame().GetServerInfo();
52 if (serverInfo)
53 m_iMaxPlayerCount = serverInfo.GetPlayerLimit();
54
55 m_wPlayerCount = RichTextWidget.Cast(GetRootWidget().FindAnyWidget("PlayerCount"));
57
58 m_wScenarioTimeElapsed = RichTextWidget.Cast(GetRootWidget().FindAnyWidget("TimeElapsed"));
59
60 Widget continueBtn = GetRootWidget().FindAnyWidget("CloseButton");
61 if (continueBtn)
62 {
63 SCR_InputButtonComponent continueButton = SCR_InputButtonComponent.Cast(continueBtn.FindHandler(SCR_InputButtonComponent));
64 if (continueButton)
65 continueButton.m_OnActivated.Insert(ReturnToMenu);
66
67 RichTextWidget continueBtnBackToMenu = RichTextWidget.Cast(continueBtn.FindAnyWidget("Text"));
68 if (continueBtnBackToMenu)
69 continueBtnBackToMenu.SetText("#AR-PauseMenu_Exit");
70 }
71
72 Widget pauseMenuBtn = GetRootWidget().FindAnyWidget("PauseButton");
73 if (pauseMenuBtn)
74 {
75 SCR_InputButtonComponent pauseMenuButton = SCR_InputButtonComponent.Cast(pauseMenuBtn.FindHandler(SCR_InputButtonComponent));
76 if (pauseMenuButton)
77 pauseMenuButton.m_OnActivated.Insert(OpenPauseMenu);
78 }
79
80 Widget chat = GetRootWidget().FindAnyWidget("ChatPanel");
81 if (chat)
82 m_ChatPanel = SCR_ChatPanel.Cast(chat.FindHandler(SCR_ChatPanel));
83
85 if (m_ChatButton)
86 m_ChatButton.m_OnActivated.Insert(OnChatToggle);
87
89 SCR_DeployMenuBaseScreenLayout baseLayout = debriefingScreen.GetBaseLayout();
90 if (!baseLayout)
91 return;
92
93 baseLayout.InitContent(this);
94
95 //InitMap();
96 }
97
98 //------------------------------------------------------------------------------------------------
100 {
101 SCR_ConfigurableDialogUi dlg = SCR_CommonDialogs.CreateDialog("scenario_exit");
102 if (!dlg)
103 return;
104
106 }
107
108 //-----------------------------------------------------------------------------------------------
110 {
111 GetRootWidget().RemoveFromHierarchy();
112 GameStateTransitions.RequestGameplayEndTransition();
113 }
114
115 //------------------------------------------------------------------------------------------------
117 {
118 GetGame().GetMenuManager().OpenMenu(ChimeraMenuPreset.DebriefingScreenMenu);
119 }
120
121 //------------------------------------------------------------------------------------------------
123 {
124 GetGame().GetMenuManager().CloseMenuByPreset(ChimeraMenuPreset.DebriefingScreenMenu);
125 }
126
127 //------------------------------------------------------------------------------------------------
129 override protected void OpenPauseMenu()
130 {
131 MenuBase menu = GetGame().GetMenuManager().OpenMenu(ChimeraMenuPreset.PauseMenu, 0, true, false);
132
133 PauseMenuUI pauseMenu = PauseMenuUI.Cast(menu);
134 if (pauseMenu)
135 {
136 pauseMenu.FadeBackground(true, true);
137 pauseMenu.DisableSettings();
138 pauseMenu.DisableGameMaster();
139 pauseMenu.DisableArmaVision();
140 }
141 }
142};
ChimeraMenuPreset
Menu presets.
ArmaReforgerScripted GetGame()
Definition game.c:1398
SCR_BaseGameMode GetGameMode()
SCR_EGameModeState
void SCR_EditorManagerEntity(IEntitySource src, IEntity parent)
Widget GetRootWidget()
proto native void Close()
void OpenPauseMenu()
Opens pause menu.
static const string RESTART_TIMER_WIDGET_NAME
SCR_InputButtonComponent m_ChatButton
SCR_MapEntity m_MapEntity
SCR_InputButtonComponent m_GameMasterButton
SCR_ChatPanel m_ChatPanel
Base class for Deploy menu layouts.
void InitContent(SCR_WelcomeScreenMenu menu)
static SCR_InputButtonComponent GetInputButtonComponent(string name, notnull Widget parent, bool searchAllChildren=true)
static SCR_MapEntity GetMapInstance()
Get map entity instance.
Class that handles Welcome screen menu.
void OnChatToggle()
Toggles chat panel.
void UpdateElapsedTime()
Updates elapsed time.
void UpdatePlayerCount(int playerID)
Updates player count.
RichTextWidget m_wScenarioTimeElapsed