2023-07-24 16:38:13 +03:00
|
|
|
|
using System.Collections;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using UnityEngine;
|
2023-10-02 19:12:35 +03:00
|
|
|
|
using UnityEngine.UI;
|
2023-07-24 16:38:13 +03:00
|
|
|
|
|
|
|
|
|
public class LeaderboardEntry : MonoBehaviour
|
|
|
|
|
{
|
|
|
|
|
[SerializeField]
|
|
|
|
|
private TMPro.TextMeshProUGUI _numText;
|
|
|
|
|
[SerializeField]
|
|
|
|
|
private TMPro.TextMeshProUGUI _nameText;
|
|
|
|
|
[SerializeField]
|
|
|
|
|
private TMPro.TextMeshProUGUI _scoreText;
|
2023-10-02 19:12:35 +03:00
|
|
|
|
[SerializeField]
|
2023-10-12 15:05:48 +03:00
|
|
|
|
private Image _lable;
|
|
|
|
|
[SerializeField]
|
|
|
|
|
private Image _selectBackground;
|
|
|
|
|
[SerializeField]
|
|
|
|
|
private Sprite _goldLable;
|
2023-07-24 16:38:13 +03:00
|
|
|
|
|
2023-10-11 11:58:06 +03:00
|
|
|
|
public int MaxIndex = 29;
|
|
|
|
|
|
2023-07-24 16:38:13 +03:00
|
|
|
|
[SerializeField]
|
|
|
|
|
private List<GameObject> _medals = new List<GameObject>();
|
|
|
|
|
|
2023-08-22 15:41:12 +03:00
|
|
|
|
public void Init(Player player, int index, bool selected = false)
|
2023-07-24 16:38:13 +03:00
|
|
|
|
{
|
|
|
|
|
if (index < 3)
|
|
|
|
|
{
|
|
|
|
|
_medals[index].SetActive(true);
|
2023-10-12 15:05:48 +03:00
|
|
|
|
_lable.sprite = _goldLable;
|
2023-07-24 16:38:13 +03:00
|
|
|
|
}
|
|
|
|
|
|
2023-10-11 11:58:06 +03:00
|
|
|
|
if (index <= MaxIndex)
|
|
|
|
|
_numText.SetText($"{index + 1}");
|
|
|
|
|
else
|
|
|
|
|
_numText.SetText($"-");
|
|
|
|
|
|
2023-07-24 16:38:13 +03:00
|
|
|
|
_scoreText.SetText($"{player.Score}");
|
2023-08-22 15:41:12 +03:00
|
|
|
|
|
|
|
|
|
if (selected)
|
|
|
|
|
{
|
2023-10-02 19:12:35 +03:00
|
|
|
|
_nameText.SetText("<22><>");
|
2023-10-12 15:05:48 +03:00
|
|
|
|
_selectBackground.gameObject.SetActive(true);
|
2023-08-22 15:41:12 +03:00
|
|
|
|
}
|
2023-10-11 11:58:06 +03:00
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
_nameText.SetText(player.Name);
|
|
|
|
|
}
|
2023-07-24 16:38:13 +03:00
|
|
|
|
}
|
|
|
|
|
}
|