diff options
Diffstat (limited to 'Minecraft.Client/Common/Tutorial/ChoiceTask.cpp')
| -rw-r--r-- | Minecraft.Client/Common/Tutorial/ChoiceTask.cpp | 40 |
1 files changed, 29 insertions, 11 deletions
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() |
