using UnityEngine; using Unity.Collections; using Unity.MegaCity.Gameplay; using UnityEngine.UIElements; using UnityEngine.UIElements.Experimental; namespace Unity.MegaCity.UI { /// /// Leaderboard UI element /// public class UILeaderboard : MonoBehaviour { struct ScoreData { public float Value; public string Name; public bool IsOwnerPlayer; public bool HasData; } private enum VisibleMode { Full = 0, Collapse = 1 }; [SerializeField] private int m_MaxList = 10; [SerializeField] private VisualTreeAsset m_LeaderboardItem; private VisualElement[] m_Items; private VisualElement m_Leaderboard; private VisualElement m_BackIcon; private Button m_BackButton; private ScoreData [] data; private VisibleMode m_VisibleMode = VisibleMode.Full; private int m_LastListSize = 0; private void Start() { var root = GetComponent().rootVisualElement; m_Leaderboard = root.Q("leaderboard"); m_BackButton = root.Q