the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#include "stdafx.h"
2#include "Xbox_UIController.h"
3#include "..\Common\XUI\XUI_Scene_Base.h"
4#include "..\Common\XUI\XUI_Scene_Win.h"
5
6ConsoleUIController ui;
7
8void ConsoleUIController::init()
9{
10}
11
12void ConsoleUIController::tick()
13{
14}
15
16void ConsoleUIController::render()
17{
18}
19
20void ConsoleUIController::StartReloadSkinThread()
21{
22}
23
24bool ConsoleUIController::IsReloadingSkin()
25{
26 return false;
27}
28
29void ConsoleUIController::CleanUpSkinReload()
30{
31}
32
33bool ConsoleUIController::NavigateToScene(int iPad, EUIScene scene, void *initData, EUILayer layer, EUIGroup group)
34{
35 // 4J Stu - The majority of calls to this function use the default parameters
36 return app.NavigateToScene(iPad, scene, initData) == S_OK;
37}
38
39bool ConsoleUIController::NavigateBack(int iPad, bool forceUsePad, EUIScene eScene, EUILayer eLayer)
40{
41 return app.NavigateBack(iPad, forceUsePad, eScene) == S_OK;
42}
43
44void ConsoleUIController::NavigateToHomeMenu()
45{
46 app.NavigateToHomeMenu();
47}
48
49void ConsoleUIController::CloseUIScenes(int iPad, bool forceIPad)
50{
51 app.CloseXuiScenes(iPad,forceIPad);
52}
53
54void ConsoleUIController::CloseAllPlayersScenes()
55{
56 app.CloseAllPlayersXuiScenes();
57}
58
59bool ConsoleUIController::IsPauseMenuDisplayed(int iPad)
60{
61 return app.IsPauseMenuDisplayed(iPad);
62}
63
64bool ConsoleUIController::IsContainerMenuDisplayed(int iPad)
65{
66 return app.IsContainerMenuDisplayed(iPad);
67}
68
69bool ConsoleUIController::IsIgnorePlayerJoinMenuDisplayed(int iPad)
70{
71 return app.IsIgnorePlayerJoinMenuDisplayed(iPad);
72}
73
74bool ConsoleUIController::IsIgnoreAutosaveMenuDisplayed(int iPad)
75{
76 return app.IsIgnoreAutosaveMenuDisplayed(iPad);
77}
78
79void ConsoleUIController::SetIgnoreAutosaveMenuDisplayed(int iPad, bool displayed)
80{
81 app.SetIgnoreAutosaveMenuDisplayed(iPad, displayed);
82}
83
84bool ConsoleUIController::IsSceneInStack(int iPad, EUIScene eScene)
85{
86 return app.IsSceneInStack(iPad, eScene);
87}
88
89bool ConsoleUIController::GetMenuDisplayed(int iPad)
90{
91 return app.GetMenuDisplayed(iPad);
92}
93
94void ConsoleUIController::CheckMenuDisplayed()
95{
96 app.CheckMenuDisplayed();
97}
98
99void ConsoleUIController::AnimateKeyPress(int iPad, int dwKeyCode)
100{
101 CXuiSceneBase::AnimateKeyPress(iPad, dwKeyCode);
102}
103
104void ConsoleUIController::SetTooltipText( unsigned int iPad, unsigned int tooltip, int iTextID )
105{
106 CXuiSceneBase::SetTooltipText(iPad,tooltip,iTextID);
107}
108
109void ConsoleUIController::SetEnableTooltips( unsigned int iPad, BOOL bVal )
110{
111 CXuiSceneBase::SetEnableTooltips(iPad,bVal);
112}
113
114void ConsoleUIController::ShowTooltip( unsigned int iPad, unsigned int tooltip, bool show )
115{
116 CXuiSceneBase::ShowTooltip(iPad,tooltip,show);
117}
118
119void ConsoleUIController::SetTooltips( unsigned int iPad, int iA, int iB, int iX, int iY, int iLT, int iRT, int iLB, int iRB, int iLS, bool forceUpdate)
120{
121 CXuiSceneBase::SetTooltips(iPad,iA,iB,iX,iY,iLT,iRT,iLB,iRB,iLS,forceUpdate);
122}
123
124void ConsoleUIController::EnableTooltip( unsigned int iPad, unsigned int tooltip, bool enable )
125{
126 CXuiSceneBase::EnableTooltip(iPad,tooltip,enable);
127}
128
129void ConsoleUIController::RefreshTooltips(unsigned int iPad)
130{
131 CXuiSceneBase::RefreshTooltips(iPad);
132}
133
134void ConsoleUIController::PlayUISFX(ESoundEffect eSound)
135{
136 CXuiSceneBase::PlayUISFX(eSound);
137}
138
139void ConsoleUIController::DisplayGamertag(unsigned int iPad, bool show)
140{
141 CXuiSceneBase::DisplayGamertag(iPad, show?TRUE:FALSE);
142}
143
144void ConsoleUIController::SetSelectedItem(unsigned int iPad, const wstring &name)
145{
146 CXuiSceneBase::SetSelectedItem(iPad, name);
147}
148
149void ConsoleUIController::UpdateSelectedItemPos(unsigned int iPad)
150{
151 CXuiSceneBase::UpdateSelectedItemPos(iPad);
152}
153
154void ConsoleUIController::HandleDLCMountingComplete()
155{
156 // tell the xui scenes the DLC has mounted
157 XUIMessage xuiMsg;
158 CustomMessage_DLCMountingComplete( &xuiMsg );
159
160 // send the message
161 for(int i=0;i<XUSER_MAX_COUNT;i++)
162 {
163 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(i), &xuiMsg );
164 }
165}
166
167void ConsoleUIController::HandleDLCInstalled(int iPad)
168{
169 XUIMessage xuiMsg;
170 CustomMessage_DLCInstalled( &xuiMsg );
171
172 // The DLC message should only happen in the main menus, so it should go to the default xui scenes
173 bool bNotInGame=(Minecraft::GetInstance()->level==NULL);
174
175 if(bNotInGame)
176 {
177 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(DEFAULT_XUI_MENU_USER), &xuiMsg );
178 }
179 else
180 {
181 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(iPad), &xuiMsg );
182 }
183}
184
185void ConsoleUIController::HandleTMSDLCFileRetrieved(int iPad)
186{
187 // send a message to the scene to say we've retrieved the DLC file
188 XUIMessage xuiMsg;
189 CustomMessage_TMS_DLCFileRetrieved( &xuiMsg );
190
191 bool bNotInGame=(Minecraft::GetInstance()->level==NULL);
192
193 if(bNotInGame)
194 {
195 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(DEFAULT_XUI_MENU_USER), &xuiMsg );
196 }
197 else
198 {
199 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(iPad), &xuiMsg );
200 }
201}
202
203void ConsoleUIController::HandleTMSBanFileRetrieved(int iPad)
204{
205 XUIMessage xuiMsg;
206 CustomMessage_TMS_BanFileRetrieved( &xuiMsg );
207 bool bNotInGame=(Minecraft::GetInstance()->level==NULL);
208
209 if(bNotInGame)
210 {
211 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(DEFAULT_XUI_MENU_USER), &xuiMsg );
212 }
213 else
214 {
215 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(iPad), &xuiMsg );
216 }
217}
218
219void ConsoleUIController::HandleInventoryUpdated(int iPad)
220{
221 XUIMessage xuiMsg;
222 CustomMessage_InventoryUpdated( &xuiMsg );
223 XuiBroadcastMessage( CXuiSceneBase::GetPlayerBaseScene(iPad), &xuiMsg );
224}
225
226void ConsoleUIController::HandleGameTick()
227{
228 CXuiSceneBase::TickAllBaseScenes();
229}
230
231void ConsoleUIController::SetTutorialDescription(int iPad, TutorialPopupInfo *info)
232{
233 CScene_TutorialPopup::SetDescription(iPad, info);
234}
235
236void ConsoleUIController::SetTutorialVisible(int iPad, bool visible)
237{
238 CScene_TutorialPopup::SetSceneVisible( iPad, visible );
239}
240
241bool ConsoleUIController::IsTutorialVisible(int iPad)
242{
243 return CScene_TutorialPopup::IsSceneVisible(iPad);
244}
245
246void ConsoleUIController::UpdatePlayerBasePositions()
247{
248 CXuiSceneBase::UpdatePlayerBasePositions();
249}
250
251void ConsoleUIController::SetEmptyQuadrantLogo(int iSection)
252{
253 CXuiSceneBase::SetEmptyQuadrantLogo(iSection);
254}
255
256void ConsoleUIController::HideAllGameUIElements()
257{
258 CXuiSceneBase::HideAllGameUIElements();
259}
260
261void ConsoleUIController::ShowOtherPlayersBaseScene(unsigned int iPad, bool show)
262{
263 CXuiSceneBase::ShowOtherPlayersBaseScene(iPad, show);
264}
265
266void ConsoleUIController::ShowTrialTimer(bool show)
267{
268 CXuiSceneBase::ShowTrialTimer(show?TRUE:FALSE);
269}
270
271void ConsoleUIController::SetTrialTimerLimitSecs(unsigned int uiSeconds)
272{
273 CXuiSceneBase::m_dwTrialTimerLimitSecs = uiSeconds;
274}
275
276void ConsoleUIController::UpdateTrialTimer(unsigned int iPad)
277{
278 CXuiSceneBase::UpdateTrialTimer(iPad);
279}
280
281void ConsoleUIController::ReduceTrialTimerValue()
282{
283 CXuiSceneBase::ReduceTrialTimerValue();
284}
285
286void ConsoleUIController::ShowAutosaveCountdownTimer(bool show)
287{
288 CXuiSceneBase::ShowAutosaveCountdownTimer(show?TRUE:FALSE);
289}
290
291void ConsoleUIController::UpdateAutosaveCountdownTimer(unsigned int uiSeconds)
292{
293 CXuiSceneBase::UpdateAutosaveCountdownTimer(uiSeconds);
294}
295
296void ConsoleUIController::ShowSavingMessage(unsigned int iPad, C4JStorage::ESavingMessage eVal)
297{
298 CXuiSceneBase::ShowSavingMessage(iPad, eVal);
299}
300
301bool ConsoleUIController::PressStartPlaying(unsigned int iPad)
302{
303 return CXuiSceneBase::PressStartPlaying(iPad);
304}
305
306void ConsoleUIController::ShowPressStart(unsigned int iPad)
307{
308 CXuiSceneBase::ShowPressStart(iPad);
309}
310
311void ConsoleUIController::SetWinUserIndex(unsigned int iPad)
312{
313 CScene_Win::setWinUserIndex( iPad );
314}
315
316C4JStorage::EMessageResult ConsoleUIController::RequestMessageBox(UINT uiTitle, UINT uiText, UINT *uiOptionA,UINT uiOptionC, DWORD dwPad,
317 int( *Func)(LPVOID,int,const C4JStorage::EMessageResult),LPVOID lpParam, CXuiStringTable *pStringTable, WCHAR *pwchFormatString,DWORD dwFocusButton,bool bIsError)
318{
319 return StorageManager.RequestMessageBox(uiTitle, uiText, uiOptionA, uiOptionC, dwPad, Func, lpParam, pStringTable, pwchFormatString, dwFocusButton);
320}
321
322C4JStorage::EMessageResult ConsoleUIController::RequestUGCMessageBox(UINT title/* = -1 */, UINT message/* = -1 */, int iPad/* = -1*/, int( *Func)(LPVOID,int,const C4JStorage::EMessageResult)/* = NULL*/, LPVOID lpParam/* = NULL*/)
323{
324 // Default title / messages
325 if (title == -1)
326 {
327 title = IDS_CONNECTION_FAILED;
328 }
329
330 if (message == -1)
331 {
332 message = IDS_NO_USER_CREATED_CONTENT_PRIVILEGE_SINGLE_LOCAL;
333 }
334
335 // Default pad to primary player
336 if (iPad == -1) iPad = ProfileManager.GetPrimaryPad();
337
338 UINT uiIDA[1];
339 uiIDA[0]=IDS_CONFIRM_OK;
340 return ui.RequestMessageBox(title, message, uiIDA, 1, iPad, Func, lpParam, app.GetStringTable(), NULL, 0, false);
341}