4jcraft/minecraft/Minecraft.Client/Common/Source Files/Tutorial/Constraints/InputConstraint.cpp
2026-03-31 13:50:13 -05:00

20 lines
798 B
C++

#include "InputConstraint.h"
#include "4J_Input.h"
#include "Minecraft.Client/Common/App_enums.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;
}