From b691c43c44ff180d10e7d4a9afc83b98551ff586 Mon Sep 17 00:00:00 2001 From: daoge_cmd <3523206925@qq.com> Date: Sun, 1 Mar 2026 12:16:08 +0800 Subject: Initial commit --- Minecraft.Client/Common/Tutorial/InputConstraint.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 Minecraft.Client/Common/Tutorial/InputConstraint.cpp (limited to 'Minecraft.Client/Common/Tutorial/InputConstraint.cpp') diff --git a/Minecraft.Client/Common/Tutorial/InputConstraint.cpp b/Minecraft.Client/Common/Tutorial/InputConstraint.cpp new file mode 100644 index 00000000..a26d3eb1 --- /dev/null +++ b/Minecraft.Client/Common/Tutorial/InputConstraint.cpp @@ -0,0 +1,18 @@ +#include "stdafx.h" +#include "InputConstraint.h" + +bool InputConstraint::isMappingConstrained(int iPad, int mapping) +{ + // If it's a menu button, then we ignore all inputs + if((m_inputMapping == mapping) || (mapping < ACTION_MAX_MENU)) + { + return true; + } + + // Otherwise see if they map to the same actual button + unsigned char layoutMapping = InputManager.GetJoypadMapVal( iPad ); + + // 4J HEG - Replaced the equivalance test with bitwise AND, important in some mapping configurations + // (e.g. when comparing two action map values and one has extra buttons mapped) + return (InputManager.GetGameJoypadMaps(layoutMapping,m_inputMapping) & InputManager.GetGameJoypadMaps(layoutMapping,mapping)) > 0; +} -- cgit v1.2.3