Files

50 lines
1.3 KiB
C#
Raw Permalink Normal View History

2026-06-04 21:37:43 +03:00
using OTG.Lab06.Abilities;
using UnityEngine;
using UnityEngine.UI;
namespace OTG.Lab06.UI
{
public sealed class TooltipUI : MonoBehaviour
{
[SerializeField] private Text titleLabel;
[SerializeField] private Text descriptionLabel;
[SerializeField] private Text statsLabel;
private RectTransform rectTransform;
private void Awake()
{
rectTransform = transform as RectTransform;
Hide();
}
public void Show(AbilityData data, RectTransform anchor)
{
if (data == null)
{
return;
}
if (rectTransform == null)
{
rectTransform = transform as RectTransform;
}
titleLabel.text = data.abilityName;
descriptionLabel.text = data.description;
statsLabel.text = $"Damage: {Mathf.RoundToInt(data.damage)}\nMana: {Mathf.RoundToInt(data.manaCost)}\nCooldown: {data.cooldown:0.#}s";
gameObject.SetActive(true);
if (rectTransform != null && anchor != null)
{
rectTransform.position = anchor.position + new Vector3(0f, 142f, 0f);
}
}
public void Hide()
{
gameObject.SetActive(false);
}
}
}