Beispiel #1
0
 /// <summary>
 /// Fills allowed connected devices list with all the connected controllers matching
 /// types set in _devicesAllowed.
 /// </summary>
 private void GetAllowedInput()
 {
     for (int i = 0; i < 2; ++i)
     {
         MLInputController controller = MLInput.GetController(i);
         if (IsDeviceAllowed(controller) && !_allowedConnectedDevices.Exists((device) => device.Id == controller.Id))
         {
             _allowedConnectedDevices.Add(controller);
         }
     }
 }
 /// <summary>
 /// Gets the first input device that's connected and allowed
 /// </summary>
 /// <returns>The first connected allowed device if any, null otherwise</returns>
 private MLInputController GetAllowedInput()
 {
     for (int i = 0; i < 2; ++i)
     {
         MLInputController controller = MLInput.GetController(i);
         if (IsDeviceAllowed(controller))
         {
             return(controller);
         }
     }
     return(null);
 }
Beispiel #3
0
        /// <summary>
        /// Fills allowed connected devices list with all the connected controllers matching
        /// types set in _devicesAllowed.
        /// </summary>
        private void GetAllowedInput()
        {
            _allowedConnectedDevices.Clear();

            #if PLATFORM_LUMIN
            for (int i = 0; i < 2; ++i)
            {
                MLInput.Controller controller = MLInput.GetController(i);
                if (IsDeviceAllowed(controller) && !_allowedConnectedDevices.Exists((device) => device.Id == controller.Id))
                {
                    _allowedConnectedDevices.Add(controller);
                }
            }
            #endif
        }
        /// <summary>
        /// Adds the connected controller if not yet added.
        /// </summary>
        /// <param name="controllerId">The id of the controller.</param>
        private void AddController(byte controllerId)
        {
            MLInputController newController = MLInput.GetController(controllerId);

            if (_controllers.Exists((device) => device.Id == controllerId))
            {
                Debug.LogWarning(string.Format("Connected controller with id {0} already connected.", controllerId));
                return;
            }

            if (newController.Connected)
            {
                _controllers.Add(newController);
            }
        }
Beispiel #5
0
        /// <summary>
        /// Handles the event when a controller connects. If the connected controller
        /// is valid, we add it to the _allowedConnectedDevices list.
        /// </summary>
        /// <param name="controllerId">The id of the controller.</param>
        private void HandleOnControllerConnected(byte controllerId)
        {
            MLInputController newController = MLInput.GetController(controllerId);

            if (IsDeviceAllowed(newController))
            {
                if (_allowedConnectedDevices.Exists((device) => device.Id == controllerId))
                {
                    Debug.LogWarning(string.Format("Connected controller with id {0} already connected.", controllerId));
                    return;
                }

                _allowedConnectedDevices.Add(newController);
            }
        }
        /// <summary>
        /// Handles the event when a controller connects. If the current controller
        /// is not valid, this will check if the new controller is allowed and uses
        /// it if so. Otherwise, no change will happen.
        /// </summary>
        /// <param name="controllerId">The id of the controller.</param>
        private void HandleOnControllerConnected(byte controllerId)
        {
            if (!IsControllerValid())
            {
                MLInputController newController = MLInput.GetController(controllerId);
                if (IsDeviceAllowed(newController))
                {
                    ConnectedController = newController;
                }

                if (OnControllerConnected != null)
                {
                    OnControllerConnected(ConnectedController);
                }
            }
        }
Beispiel #7
0
        /// <summary>
        /// Handles the event when a controller connects. If the connected controller
        /// is valid, we add it to the _allowedConnectedDevices list.
        /// </summary>
        /// <param name="controllerId">The id of the controller.</param>
        private void HandleOnControllerConnected(byte controllerId)
        {
            #if PLATFORM_LUMIN
            MLInput.Controller newController = MLInput.GetController(controllerId);
            if (IsDeviceAllowed(newController))
            {
                if (_allowedConnectedDevices.Exists((device) => device.Id == controllerId))
                {
                    Debug.LogWarning(string.Format("Connected controller with id {0} already connected.", controllerId));
                    return;
                }

                _allowedConnectedDevices.Add(newController);

                // Notify Listeners
                if (OnControllerConnected != null)
                {
                    OnControllerConnected.Invoke(controllerId);
                }
            }
            #endif
        }