using System.Collections.Generic; using System.Globalization; using System.Linq; using Sirenix.Utilities; using UnityEngine; using UnityEngine.UIElements; using VOID.Generic.Dict; using VOID.Generic.Objects.Usable; using VOID.UserInterface.Game.Util; namespace VOID.UserInterface.Game.Tooltip { public class UsableTooltipUI : ITooltip { // VisualElement - Container private readonly VisualElement _templateElement; // VisualElements - Sections private readonly VisualElement _titleSection; private readonly VisualElement _detailsSection; private readonly VisualElement _descriptionSection; private readonly VisualElement _footSection; // VisualElements - Data private readonly SlotUI _usableIcon = new(); private readonly List _details = new(); private readonly Label _usableName; private readonly Label _usableQuality; private readonly Label _usableDescription; private readonly Label _usableValue; private readonly Label _usableWeight; public UsableTooltipUI(VisualElement templateElement) { // Tooltip for this type _templateElement = templateElement.Q(null, "tooltip"); // Sections _titleSection = templateElement.Q("title-section"); _detailsSection = templateElement.Q("details-section"); _descriptionSection = templateElement.Q("description-section"); _footSection = templateElement.Q("foot-section"); // Elements _usableIcon.Init(templateElement.Q("usable-icon"), SlotType.None, -1); _usableName = templateElement.Q