using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; public class UI_ButtonCursorChanger : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler { [Header("¹Ù²Ü Ä¿¼­ ÅØ½ºÃ³")] public Texture2D cursorTexture; [Header("Ä¿¼­ ÇÖ½ºÆÌ (Á᫐ À§Ä¡)")] public Vector2 hotspot = Vector2.zero; private bool isCursorChanged = false; private void OnDisable() { if (isCursorChanged) { Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto); isCursorChanged = false; } } // ¸¶¿ì½º°¡ ¹öư À§·Î ¿Ã¶ó°¬À» ¶§ public void OnPointerEnter(PointerEventData eventData) { if (cursorTexture != null && !isCursorChanged) { Cursor.SetCursor(cursorTexture, hotspot/2, CursorMode.Auto); isCursorChanged = true; } } // ¸¶¿ì½º°¡ ¹öưÀ» ¹þ¾î³µÀ» ¶§ public void OnPointerExit(PointerEventData eventData) { if (isCursorChanged) { Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto); isCursorChanged = false; } } }