static KeyCode ButtonToJoystickKeycode(HPButtonType button) { return ((KeyCode)Enum.Parse( typeof(KeyCode), "Joystick" + joystickNumber + "Button" + (int)button )); }
static bool CheckButton(Func <KeyCode, bool> buttonFunc, HPButtonType button) { bool buttonPress = buttonFunc(ButtonToNumberOnKeyboard(button)); if (joystickNumber < 0) { ScanForHoloPlayerJoystick(); } if (joystickNumber >= 0) { buttonPress = buttonPress || buttonFunc(ButtonToJoystickKeycode(button)); } return(buttonPress); }
void OnGUI() { GUI.skin.box.fontSize = 50; var buttons = new HPButtonType[] { HPButtonType.ONE, HPButtonType.TWO, HPButtonType.THREE, HPButtonType.FOUR, HPButtonType.HOME }; foreach (var b in buttons) { if (HPButton.GetButton(b)) { GUILayout.Box("HP Button " + b.ToString()); } } }
static KeyCode ButtonToNumberOnKeyboard(HPButtonType button) { switch (button) { case HPButtonType.ONE: return(KeyCode.Alpha1); case HPButtonType.TWO: return(KeyCode.Alpha2); case HPButtonType.THREE: return(KeyCode.Alpha3); case HPButtonType.FOUR: return(KeyCode.Alpha4); case HPButtonType.HOME: return(KeyCode.Alpha5); default: return(KeyCode.Alpha5); } }
public static bool GetButtonUp(HPButtonType button) { return(CheckButton((x) => UnityEngine.Input.GetKeyUp(x), button)); }