93 lines
2.1 KiB
C#
93 lines
2.1 KiB
C#
![]() |
// ***********************************************************************
|
|||
|
// Assembly : Game
|
|||
|
// Author : Kimch
|
|||
|
// Created : 2021-01-03
|
|||
|
// Description :
|
|||
|
// Last Modified By :
|
|||
|
// Last Modified On :
|
|||
|
// ***********************************************************************
|
|||
|
// <copyright file= "RankingWidget" company="Kunpo"></copyright>
|
|||
|
// <summary></summary>
|
|||
|
// ***********************************************************************
|
|||
|
|
|||
|
using TMPro;
|
|||
|
using UnityEngine.UI;
|
|||
|
|
|||
|
namespace G.UI
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
public class RankingWidget : KUIWidget
|
|||
|
{
|
|||
|
#region Field
|
|||
|
|
|||
|
#pragma warning disable CS0649 // 从未对字段赋值,字段将一直保持其默认值 null
|
|||
|
[KUIFlag]
|
|||
|
KUIImage _imgRanking;
|
|||
|
[KUIFlag]
|
|||
|
TextMeshProUGUI _tmpRanking;
|
|||
|
[KUIFlag]
|
|||
|
TextMeshProUGUI _tmpValue;
|
|||
|
[KUIFlag]
|
|||
|
Image _imgHead;
|
|||
|
[KUIFlag]
|
|||
|
TextMeshProUGUI _tmpName;
|
|||
|
[KUIFlag]
|
|||
|
TextMeshProUGUI _tmpTitle;
|
|||
|
#pragma warning restore CS0649 // 从未对字段赋值,字段将一直保持其默认值 null
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Method
|
|||
|
|
|||
|
public override void Refresh()
|
|||
|
{
|
|||
|
if (this.data is RankingProxy.RankingInfo rankingInfo)
|
|||
|
{
|
|||
|
if (rankingInfo.ranking <= 3)
|
|||
|
{
|
|||
|
_tmpRanking.gameObject.SetActive(false);
|
|||
|
_imgRanking.gameObject.SetActive(true);
|
|||
|
_imgRanking.ShowSprite(rankingInfo.ranking - 1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
_imgRanking.gameObject.SetActive(false);
|
|||
|
_tmpRanking.gameObject.SetActive(true);
|
|||
|
if (rankingInfo.ranking < 100)
|
|||
|
_tmpRanking.text = rankingInfo.ranking.ToString();
|
|||
|
else
|
|||
|
_tmpRanking.text = "100+";
|
|||
|
}
|
|||
|
_tmpValue.text = rankingInfo.value.ToString();
|
|||
|
_tmpName.text = rankingInfo.name;
|
|||
|
_tmpTitle.text = rankingInfo.signature;
|
|||
|
|
|||
|
if (int.TryParse(rankingInfo.avatar, out var avatarId))
|
|||
|
{
|
|||
|
var chaAvatar = ItemProxy.Instance.GetStaticItem<ItemChaAvatar>(avatarId);
|
|||
|
if (chaAvatar != null)
|
|||
|
IconProxy.Instance.SetSprite(_imgHead, chaAvatar.icon);
|
|||
|
}
|
|||
|
else
|
|||
|
_imgHead.overrideSprite = null;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Unity
|
|||
|
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
private void Awake()
|
|||
|
{
|
|||
|
SetViewData();
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
}
|
|||
|
}
|