public NpadManager(IGamepadDriver keyboardDriver, IGamepadDriver gamepadDriver) { _controllers = new NpadController[MaxControllers]; _cemuHookClient = new CemuHookClient(); _keyboardDriver = keyboardDriver; _gamepadDriver = gamepadDriver; _inputConfig = ConfigurationState.Instance.Hid.InputConfig.Value; _gamepadDriver.OnGamepadConnected += HandleOnGamepadConnected; _gamepadDriver.OnGamepadDisconnected += HandleOnGamepadDisconnected; }
public NpadManager(IGamepadDriver keyboardDriver, IGamepadDriver gamepadDriver) { _controllers = new NpadController[MaxControllers]; _cemuHookClient = new CemuHookClient(this); _keyboardDriver = keyboardDriver; _gamepadDriver = gamepadDriver; _inputConfig = new List <InputConfig>(); _enableKeyboard = false; _gamepadDriver.OnGamepadConnected += HandleOnGamepadConnected; _gamepadDriver.OnGamepadDisconnected += HandleOnGamepadDisconnected; }
public bool UpdateDriverConfiguration(IGamepadDriver gamepadDriver, InputConfig config) { GamepadDriver = gamepadDriver; _gamepad?.Dispose(); _id = config.Id; _gamepad = GamepadDriver.GetGamepad(_id); _isValid = _gamepad != null; UpdateUserConfiguration(config); return(_isValid); }
private bool DriverConfigurationUpdate(ref NpadController controller, InputConfig config) { IGamepadDriver targetDriver = _gamepadDriver; if (config is StandardControllerInputConfig) { targetDriver = _gamepadDriver; } else if (config is StandardKeyboardInputConfig) { targetDriver = _keyboardDriver; } Debug.Assert(targetDriver != null, "Unknown input configuration!"); if (controller.GamepadDriver != targetDriver || controller.Id != config.Id) { return(controller.UpdateDriverConfiguration(targetDriver, config)); } else { return(controller.GamepadDriver != null); } }
public void SetMouseDriver(IGamepadDriver mouseDriver) { MouseDriver?.Dispose(); MouseDriver = mouseDriver; }
public InputManager(IGamepadDriver keyboardDriver, IGamepadDriver gamepadDriver) { KeyboardDriver = keyboardDriver; GamepadDriver = gamepadDriver; }