private void HighlightObject(object sender, InteractableObjectEventArgs e) { if (_gameObject == null) { return; } TMHighlightEffect highlighter = _highlightOverriderGameObject ? _highlightOverriderGameObject.GetComponent <TMHighlightEffect>() : _gameObject.GetComponent <TMHighlightEffect>(); if (highlighter != null) { if (_lastHighlightedInputController != null) { _lastHighlightedInputController.UnHighlightObject(this, e); } highlighter.SetHighlightEnabled(true); _lastHighlightedInputController = this; } }
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; } } } }