using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; using TMPro; using UnityEditor.SearchService; public class SkillTreeItemDisplay : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, IPointerClickHandler { [SerializeField] SkillTreeItem _data; public SkillTreeItem Data { get => _data; set => _data = value; } public SkillTreeInfoDisplay _displayInfo; private RectTransform _rectTransform; public SkillTreePopUpManager _popUpManager; public GameObject _popUpConf; private Vector2 size; public List RelatedLines { get; } = new(); private void Start() { _rectTransform = GetComponent(); size = _rectTransform.sizeDelta; _displayInfo = FindAnyObjectByType(); _popUpManager = _popUpConf.GetComponent(); _popUpConf.SetActive(false); } public void OnPointerExit(PointerEventData eventData) { RelatedLines.ForEach(line => line.Deselect()); _rectTransform.sizeDelta = size; _displayInfo.RemoveData(); } public void OnPointerEnter(PointerEventData eventData) { RelatedLines.ForEach(line => line.Select()); _rectTransform.sizeDelta = size * 1.05f; _displayInfo.DisplayData(_data); } public void OnPointerClick(PointerEventData eventData) { if (PlayerPrefs.GetInt("skill " + _data.SkillID) != 0) { Debug.Log("Tu as déjà ce skill"); } else { _popUpConf.SetActive(true); _popUpManager.PressedSkill(_data); Debug.Log("Clicked!"); } } }