44 lines
1023 B
C#
44 lines
1023 B
C#
using System.Collections;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class TrackSkillPrefab : MonoBehaviour
|
|
{
|
|
[Header("UI")]
|
|
public Text skillText;
|
|
public Image skillImage;
|
|
|
|
private CanvasGroup _canvasGroup;
|
|
|
|
private void Awake()
|
|
{
|
|
_canvasGroup = GetComponent<CanvasGroup>();
|
|
if (_canvasGroup == null) _canvasGroup = gameObject.AddComponent<CanvasGroup>();
|
|
_canvasGroup.alpha = 0f;
|
|
}
|
|
|
|
public void Bind(Sprite icon, string skillName)
|
|
{
|
|
ResetForReuse();
|
|
|
|
if (skillImage != null)
|
|
{
|
|
skillImage.sprite = icon;
|
|
skillImage.enabled = icon != null;
|
|
}
|
|
|
|
if (skillText != null)
|
|
{
|
|
skillText.text = string.IsNullOrWhiteSpace(skillName) ? string.Empty : skillName;
|
|
}
|
|
|
|
}
|
|
|
|
private void ResetForReuse()
|
|
{
|
|
if (_canvasGroup != null) _canvasGroup.alpha = 0f;
|
|
transform.localRotation = Quaternion.identity;
|
|
transform.localScale = Vector3.one;
|
|
}
|
|
}
|