using UnityEngine; using UnityEngine.EventSystems; namespace Michsky.UI.MTP { [RequireComponent(typeof(Animator))] public class DemoWindowButton : MonoBehaviour, IPointerEnterHandler, IEventSystemHandler, IPointerExitHandler { public bool enableMobileMode; [HideInInspector] public Animator buttonAnimator; private void OnEnable() { if (buttonAnimator == null) { buttonAnimator = base.gameObject.GetComponent(); } } public void OnPointerEnter(PointerEventData eventData) { if (!enableMobileMode && !buttonAnimator.GetCurrentAnimatorStateInfo(0).IsName("Hover to Pressed") && !buttonAnimator.GetCurrentAnimatorStateInfo(0).IsName("Normal to Pressed")) { buttonAnimator.Play("Normal to Hover"); } } public void OnPointerExit(PointerEventData eventData) { if (!enableMobileMode && !buttonAnimator.GetCurrentAnimatorStateInfo(0).IsName("Hover to Pressed") && !buttonAnimator.GetCurrentAnimatorStateInfo(0).IsName("Normal to Pressed")) { buttonAnimator.Play("Hover to Normal"); } } } }