using System; using UnityEngine; using UnityEngine.EventSystems; namespace UVC.UI.Common { public class InteractiveUI : MonoBehaviour, IPointerClickHandler, IPointerEnterHandler, IPointerExitHandler { public Action OnPointerClickHandler; public Action OnPointerEnterHandler; public Action OnPointerExitHandler; /// /// 포인터로 이 객체를 클릭했을 때 호출됩니다. /// /// 클릭 이벤트와 관련된 데이터입니다. public virtual void OnPointerClick(PointerEventData eventData) { OnPointerClickHandler?.Invoke(eventData); } /// /// 포인터가 이 객체 위로 들어왔을 때 호출됩니다. 하이라이트 효과 등에 사용할 수 있습니다. /// /// 포인터 이벤트와 관련된 데이터입니다. public virtual void OnPointerEnter(PointerEventData eventData) { OnPointerEnterHandler?.Invoke(eventData); } /// /// 포인터가 이 객체에서 벗어났을 때 호출됩니다. /// /// 포인터 이벤트와 관련된 데이터입니다. public virtual void OnPointerExit(PointerEventData eventData) { OnPointerExitHandler?.Invoke(eventData); } } }