using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; public class chooseSkillPrefab : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler { public Image this_skillProfile; public Text this_skillName; public Button this_skillDesButton; public GameObject sskilldetialPrefab; public Vector2 detailPrefabOffset = new Vector2(20f, 0f); public float hoverDetailDelay = 0.25f; private int boundSkillGroupId; private string boundDescription; private Sprite boundIcon; private string boundName; private GameObject spawnedDetail; private Coroutine hoverDetailCoroutine; private bool detailPinnedByButton; private int detailOpenedFrame = -1; public void Bind(int skillGroupId, string skillName, Sprite skillIcon, string skillDescription, System.Action onSelected) { boundSkillGroupId = skillGroupId; boundName = skillName ?? string.Empty; boundIcon = skillIcon; boundDescription = skillDescription ?? string.Empty; if (this_skillName != null) { this_skillName.text = boundName; } if (this_skillProfile != null) { this_skillProfile.sprite = boundIcon; this_skillProfile.enabled = boundIcon != null; } Button rootButton = GetComponent