diff --git a/Minecraft.Client/Common/Tutorial/ChoiceTask.cpp b/Minecraft.Client/Common/Tutorial/ChoiceTask.cpp index 49fb068b..f42b3ee0 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,24 +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(!m_bConfirmMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iConfirmMapping) > 0 || KMInput.IsKeyDown(VK_RETURN)) + if (pMinecraft->localplayers[tutorial->getPad()]->isUnderLiquid(Material::water)) return false; +#ifdef _WINDOWS64 + if (!m_bConfirmMappingComplete && + (InputManager.GetValue(xboxPad, m_iConfirmMapping) > 0 + || KMInput.IsKeyDown(VK_RETURN))) +#else + if (!m_bConfirmMappingComplete && + InputManager.GetValue(xboxPad, m_iConfirmMapping) > 0) +#endif { m_bConfirmMappingComplete = true; } - if(!m_bCancelMappingComplete && InputManager.GetValue(pMinecraft->player->GetXboxPad(), m_iCancelMapping) > 0 || KMInput.IsKeyDown('B')) + +#ifdef _WINDOWS64 + if (!m_bCancelMappingComplete && + (InputManager.GetValue(xboxPad, m_iCancelMapping) > 0 + || KMInput.IsKeyDown('B'))) +#else + 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() diff --git a/Minecraft.Client/Common/Tutorial/ControllerTask.cpp b/Minecraft.Client/Common/Tutorial/ControllerTask.cpp index c5fe071b..c3a42120 100644 --- a/Minecraft.Client/Common/Tutorial/ControllerTask.cpp +++ b/Minecraft.Client/Common/Tutorial/ControllerTask.cpp @@ -66,7 +66,11 @@ bool ControllerTask::isCompleted() } else { +#ifdef _WINDOWS64 + bAllComplete = true; +#else bAllComplete = false; +#endif } } iCurrent++; @@ -87,7 +91,11 @@ bool ControllerTask::isCompleted() } else { +#ifdef _WINDOWS64 + bAllComplete = true; +#else bAllComplete = false; +#endif } } iCurrent++; diff --git a/Minecraft.Client/Common/Tutorial/InfoTask.cpp b/Minecraft.Client/Common/Tutorial/InfoTask.cpp index 5330841f..43a10357 100644 --- a/Minecraft.Client/Common/Tutorial/InfoTask.cpp +++ b/Minecraft.Client/Common/Tutorial/InfoTask.cpp @@ -7,6 +7,7 @@ #include "TutorialConstraints.h" #include "InfoTask.h" #include "..\..\..\Minecraft.World\Material.h" +#include "..\..\KeyboardMouseInput.h" InfoTask::InfoTask(Tutorial *tutorial, int descriptionId, int promptId /*= -1*/, bool requiresUserInput /*= false*/, int iMapping /*= 0*/, ETelemetryChallenges telemetryEvent /*= eTelemetryTutorial_NoEvent*/) @@ -65,7 +66,11 @@ bool InfoTask::isCompleted() bool current = (*it).second; if(!current) { - if( InputManager.GetValue(pMinecraft->player->GetXboxPad(), (*it).first) > 0 ) +#ifdef _WINDOWS64 + if (InputManager.GetValue(pMinecraft->player->GetXboxPad(), (*it).first) > 0 || KMInput.IsKeyDown(VK_SPACE)) +#else + if( InputManager.GetValue(pMinecraft->player->GetXboxPad(), (*it).first) > 0) +#endif { (*it).second = true; bAllComplete=true;