using System; using System.Collections.Generic; using KernelPanic.Data; using UnityEngine; using UnityEngine.UIElements; namespace KernelPanic.UI { /// /// Renders the main menu's neofetch-style featured unit panel. /// [Serializable] public sealed class FeaturedUnitPanel { private const string EmptyAccent = "5cff91"; private const string EmptyAscii = " _\n | |\n ___| |__\n / __| '_ \\\n \\__ \\ | | |\n |___/_| |_|"; private VisualElement panel; private Label titleLabel; private Label asciiLabel; private Label unitNameLabel; private Label languagesLabel; private Label passiveLabel; private Label bestWaveLabel; private Label emptyTitleLabel; private Label emptyHintLabel; private VisualElement populatedState; private VisualElement emptyState; private IReadOnlyList units = Array.Empty(); private int selectedIndex; public void Bind(VisualElement root) { panel = root.Q("FeaturedUnitPanel"); titleLabel = root.Q