Пример #1
0
        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;
        }
Пример #2
0
        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;
        }
Пример #3
0
        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);
        }
Пример #4
0
        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);
            }
        }
Пример #5
0
        public void SetMouseDriver(IGamepadDriver mouseDriver)
        {
            MouseDriver?.Dispose();

            MouseDriver = mouseDriver;
        }
Пример #6
0
 public InputManager(IGamepadDriver keyboardDriver, IGamepadDriver gamepadDriver)
 {
     KeyboardDriver = keyboardDriver;
     GamepadDriver  = gamepadDriver;
 }