mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-03-03 13:49:40 +00:00
Fixed binding controls to A on joystick
This commit is contained in:
parent
ad54e09593
commit
a7a211860a
2 changed files with 21 additions and 15 deletions
|
@ -740,6 +740,8 @@ namespace MWInput
|
|||
if (arg.button == SDL_CONTROLLER_BUTTON_A || arg.button == SDL_CONTROLLER_BUTTON_B) // We'll pretend that A is left click and B is right click
|
||||
{
|
||||
guiMode = MWBase::Environment::get().getWindowManager()->isGuiMode();
|
||||
if(!mInputBinder->detectingBindingState())
|
||||
{
|
||||
guiMode = MyGUI::InputManager::getInstance().injectMousePress(mMouseX, mMouseY, sdlButtonToMyGUI((arg.button == SDL_CONTROLLER_BUTTON_B) ? SDL_BUTTON_RIGHT : SDL_BUTTON_LEFT)) && guiMode;
|
||||
if (MyGUI::InputManager::getInstance ().getMouseFocusWidget () != 0)
|
||||
{
|
||||
|
@ -750,6 +752,7 @@ namespace MWInput
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
setPlayerControlsEnabled(!guiMode);
|
||||
|
||||
|
|
13
extern/oics/ICSInputControlSystem_joystick.cpp
vendored
13
extern/oics/ICSInputControlSystem_joystick.cpp
vendored
|
@ -180,17 +180,14 @@ namespace ICS
|
|||
}
|
||||
}
|
||||
}
|
||||
else if(mDetectingBindingListener)
|
||||
{
|
||||
mDetectingBindingListener->joystickButtonBindingDetected(this,
|
||||
mDetectingBindingControl, evt.button, mDetectingBindingDirection);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void InputControlSystem::buttonReleased(const SDL_ControllerButtonEvent &evt)
|
||||
{
|
||||
if(mActive)
|
||||
{
|
||||
if(!mDetectingBindingControl)
|
||||
{
|
||||
ControlsButtonBinderMapType::const_iterator it = mControlsJoystickButtonBinderMap.find(evt.button);
|
||||
if(it != mControlsJoystickButtonBinderMap.end())
|
||||
|
@ -198,6 +195,12 @@ namespace ICS
|
|||
it->second.control->setChangingDirection(Control::STOP);
|
||||
}
|
||||
}
|
||||
else if(mDetectingBindingListener)
|
||||
{
|
||||
mDetectingBindingListener->joystickButtonBindingDetected(this,
|
||||
mDetectingBindingControl, evt.button, mDetectingBindingDirection);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void InputControlSystem::axisMoved(const SDL_ControllerAxisEvent &evt)
|
||||
|
|
Loading…
Reference in a new issue