public KeyOrButton(string stringRepresentation) { if (stringRepresentation.Contains(' ') && !stringRepresentation.Contains(", ")) { var split = stringRepresentation.Split(new char[] { ' ' }, 2); Button = new GamepadButton(split[1], split[0]); IsButton = true; } else { Key = (Keys)Enum.Parse(typeof(Keys), stringRepresentation, true); IsKey = true; } }
void GamepadHook_ButtonPressed(object sender, GamepadButton e) { if (AnyGamepadButtonPressed != null) { AnyGamepadButtonPressed(this, e); } if (RegisteredButtons.Contains(e)) { if (ButtonPressed != null) { ButtonPressed(this, e); } if (KeyOrButtonPressed != null) { KeyOrButtonPressed(this, new KeyOrButton(e)); } } }
public KeyOrButton(GamepadButton button) { Button = button; IsButton = true; }
public void RegisterGamepadButton(GamepadButton button) { RegisteredButtons.Add(button); }
void GamepadHook_ButtonPressed(object sender, GamepadButton e) { AnyGamepadButtonPressed?.Invoke(this, e); if (RegisteredButtons.Contains(e)) { ButtonPressed?.Invoke(this, e); KeyOrButtonPressed?.Invoke(this, new KeyOrButton(e)); } }
void GamepadHook_ButtonPressed(object sender, GamepadButton e) { if (AnyGamepadButtonPressed != null) AnyGamepadButtonPressed(this, e); if (RegisteredButtons.Contains(e)) { if (ButtonPressed != null) ButtonPressed(this, e); if (KeyOrButtonPressed != null) KeyOrButtonPressed(this, new KeyOrButton(e)); } }