using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.InputSystem; public class Cursor : MonoBehaviour { [SerializeField] private Texture2D cursorTexture; [SerializeField] private float disableDistance = 20f; private Vector2 hotSpot = Vector2.zero; // Update is called once per frame private void Update() { Vector2 mousePos = Camera.main.ScreenToWorldPoint(Mouse.current.position.ReadValue()); float distance = Vector2.Distance(mousePos, gameObject.transform.position); if (distance > disableDistance) SetCursor(cursorTexture, hotSpot); else SetCursor(null, hotSpot); } private void SetCursor(Texture2D cursorTexture, Vector2 hotSpot) { if(Application.platform == RuntimePlatform.WebGLPlayer) UnityEngine.Cursor.SetCursor(cursorTexture, hotSpot, CursorMode.ForceSoftware); else UnityEngine.Cursor.SetCursor(cursorTexture, hotSpot, CursorMode.Auto); } }