From 06b3c45f335bcc8acf8e2da990b7cf8484f0b504 Mon Sep 17 00:00:00 2001 From: red <80164245+gabriel-fondato@users.noreply.github.com> Date: Mon, 2 Mar 2026 12:42:45 -0300 Subject: [PATCH] i think it is fixed now --- .../Common/Tutorial/ChoiceTask.cpp | 35 ++++++++++++------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/Minecraft.Client/Common/Tutorial/ChoiceTask.cpp b/Minecraft.Client/Common/Tutorial/ChoiceTask.cpp index ffdd4caad..f42b3ee02 100644 --- a/Minecraft.Client/Common/Tutorial/ChoiceTask.cpp +++ b/Minecraft.Client/Common/Tutorial/ChoiceTask.cpp @@ -34,7 +34,11 @@ ChoiceTask::ChoiceTask(Tutorial *tutorial, int descriptionId, int promptId /*= - bool ChoiceTask::isCompleted() { - Minecraft *pMinecraft = Minecraft::GetInstance(); + Minecraft* pMinecraft = Minecraft::GetInstance(); + if (!pMinecraft || !pMinecraft->player) + return false; + + int xboxPad = pMinecraft->player->GetXboxPad(); if( m_bConfirmMappingComplete || m_bCancelMappingComplete ) { @@ -50,31 +54,38 @@ bool ChoiceTask::isCompleted() else { // If the player is under water then allow all keypresses so they can jump out - if( pMinecraft->localplayers[tutorial->getPad()]->isUnderLiquid(Material::water) ) return false; + if (pMinecraft->localplayers[tutorial->getPad()]->isUnderLiquid(Material::water)) return false; #ifdef _WINDOWS64 - if(!m_bConfirmMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iConfirmMapping) > 0 || KMInput.IsKeyDown(VK_RETURN)) + if (!m_bConfirmMappingComplete && + (InputManager.GetValue(xboxPad, m_iConfirmMapping) > 0 + || KMInput.IsKeyDown(VK_RETURN))) #else - if (!m_bConfirmMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iConfirmMapping) > 0) + if (!m_bConfirmMappingComplete && + InputManager.GetValue(xboxPad, m_iConfirmMapping) > 0) #endif { m_bConfirmMappingComplete = true; } + #ifdef _WINDOWS64 - if(!m_bCancelMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iCancelMapping) > 0 || KMInput.IsKeyDown('B')) + if (!m_bCancelMappingComplete && + (InputManager.GetValue(xboxPad, m_iCancelMapping) > 0 + || KMInput.IsKeyDown('B'))) #else - if (!m_bCancelMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iCancelMapping) > 0) + if (!m_bCancelMappingComplete && + InputManager.GetValue(xboxPad, m_iCancelMapping) > 0) #endif { m_bCancelMappingComplete = true; } - } - if(m_bConfirmMappingComplete || m_bCancelMappingComplete) - { - sendTelemetry(); - enableConstraints(false, true); + if (m_bConfirmMappingComplete || m_bCancelMappingComplete) + { + sendTelemetry(); + enableConstraints(false, true); + } + return m_bConfirmMappingComplete || m_bCancelMappingComplete; } - return m_bConfirmMappingComplete || m_bCancelMappingComplete; } eTutorial_CompletionAction ChoiceTask::getCompletionAction()