the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#include "stdafx.h"
2
3#ifdef _DEBUG_MENUS_ENABLED
4#include "UI.h"
5#include "UIScene_DebugSetCamera.h"
6#include "Minecraft.h"
7#include "MultiPlayerLocalPlayer.h"
8#include "..\..\..\Minecraft.World\StringHelpers.h"
9
10UIScene_DebugSetCamera::UIScene_DebugSetCamera(int iPad, void *initData, UILayer *parentLayer) : UIScene(iPad, parentLayer)
11{
12 // Setup all the Iggy references we need for this scene
13 initialiseMovie();
14
15 int playerNo = 0;
16 currentPosition = new DebugSetCameraPosition();
17 currentPosition->player = playerNo;
18
19 Minecraft *pMinecraft = Minecraft::GetInstance();
20 if (pMinecraft != NULL)
21 {
22 Vec3 *vec = pMinecraft->localplayers[playerNo]->getPos(1.0);
23
24 currentPosition->m_camX = vec->x;
25 currentPosition->m_camY = vec->y - 1.62;// pMinecraft->localplayers[playerNo]->getHeadHeight();
26 currentPosition->m_camZ = vec->z;
27
28 currentPosition->m_yRot = pMinecraft->localplayers[playerNo]->yRot;
29 currentPosition->m_elev = pMinecraft->localplayers[playerNo]->xRot;
30 }
31
32 WCHAR TempString[256];
33
34 swprintf( (WCHAR *)TempString, 256, L"%f", currentPosition->m_camX);
35 m_textInputX.init(TempString, eControl_CamX);
36
37 swprintf( (WCHAR *)TempString, 256, L"%f", currentPosition->m_camY);
38 m_textInputY.init(TempString, eControl_CamY);
39
40 swprintf( (WCHAR *)TempString, 256, L"%f", currentPosition->m_camZ);
41 m_textInputZ.init(TempString, eControl_CamZ);
42
43 swprintf( (WCHAR *)TempString, 256, L"%f", currentPosition->m_yRot);
44 m_textInputYRot.init(TempString, eControl_YRot);
45
46 swprintf( (WCHAR *)TempString, 256, L"%f", currentPosition->m_elev);
47 m_textInputElevation.init(TempString, eControl_Elevation);
48
49 m_checkboxLockPlayer.init(L"Lock Player", eControl_LockPlayer, app.GetFreezePlayers());
50
51 m_buttonTeleport.init(L"Teleport", eControl_Teleport);
52
53 m_labelTitle.init(L"Set Camera Position");
54 m_labelCamX.init(L"CamX");
55 m_labelCamY.init(L"CamY");
56 m_labelCamZ.init(L"CamZ");
57 m_labelYRotElev.init(L"Y-Rot & Elevation (Degs)");
58}
59
60wstring UIScene_DebugSetCamera::getMoviePath()
61{
62 return L"DebugSetCamera";
63}
64
65void UIScene_DebugSetCamera::handleInput(int iPad, int key, bool repeat, bool pressed, bool released, bool &handled)
66{
67 ui.AnimateKeyPress(iPad, key, repeat, pressed, released);
68
69 switch(key)
70 {
71 case ACTION_MENU_CANCEL:
72 if(pressed)
73 {
74 navigateBack();
75 }
76 break;
77 case ACTION_MENU_OK:
78 case ACTION_MENU_UP:
79 case ACTION_MENU_DOWN:
80 case ACTION_MENU_PAGEUP:
81 case ACTION_MENU_PAGEDOWN:
82 case ACTION_MENU_LEFT:
83 case ACTION_MENU_RIGHT:
84 sendInputToMovie(key, repeat, pressed, released);
85 break;
86 }
87}
88
89void UIScene_DebugSetCamera::handlePress(F64 controlId, F64 childId)
90{
91 switch((int)controlId)
92 {
93 case eControl_Teleport:
94 app.SetXuiServerAction( ProfileManager.GetPrimaryPad(),
95 eXuiServerAction_SetCameraLocation,
96 (void *)currentPosition);
97 break;
98 case eControl_CamX:
99 case eControl_CamY:
100 case eControl_CamZ:
101 case eControl_YRot:
102 case eControl_Elevation:
103 m_keyboardCallbackControl = (eControls)((int)controlId);
104 InputManager.RequestKeyboard(L"Enter something",L"",(DWORD)0,25,&UIScene_DebugSetCamera::KeyboardCompleteCallback,this,C_4JInput::EKeyboardMode_Default);
105 break;
106 };
107}
108
109void UIScene_DebugSetCamera::handleCheckboxToggled(F64 controlId, bool selected)
110{
111 switch((int)controlId)
112 {
113 case eControl_LockPlayer:
114 app.SetFreezePlayers(selected);
115 break;
116 }
117}
118
119int UIScene_DebugSetCamera::KeyboardCompleteCallback(LPVOID lpParam,bool bRes)
120{
121 UIScene_DebugSetCamera *pClass=(UIScene_DebugSetCamera *)lpParam;
122 uint16_t pchText[2048];//[128];
123 ZeroMemory(pchText, 2048/*128*/ * sizeof(uint16_t) );
124 InputManager.GetText(pchText);
125
126 if(pchText[0]!=0)
127 {
128 wstring value = (wchar_t *)pchText;
129 double val = 0;
130 if(!value.empty()) val = _fromString<double>( value );
131 switch(pClass->m_keyboardCallbackControl)
132 {
133 case eControl_CamX:
134 pClass->m_textInputX.setLabel(value);
135 pClass->currentPosition->m_camX = val;
136 break;
137 case eControl_CamY:
138 pClass->m_textInputY.setLabel(value);
139 pClass->currentPosition->m_camY = val;
140 break;
141 case eControl_CamZ:
142 pClass->m_textInputZ.setLabel(value);
143 pClass->currentPosition->m_camZ = val;
144 break;
145 case eControl_YRot:
146 pClass->m_textInputYRot.setLabel(value);
147 pClass->currentPosition->m_yRot = val;
148 break;
149 case eControl_Elevation:
150 pClass->m_textInputElevation.setLabel(value);
151 pClass->currentPosition->m_elev = val;
152 break;
153 }
154 }
155
156 return 0;
157}
158#endif