From 1b2ea706d3a829e89eb6c4d5008684775d848572 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 16 Jul 2014 09:31:57 -0430 Subject: [PATCH] Fixed a buy with OUYA controls. --- .../ucv/ciens/ccg/nxtar/states/InGameState.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/ve/ucv/ciens/ccg/nxtar/states/InGameState.java b/src/ve/ucv/ciens/ccg/nxtar/states/InGameState.java index bc9af63..5d7501e 100644 --- a/src/ve/ucv/ciens/ccg/nxtar/states/InGameState.java +++ b/src/ve/ucv/ciens/ccg/nxtar/states/InGameState.java @@ -1343,7 +1343,7 @@ public class InGameState extends BaseState{ @Override public boolean axisMoved(Controller controller, int axisCode, float value){ - GamepadUserInput userInput; + GamepadUserInput userInput = null; if(Math.abs(value) > Ouya.STICK_DEADZONE){ userInput = new GamepadUserInput(); @@ -1357,9 +1357,22 @@ public class InGameState extends BaseState{ userInput.axisRightY = value; } + }else if(Math.abs(value) <= Ouya.STICK_DEADZONE && Math.abs(value) > 0.15f){ + userInput = new GamepadUserInput(); + if(axisCode == Ouya.AXIS_LEFT_X){ + userInput.axisLeftX = 0.0f; + }else if(axisCode == Ouya.AXIS_LEFT_Y){ + userInput.axisLeftY = 0.0f; + }else if(axisCode == Ouya.AXIS_RIGHT_X){ + userInput.axisRightX = 0.0f; + }else if(axisCode == Ouya.AXIS_RIGHT_Y){ + userInput.axisRightY = 0.0f; + } + } + + if(userInput != null){ robotArmPositioningSystem.setUserInput(userInput); robotArmPositioningSystem.process(); - return true; }