//////////////////////////////////////////////////////////////////////////////// // // Copyright (C) 2007-2020 , Inc. All Rights Reserved. // //////////////////////////////////////////////////////////////////////////////// using UnityEngine; using UnityEngine.EventSystems; namespace GCSeries.Core.Samples { public class HighlightOnHover : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler { //////////////////////////////////////////////////////////////////////// // Inspector Fields //////////////////////////////////////////////////////////////////////// /// /// The color to set an object's material to when hovered. /// [Tooltip("The color to set an object's material to when hovered.")] public Color HighlightColor; //////////////////////////////////////////////////////////////////////// // MonoBehaviour Callbacks //////////////////////////////////////////////////////////////////////// void Start() { this._mat = this.gameObject.GetComponent().material; this._oldColor = this._mat.GetColor("_Color"); } //////////////////////////////////////////////////////////////////////// // Public Methods //////////////////////////////////////////////////////////////////////// public void OnPointerEnter(PointerEventData evtData) { this._mat.SetColor("_Color", HighlightColor); } public void OnPointerExit(PointerEventData evtData) { this._mat.SetColor("_Color", _oldColor); } //////////////////////////////////////////////////////////////////////// // Private Members //////////////////////////////////////////////////////////////////////// private Color _oldColor; private Material _mat; } }