the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2
3#include "UIScene.h"
4
5class UIScene_JoinMenu : public UIScene
6{
7private:
8 enum EControls
9 {
10 eControl_JoinGame,
11 eControl_GamePlayers
12 };
13
14 enum ELabels
15 {
16 eLabel_Difficulty,
17 eLabel_GameType,
18 eLabel_GamertagsOn,
19 eLabel_Structures,
20 eLabel_LevelType,
21 eLabel_PVP,
22 eLabel_Trust,
23 eLabel_TNTOn,
24 eLabel_FireOn,
25
26 eLabel_COUNT
27 };
28
29 UIControl_Button m_buttonJoinGame;
30 UIControl_ButtonList m_buttonListPlayers;
31
32 UIControl_Label m_labelLabels[eLabel_COUNT];
33 UIControl_Label m_labelValues[eLabel_COUNT];
34 UI_BEGIN_MAP_ELEMENTS_AND_NAMES(UIScene)
35 UI_MAP_ELEMENT( m_buttonJoinGame, "JoinGame")
36 UI_MAP_ELEMENT( m_buttonListPlayers, "GamePlayers")
37
38 UI_MAP_ELEMENT( m_labelLabels[0], "Label0")
39 UI_MAP_ELEMENT( m_labelLabels[1], "Label1")
40 UI_MAP_ELEMENT( m_labelLabels[2], "Label2")
41 UI_MAP_ELEMENT( m_labelLabels[3], "Label3")
42 UI_MAP_ELEMENT( m_labelLabels[4], "Label4")
43 UI_MAP_ELEMENT( m_labelLabels[5], "Label5")
44 UI_MAP_ELEMENT( m_labelLabels[6], "Label6")
45 UI_MAP_ELEMENT( m_labelLabels[7], "Label7")
46 UI_MAP_ELEMENT( m_labelLabels[8], "Label8")
47
48 UI_MAP_ELEMENT( m_labelValues[0], "Value0")
49 UI_MAP_ELEMENT( m_labelValues[1], "Value1")
50 UI_MAP_ELEMENT( m_labelValues[2], "Value2")
51 UI_MAP_ELEMENT( m_labelValues[3], "Value3")
52 UI_MAP_ELEMENT( m_labelValues[4], "Value4")
53 UI_MAP_ELEMENT( m_labelValues[5], "Value5")
54 UI_MAP_ELEMENT( m_labelValues[6], "Value6")
55 UI_MAP_ELEMENT( m_labelValues[7], "Value7")
56 UI_MAP_ELEMENT( m_labelValues[8], "Value8")
57 UI_END_MAP_ELEMENTS_AND_NAMES()
58
59 FriendSessionInfo *m_selectedSession;
60 bool m_bIgnoreInput;
61 bool m_friendInfoRequestIssued;
62 bool m_friendInfoUpdatedOK;
63 bool m_friendInfoUpdatedERROR;
64
65public:
66 UIScene_JoinMenu(int iPad, void *initData, UILayer *parentLayer);
67 void tick();
68 static void friendSessionUpdated(bool success, void *pParam);
69 static int ErrorDialogReturned(void *pParam, int iPad, const C4JStorage::EMessageResult);
70
71 virtual void updateTooltips();
72 virtual void updateComponents();
73
74 virtual EUIScene getSceneType() { return eUIScene_LoadMenu;}
75
76protected:
77 // TODO: This should be pure virtual in this class
78 virtual wstring getMoviePath();
79
80public:
81 // INPUT
82 virtual void handleInput(int iPad, int key, bool repeat, bool pressed, bool released, bool &handled);
83 virtual void handleFocusChange(F64 controlId, F64 childId);
84 virtual void handleTimerComplete(int id);
85
86protected:
87 void handlePress(F64 controlId, F64 childId);
88
89
90 void StartSharedLaunchFlow();
91
92#ifdef _DURANGO
93 static void checkPrivilegeCallback(LPVOID lpParam, bool hasPrivilege, int iPad);
94#endif
95
96 static int StartGame_SignInReturned(void *pParam, bool, int);
97 static void JoinGame(UIScene_JoinMenu* pClass);
98};