Example #1
0
        private void UnHighlightObject(object sender, InteractableObjectEventArgs e)
        {
            if (_gameObject == null)
            {
                return;
            }
            TMHighlightEffect highlighter = _highlightOverriderGameObject ? _highlightOverriderGameObject.GetComponent <TMHighlightEffect>()  :  _gameObject.GetComponent <TMHighlightEffect>();

            if (highlighter != null)
            {
                highlighter.SetHighlightEnabled(false);

                if (_lastHighlightedInputController == this)
                {
                    _lastHighlightedInputController = null;
                }
                else
                {
                    _nextToHighlightInputController = this;
                }

                if (_nextToHighlightInputController != null)
                {
                    if (_nextToHighlightInputController != this)
                    {
                        _nextToHighlightInputController.HighlightObject(this, e);
                    }

                    _nextToHighlightInputController = null;
                }

                if (sender != null)
                {
                    if (sender.GetType() == typeof(InputController))
                    {
                        _nextToHighlightInputController = this;
                    }
                }
            }
        }