private void HandleButtonEvents(OuyaSDK.OuyaPlayer p, OuyaSDK.KeyEnum b, OuyaSDK.InputAction bs) { if (enabled && NGUITools.GetActive(gameObject)) { // Ignoring P to allow any player to use the menu if (bs.Equals(OuyaSDK.InputAction.KeyDown)) { switch (b) { case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: OnKey(KeyCode.UpArrow); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: OnKey(KeyCode.DownArrow); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: OnKey(KeyCode.LeftArrow); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: OnKey(KeyCode.RightArrow); break; } } if (b == activateButton && gameObject == UICamera.selectedObject) { SendMessage("OnPress", bs.Equals(OuyaSDK.InputAction.KeyDown), SendMessageOptions.DontRequireReceiver); } } }
//Call this event ( trigger ) public static void buttonPressEvent(OuyaSDK.OuyaPlayer player, OuyaSDK.KeyEnum button, OuyaSDK.InputAction buttonState) { if (ButtonsEvent != null) { ButtonsEvent(player, button, buttonState); } }
private float GetAxis(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { // Check if we want the *new* SDK input or the example common if (m_useSDKForInput) { // Get the Unity Axis Name for the Unity API string axisName = OuyaSDK.GetUnityAxisName(keyCode, player); // Check if the axis name is valid if (!string.IsNullOrEmpty(axisName)) { //use the Unity API to get the axis value, raw or otherwise float axisValue = Input.GetAxisRaw(axisName); //check if the axis should be inverted if (OuyaSDK.GetAxisInverted(keyCode, player)) { return(-axisValue); } else { return(axisValue); } } } // moving the common code into the sdk via above else { return(OuyaExampleCommon.GetAxis(keyCode, player)); } return(0f); }
private void HandleButtonEvent(OuyaSDK.OuyaPlayer p, OuyaSDK.KeyEnum b, OuyaSDK.InputAction bs) { if (b.Equals(OuyaSDK.KeyEnum.BUTTON_O) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { //we cna use this if we want event-based inputs instead } }
/// <summary> /// Get the KeyCode to be used with the Unity API /// </summary> /// <param name="keyCode"></param> /// <param name="player"></param> /// <returns></returns> public static KeyCode GetUnityKeyCode(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { IOuyaController controller = GetSupportedController(player); if (null == controller) { return((KeyCode)(-1)); } return(controller.GetUnityKeyCode(keyCode, player)); }
protected bool HasKeyCode(OuyaSDK.KeyEnum[] supportedCodes, OuyaSDK.KeyEnum keyCode) { foreach (OuyaSDK.KeyEnum item in supportedCodes) { if (item == keyCode) { return(true); } } return(false); }
/// <summary> /// Check if the axis should be inverted after accessing the Unity API /// </summary> /// <param name="keyCode"></param> /// <param name="player"></param> /// <returns></returns> public static bool GetAxisInverted(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { IOuyaController controller = GetSupportedController(player); if (null == controller) { return(false); } return(controller.GetAxisInverted(keyCode)); }
/// <summary> /// Get the AxisName to be used with the Unity API /// </summary> /// <param name="keyCode"></param> /// <param name="player"></param> /// <returns></returns> public static string GetUnityAxisName(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { IOuyaController controller = GetSupportedController(player); if (null == controller) { return(string.Empty); } return(controller.GetUnityAxisName(keyCode, player)); }
/// <summary> /// Check if the controller button is available /// </summary> /// <param name="keyCode"></param> /// <param name="player"></param> /// <returns></returns> public static bool HasButton(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { IOuyaController controller = GetSupportedController(player); if (null == controller) { return(false); } return(controller.HasButton(keyCode)); }
public static bool GetButton(OuyaSDK.KeyEnum keyCode) { return( GetButton(keyCode, OuyaSDK.OuyaPlayer.player1) || GetButton(keyCode, OuyaSDK.OuyaPlayer.player2) || GetButton(keyCode, OuyaSDK.OuyaPlayer.player3) || GetButton(keyCode, OuyaSDK.OuyaPlayer.player4) || GetButton(keyCode, OuyaSDK.OuyaPlayer.player5) || GetButton(keyCode, OuyaSDK.OuyaPlayer.player6) || GetButton(keyCode, OuyaSDK.OuyaPlayer.player7) || GetButton(keyCode, OuyaSDK.OuyaPlayer.player8)); }
public string GetUnityAxisName(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: return(string.Format("Joy{0} Axis 1", (int)player)); case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: return(string.Format("Joy{0} Axis 2", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_X: return(string.Format("Joy{0} Axis 3", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: return(string.Format("Joy{0} Axis 4", (int)player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(string.Format("Joy{0} Axis 5", (int)player)); case OuyaSDK.KeyEnum.BUTTON_RT: return(string.Format("Joy{0} Axis 6", (int)player)); default: return(string.Empty); } #else switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: return(string.Format("Joy{0} Axis 1", (int)player)); case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: return(string.Format("Joy{0} Axis 2", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_X: return(string.Format("Joy{0} Axis 4", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: return(string.Format("Joy{0} Axis 5", (int)player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(string.Format("Joy{0} Axis 9", (int)player)); case OuyaSDK.KeyEnum.BUTTON_RT: return(string.Format("Joy{0} Axis 10", (int)player)); default: return(string.Empty); } #endif }
public bool GetAxisInverted(OuyaSDK.KeyEnum keyCode) { #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: return(false); case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: return(false); case OuyaSDK.KeyEnum.AXIS_RSTICK_X: return(false); case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: return(false); case OuyaSDK.KeyEnum.BUTTON_LT: return(false); case OuyaSDK.KeyEnum.BUTTON_RT: return(false); default: return(false); } #else switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: return(false); case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: return(false); case OuyaSDK.KeyEnum.AXIS_RSTICK_X: return(false); case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: return(false); case OuyaSDK.KeyEnum.BUTTON_LT: return(false); case OuyaSDK.KeyEnum.BUTTON_RT: return(false); default: return(false); } #endif }
private bool GetButton(OuyaSDK.OuyaPlayer player, OuyaSDK.KeyEnum keyCode) { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(player, 4)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(player, 5)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(player, 0)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(player, 1)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(player, 2)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(player, 3)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(player, 6)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(player, 7)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(player, 8)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(player, 9)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(player, 10)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(player, 11)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetButton(player, 12)); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetButton(player, 13)); default: return(false); } }
public KeyCode GetUnityKeyCode(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(CommonGetUnityKeyCode(4, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(CommonGetUnityKeyCode(5, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(CommonGetUnityKeyCode(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(CommonGetUnityKeyCode(1, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(CommonGetUnityKeyCode(2, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(CommonGetUnityKeyCode(3, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(CommonGetUnityKeyCode(6, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(CommonGetUnityKeyCode(7, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(CommonGetUnityKeyCode(8, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(CommonGetUnityKeyCode(9, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(CommonGetUnityKeyCode(10, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(CommonGetUnityKeyCode(11, player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(CommonGetUnityKeyCode(12, player)); case OuyaSDK.KeyEnum.BUTTON_RT: return(CommonGetUnityKeyCode(13, player)); default: return((KeyCode)(-1)); } }
void HandleButtonEvent(OuyaSDK.OuyaPlayer p, OuyaSDK.KeyEnum b, OuyaSDK.InputAction bs) { if (!player.Equals(p)) { return; } if (b.Equals(OuyaSDK.KeyEnum.BUTTON_O) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { this.animation.Play("attack"); Debug.Log("Button O Down Event was triggered on Player" + player); } if (b.Equals(OuyaSDK.KeyEnum.BUTTON_O) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { Debug.Log("Button O Up Event was triggered on Player" + player); } //BATTLE STANCE: if (b.Equals(OuyaSDK.KeyEnum.BUTTON_Y) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { if (!isBattleStance) { //Set Battle stance. this.animation.Play("waitingforbattle"); isBattleStance = true; } else { if (this.animation.IsPlaying("waitingforbattle")) { this.animation.Play("idle"); isBattleStance = false; } } } //DANCE: if (b.Equals(OuyaSDK.KeyEnum.BUTTON_U) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { this.animation.Play("dance"); } //FAKE Death: if (b.Equals(OuyaSDK.KeyEnum.BUTTON_A) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { this.animation.Play("die"); } }
private bool GetButton(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { // Check if we want the *new* SDK input or the example common if (m_useSDKForInput) { // Get the Unity KeyCode for the Unity API KeyCode unityKeyCode = OuyaSDK.GetUnityKeyCode(keyCode, player); // Check if the KeyCode is valid if (unityKeyCode != (KeyCode)(-1)) { //use the Unity API to get the button value bool buttonState = Input.GetKey(unityKeyCode); return(buttonState); } } // moving the common code into the sdk via aboveUs else { return(OuyaExampleCommon.GetButton(keyCode, player)); } return(false); }
public bool HasButton(OuyaSDK.KeyEnum keyCode) { OuyaSDK.KeyEnum[] buttons = GetSupportedButtons(); return(HasKeyCode(buttons, keyCode)); }
public KeyCode GetUnityKeyCode(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(CommonGetUnityKeyCode(6, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(CommonGetUnityKeyCode(7, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(CommonGetUnityKeyCode(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(CommonGetUnityKeyCode(3, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(CommonGetUnityKeyCode(4, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(CommonGetUnityKeyCode(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(CommonGetUnityKeyCode(13, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(CommonGetUnityKeyCode(14, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_LT: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_RT: return((KeyCode)(-1)); default: return((KeyCode)(-1)); } #else if (Application.platform == RuntimePlatform.OSXEditor) { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(CommonGetUnityKeyCode(13, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(CommonGetUnityKeyCode(14, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(CommonGetUnityKeyCode(16, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(CommonGetUnityKeyCode(18, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(CommonGetUnityKeyCode(19, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(CommonGetUnityKeyCode(17, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(CommonGetUnityKeyCode(11, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(CommonGetUnityKeyCode(12, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(CommonGetUnityKeyCode(5, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(CommonGetUnityKeyCode(6, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(CommonGetUnityKeyCode(7, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(CommonGetUnityKeyCode(8, player)); case OuyaSDK.KeyEnum.BUTTON_LT: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_RT: return((KeyCode)(-1)); default: return((KeyCode)(-1)); } } else { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(CommonGetUnityKeyCode(4, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(CommonGetUnityKeyCode(5, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(CommonGetUnityKeyCode(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(CommonGetUnityKeyCode(2, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(CommonGetUnityKeyCode(3, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(CommonGetUnityKeyCode(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(CommonGetUnityKeyCode(8, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(CommonGetUnityKeyCode(9, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_LT: return((KeyCode)(-1)); case OuyaSDK.KeyEnum.BUTTON_RT: return((KeyCode)(-1)); default: return((KeyCode)(-1)); } } #endif }
//Handles Button Events. private void HandleButtonEvent(OuyaSDK.OuyaPlayer p, OuyaSDK.KeyEnum b, OuyaSDK.InputAction bs) { //Debug.Log(string.Format("Player:{0} | Button:{1} | InputAction:{2}", p, b, bs)); m_inputAction = bs; m_keyEnum = b; //If this event was not meant for us then do not handle it. if (!player.Equals(p)) { return; } //NOTE: This Button event handler only handles events for Player 1, because of the above statement. #region BUTTONS O - A //Check O button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_O) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererButtonO, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_O) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererButtonO, false, true); } //Check U button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_U) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererButtonU, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_U) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererButtonU, false, true); } //Check Y button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_Y) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererButtonY, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_Y) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererButtonY, false, true); } //Check A button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_A) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererButtonA, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_A) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererButtonA, false, true); } //Check L3 button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_L3) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererAxisLeft, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_L3) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererAxisLeft, false, true); } //Check R3 button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_R3) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererAxisRight, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_R3) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererAxisRight, false, true); } #endregion #region Bumpers //Check LB button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_LB) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererLB, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_LB) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererLB, false, true); } //Check RB button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_RB) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererRB, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_RB) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererRB, false, true); } #endregion #region triggers //Check LT button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_LT) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererLT, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_LT) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererLT, false, true); } //Check RT button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_RT) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererRT, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_RT) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererRT, false, true); } #endregion #region DPAD //Check DPAD UP button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_UP) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererDpadUp, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_UP) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererDpadUp, false, true); } //Check DPAD DOWN button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererDpadDown, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererDpadDown, false, true); } //Check DPAD LEFT button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererDpadLeft, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererDpadLeft, false, true); } //Check DPAD RIGHT button for down state if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT) && bs.Equals(OuyaSDK.InputAction.KeyDown)) { UpdateHighlight(RendererDpadRight, true, true); } else if (b.Equals(OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT) && bs.Equals(OuyaSDK.InputAction.KeyUp)) { UpdateHighlight(RendererDpadRight, false, true); } #endregion }
public ButtonMap(JoystickType type, int buttonID, OuyaSDK.KeyEnum button) { this.type = type; this.ButtonID = buttonID; this.button = button; }
public static bool GetButton(OuyaSDK.OuyaPlayer player, OuyaSDK.KeyEnum keyCode) { if (null == OuyaExampleCommon.Joysticks) { return(false); } int playerIndex = (int)player - 1; if (playerIndex >= OuyaExampleCommon.Joysticks.Length) { return(false); } string joystickName = OuyaExampleCommon.Joysticks[playerIndex]; if (null == joystickName) { return(false); } switch (joystickName.ToUpper()) { case "BROADCOM BLUETOOTH HID": case "MOGA PRO HID": switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(player, 6)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(player, 7)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(player, 0)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(player, 3)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(player, 4)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(player, 1)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(player, 13)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(player, 14)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis("DU", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis("DD", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis("DL", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis("DR", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis("LT", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis("RT", player) > 0f); default: return(false); } case "OUYA GAME CONTROLLER": switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(player, 4)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(player, 5)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(player, 0)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(player, 1)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(player, 2)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(player, 3)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(player, 6)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(player, 7)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(player, 8)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(player, 9)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(player, 10)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(player, 11)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetButton(player, 12)); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetButton(player, 13)); default: return(false); } case "XBOX 360 WIRELESS RECEIVER": case "CONTROLLER (AFTERGLOW GAMEPAD FOR XBOX 360)": case "CONTROLLER (ROCK CANDY GAMEPAD FOR XBOX 360)": case "CONTROLLER (XBOX 360 WIRELESS RECEIVER FOR WINDOWS)": case "MICROSOFT X-BOX 360 PAD": case "CONTROLLER (XBOX 360 FOR WINDOWS)": case "CONTROLLER (XBOX360 GAMEPAD)": case "XBOX 360 FOR WINDOWS (CONTROLLER)": #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(player, 6)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(player, 7)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(player, 0)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(player, 3)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(player, 4)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(player, 1)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(player, 13)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(player, 14)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis("DU", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis("DD", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis("DL", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis("DR", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis("LT", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis("RT", player) > 0f); default: return(false); } #else switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(player, 4)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(player, 5)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(player, 0)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(player, 2)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(player, 3)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(player, 1)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(player, 8)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(player, 9)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis("DU", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis("DD", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis("DL", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis("DR", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis("LT", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis("RT", player) > 0f); default: return(false); } #endif case "": //the driver is reporting the controller as blank #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(player, 6)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(player, 7)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(player, 0)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(player, 3)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(player, 4)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(player, 1)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(player, 13)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(player, 14)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis("DU", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis("DD", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis("DL", player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis("DR", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis("LT", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis("RT", player) > 0f); default: return(false); } #else switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(player, 13)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(player, 14)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(player, 16)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(player, 18)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(player, 19)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(player, 17)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(player, 11)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(player, 12)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(player, 5)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(player, 6)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(player, 7)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(player, 8)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis("LT", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis("RT", player) > 0f); case OuyaSDK.KeyEnum.BUTTON_SELECT: return(GetButton(player, 10)); case OuyaSDK.KeyEnum.BUTTON_START: return(GetButton(player, 9)); case OuyaSDK.KeyEnum.BUTTON_SYSTEM: return(GetButton(player, 15)); default: return(false); } #endif } return(false); }
public string GetUnityAxisName(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: return(string.Format("Joy{0} Axis 1", (int)player)); case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: return(string.Format("Joy{0} Axis 2", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_X: return(string.Format("Joy{0} Axis 3", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: return(string.Format("Joy{0} Axis 4", (int)player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(string.Format("Joy{0} Axis 7", (int)player)); case OuyaSDK.KeyEnum.BUTTON_RT: return(string.Format("Joy{0} Axis 8", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(string.Format("Joy{0} Axis 5", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(string.Format("Joy{0} Axis 5", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(string.Format("Joy{0} Axis 6", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(string.Format("Joy{0} Axis 6", (int)player)); default: return(string.Empty); } #else if (Application.platform == RuntimePlatform.OSXEditor) { switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: return(string.Format("Joy{0} Axis 1", (int)player)); case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: return(string.Format("Joy{0} Axis 2", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_X: return(string.Format("Joy{0} Axis 3", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: return(string.Format("Joy{0} Axis 4", (int)player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(string.Format("Joy{0} Axis 5", (int)player)); case OuyaSDK.KeyEnum.BUTTON_RT: return(string.Format("Joy{0} Axis 6", (int)player)); default: return(string.Empty); } } else { switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: return(string.Format("Joy{0} Axis 1", (int)player)); case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: return(string.Format("Joy{0} Axis 2", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_X: return(string.Format("Joy{0} Axis 4", (int)player)); case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: return(string.Format("Joy{0} Axis 5", (int)player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(string.Format("Joy{0} Axis 9", (int)player)); case OuyaSDK.KeyEnum.BUTTON_RT: return(string.Format("Joy{0} Axis 10", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(string.Format("Joy{0} Axis 6", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(string.Format("Joy{0} Axis 6", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(string.Format("Joy{0} Axis 7", (int)player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(string.Format("Joy{0} Axis 7", (int)player)); default: return(string.Empty); } } #endif }
public static float GetAxis(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { if (null == OuyaExampleCommon.Joysticks) { return(0f); } int playerIndex = (int)player - 1; if (playerIndex >= OuyaExampleCommon.Joysticks.Length) { return(0f); } string joystickName = OuyaExampleCommon.Joysticks[playerIndex]; if (null == joystickName) { return(0f); } bool invert = false; string axisName = string.Empty; switch (joystickName.ToUpper()) { case "HARMONIX ROCK BAND DRUMKIT": return(0f); case "HARMONIX ROCK BAND GUITAR": switch (keyCode) { case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_PICKUP: case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_WHAMMI: case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: axisName = string.Format("Joy{0} Axis 7", (int)player); break; case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_STRUM: case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: axisName = string.Format("Joy{0} Axis 8", (int)player); break; default: return(0f); } break; case "BROADCOM BLUETOOTH HID": case "MOGA PRO HID": #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); invert = true; break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 8", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 7", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: axisName = string.Format("Joy{0} Axis 6", (int)player); break; default: return(0f); } #endif break; case "OUYA GAME CONTROLLER": #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; default: return(0f); } #else switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); invert = true; break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 4", (int)player); invert = true; break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 9", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 10", (int)player); break; default: return(0f); } #endif break; case "XBOX 360 WIRELESS RECEIVER": #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; default: return(0f); } #else if (Application.platform == RuntimePlatform.OSXEditor) { switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; default: return(0f); } } else { switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 9", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 10", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: axisName = string.Format("Joy{0} Axis 7", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: axisName = string.Format("Joy{0} Axis 7", (int)player); break; default: return(0f); } } #endif break; case "CONTROLLER (AFTERGLOW GAMEPAD FOR XBOX 360)": case "CONTROLLER (ROCK CANDY GAMEPAD FOR XBOX 360)": case "CONTROLLER (XBOX 360 WIRELESS RECEIVER FOR WINDOWS)": case "MICROSOFT X-BOX 360 PAD": case "CONTROLLER (XBOX 360 FOR WINDOWS)": case "CONTROLLER (XBOX360 GAMEPAD)": case "XBOX 360 FOR WINDOWS (CONTROLLER)": case "MICROSOFT WIRELESS 360 CONTROLLER": #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 7", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 8", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: axisName = string.Format("Joy{0} Axis 6", (int)player); break; default: return(0f); } #else if (Application.platform == RuntimePlatform.OSXEditor) { switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; default: return(0f); } } else { switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 9", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 10", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: axisName = string.Format("Joy{0} Axis 7", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: axisName = string.Format("Joy{0} Axis 7", (int)player); break; default: return(0f); } } #endif break; case "": //the driver is reporting the controller as blank #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); invert = true; break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); invert = true; break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 7", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 8", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: axisName = string.Format("Joy{0} Axis 6", (int)player); break; default: return(0f); } #else switch (keyCode) { case OuyaSDK.KeyEnum.AXIS_LSTICK_X: axisName = string.Format("Joy{0} Axis 1", (int)player); break; case OuyaSDK.KeyEnum.AXIS_LSTICK_Y: axisName = string.Format("Joy{0} Axis 2", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_X: axisName = string.Format("Joy{0} Axis 3", (int)player); break; case OuyaSDK.KeyEnum.AXIS_RSTICK_Y: axisName = string.Format("Joy{0} Axis 4", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_LT: axisName = string.Format("Joy{0} Axis 5", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_RT: axisName = string.Format("Joy{0} Axis 6", (int)player); break; case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: if (GetButton(7, player)) { return(-1); } else { return(0); } case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: if (GetButton(8, player)) { return(1); } else { return(0); } case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: if (GetButton(5, player)) { return(1); } else { return(0); } case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: if (GetButton(6, player)) { return(-1); } else { return(0); } default: return(0f); } #endif break; } if (string.IsNullOrEmpty(axisName)) { return(0f); } if (invert) { return(-Input.GetAxisRaw(axisName)); } else { return(Input.GetAxisRaw(axisName)); } }
public static bool GetButton(OuyaSDK.KeyEnum keyCode, OuyaSDK.OuyaPlayer player) { if (null == OuyaExampleCommon.Joysticks) { return(false); } int playerIndex = (int)player - 1; if (playerIndex >= OuyaExampleCommon.Joysticks.Length) { return(false); } string joystickName = OuyaExampleCommon.Joysticks[playerIndex]; if (null == joystickName) { return(false); } switch (joystickName.ToUpper()) { case "HARMONIX ROCK BAND DRUMKIT": switch (keyCode) { case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_GREEN: case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_A: case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_RED: case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_B: case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_YELLOW: case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_Y: case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(4, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_BLUE: case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_X: case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(3, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_DRUMKIT_ORANGE: case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_BACK: case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(10, player)); case OuyaSDK.KeyEnum.BUTTON_START: case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(11, player)); case OuyaSDK.KeyEnum.BUTTON_SYSTEM: case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(12, player)); default: return(false); } case "HARMONIX ROCK BAND GUITAR": switch (keyCode) { case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_GREEN: case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_RED: case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_YELLOW: case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(4, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_BLUE: case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(3, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_ORANGE: case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(6, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_LOWER: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_BACK: case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(10, player)); case OuyaSDK.KeyEnum.BUTTON_START: case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(11, player)); case OuyaSDK.KeyEnum.BUTTON_SYSTEM: case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(12, player)); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_PICKUP: case OuyaSDK.KeyEnum.BUTTON_LT: return(false); case OuyaSDK.KeyEnum.HARMONIX_ROCK_BAND_GUITAR_WHAMMI: case OuyaSDK.KeyEnum.BUTTON_RT: return(false); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis(keyCode, player) < 0f); default: return(false); } case "BROADCOM BLUETOOTH HID": case "MOGA PRO HID": switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(4, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(14, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > 0f); default: return(false); } case "OUYA GAME CONTROLLER": switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(4, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(5, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(2, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(8, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(9, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(10, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(11, player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetButton(12, player)); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetButton(13, player)); default: return(false); } case "XBOX 360 WIRELESS RECEIVER": #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(4, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(14, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(2, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > 0f); default: return(false); } #else if (Application.platform == RuntimePlatform.OSXEditor) { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(14, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(16, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(18, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(19, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(17, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(11, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(12, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(5, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(8, player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > -1f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > -1f); default: return(false); } } else { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(4, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(5, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(2, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(8, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(9, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > 0f); default: return(false); } } #endif case "CONTROLLER (AFTERGLOW GAMEPAD FOR XBOX 360)": case "CONTROLLER (ROCK CANDY GAMEPAD FOR XBOX 360)": case "CONTROLLER (XBOX 360 WIRELESS RECEIVER FOR WINDOWS)": case "MICROSOFT X-BOX 360 PAD": case "CONTROLLER (XBOX 360 FOR WINDOWS)": case "CONTROLLER (XBOX360 GAMEPAD)": case "XBOX 360 FOR WINDOWS (CONTROLLER)": case "MICROSOFT WIRELESS 360 CONTROLLER": #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(4, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(14, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > 0f); default: return(false); } #else if (Application.platform == RuntimePlatform.OSXEditor) { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(14, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(16, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(18, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(19, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(17, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(11, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(12, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(5, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(8, player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > -1f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > -1f); default: return(false); } } else { switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(4, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(5, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(2, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(8, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(9, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > 0f); default: return(false); } } #endif case "": //the driver is reporting the controller as blank #if !UNITY_EDITOR && UNITY_ANDROID switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(0, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(3, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(4, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(1, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(14, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetAxis(keyCode, player) < 0f); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > 0f); default: return(false); } #else switch (keyCode) { case OuyaSDK.KeyEnum.BUTTON_LB: return(GetButton(13, player)); case OuyaSDK.KeyEnum.BUTTON_RB: return(GetButton(14, player)); case OuyaSDK.KeyEnum.BUTTON_O: return(GetButton(16, player)); case OuyaSDK.KeyEnum.BUTTON_U: return(GetButton(18, player)); case OuyaSDK.KeyEnum.BUTTON_Y: return(GetButton(19, player)); case OuyaSDK.KeyEnum.BUTTON_A: return(GetButton(17, player)); case OuyaSDK.KeyEnum.BUTTON_L3: return(GetButton(11, player)); case OuyaSDK.KeyEnum.BUTTON_R3: return(GetButton(12, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_UP: return(GetButton(5, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_DOWN: return(GetButton(6, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_LEFT: return(GetButton(7, player)); case OuyaSDK.KeyEnum.BUTTON_DPAD_RIGHT: return(GetButton(8, player)); case OuyaSDK.KeyEnum.BUTTON_LT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_RT: return(GetAxis(keyCode, player) > 0f); case OuyaSDK.KeyEnum.BUTTON_SELECT: return(GetButton(10, player)); case OuyaSDK.KeyEnum.BUTTON_START: return(GetButton(9, player)); case OuyaSDK.KeyEnum.BUTTON_SYSTEM: return(GetButton(15, player)); default: return(false); } #endif } return(false); }
public bool HasAxis(OuyaSDK.KeyEnum keyCode) { OuyaSDK.KeyEnum[] axises = GetSupportedAxises(); return(HasKeyCode(axises, keyCode)); }