aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp
diff options
context:
space:
mode:
authordaoge_cmd <3523206925@qq.com>2026-03-01 12:16:08 +0800
committerdaoge_cmd <3523206925@qq.com>2026-03-01 12:16:08 +0800
commitb691c43c44ff180d10e7d4a9afc83b98551ff586 (patch)
tree3e9849222cbc6ba49f2f1fc6e5fe7179632c7390 /Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp
parentdef8cb415354ac390b7e89052a50605285f1aca9 (diff)
Initial commit
Diffstat (limited to 'Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp')
-rw-r--r--Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp76
1 files changed, 76 insertions, 0 deletions
diff --git a/Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp b/Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp
new file mode 100644
index 00000000..7c816033
--- /dev/null
+++ b/Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp
@@ -0,0 +1,76 @@
+#include "stdafx.h"
+#include <assert.h>
+#include "..\XUI\XUI_SaveMessage.h"
+
+//----------------------------------------------------------------------------------
+// Performs initialization tasks - retrieves controls.
+//----------------------------------------------------------------------------------
+HRESULT CScene_SaveMessage::OnInit( XUIMessageInit* pInitData, BOOL& bHandled )
+{
+ MapChildControls();
+ CXuiSceneBase::ShowBackground( DEFAULT_XUI_MENU_USER, TRUE );
+ CXuiSceneBase::ShowLogo( DEFAULT_XUI_MENU_USER, TRUE );
+
+ m_button.SetText(app.GetString(IDS_CONFIRM_OK));
+
+ m_SaveMessage.SetText(app.GetString(IDS_SAVE_ICON_MESSAGE));
+
+ ui.SetTooltips( DEFAULT_XUI_MENU_USER, IDS_TOOLTIPS_SELECT );
+
+ // 4J-PB - If we have a signed in user connected, let's get the DLC now
+ for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i)
+ {
+ if( (InputManager.IsPadConnected(i) || ProfileManager.IsSignedIn(i)) )
+ {
+ if(!app.DLCInstallProcessCompleted() && !app.DLCInstallPending())
+ {
+ app.StartInstallDLCProcess(i);
+ break;
+ }
+ }
+ }
+
+ // set a timer on the saving message screen, so we continue after 8 seconds
+ XuiSetTimer( m_hObj,0,8000);
+ m_bIgnoreInput=false;
+ return S_OK;
+}
+
+//----------------------------------------------------------------------------------
+// Handler for the button press message.
+//----------------------------------------------------------------------------------
+HRESULT CScene_SaveMessage::OnNotifyPressEx(HXUIOBJ hObjPressed, XUINotifyPress* pNotifyPressData, BOOL& rfHandled)
+{
+ if(m_bIgnoreInput) return S_OK;
+
+ // This assumes all buttons can only be pressed with the A button
+ ui.AnimateKeyPress(pNotifyPressData->UserIndex, VK_PAD_A);
+
+ XuiKillTimer(m_hObj,0);
+ app.NavigateToScene(XUSER_INDEX_ANY,eUIScene_MainMenu);
+ rfHandled = TRUE;
+ return S_OK;
+}
+
+HRESULT CScene_SaveMessage::OnKeyDown(XUIMessageInput* pInputData, BOOL& rfHandled)
+{
+ if(m_bIgnoreInput) return S_OK;
+
+ ui.AnimateKeyPress(pInputData->UserIndex, pInputData->dwKeyCode);
+
+ return S_OK;
+}
+
+// 4J-PB - added for Compliance fail -
+// Games must enter an interactive state that accepts player input within 20 seconds after the initial start-up sequence.
+// If an animation or cinematic shown during the start-up sequence runs longer than 20 seconds, it must be skippable using the START button or natural input.
+HRESULT CScene_SaveMessage::OnTimer(XUIMessageTimer *pData,BOOL& rfHandled)
+{
+ m_bIgnoreInput=true;
+ XuiKillTimer(m_hObj,0);
+ app.NavigateToScene(XUSER_INDEX_ANY,eUIScene_MainMenu);
+
+ return S_OK;
+}
+
+