using System; using System.Collections.Generic; using Code.Infrastructure.UI; using PrimeTween; using TMPro; using UnityEngine; using UnityEngine.UI; namespace Code.Example.Race.UI { public class PlayerScores : UIPanel { [SerializeField] private Image image; [SerializeField] private TMP_Text scoreText; [SerializeField] private Color shownColor; [SerializeField] private Color hiddenColor; public void SetText(List scores) { scoreText.text = ""; foreach (var score in scores) { var t = TimeSpan.FromSeconds(score.raceTimeSeconds); scoreText.text += $@"{score.place} место за {t:mm\:ss\:fff}\n"; } } public override void Open(Action callback = null) { Tween.Color(image,shownColor, 1f); Tween.Color(scoreText,shownColor, 1f).OnComplete( () => callback?.Invoke()); } public override void Close(Action callback = null) { Tween.Color(image,hiddenColor, 1f); Tween.Color(scoreText,hiddenColor, 1f).OnComplete( () => callback?.Invoke()); } } }