예제 #1
0
    public void InitOpenRanking(SendRankRes res)
    {
        _myRankingVo = new MyRankingVO(res.MyRank, res.MyRating, res);

        _rankings = new List <RankingVO>();

        foreach (var t in res.Infos)
        {
            RankingVO vo = new RankingVO(t);
            _rankings.Add(vo);
        }
    }
예제 #2
0
    public void SetData(List <RankingVO> list, MyRankingVO vo, int maxIndex)
    {
        Reset();

        _maxIndex = maxIndex;

        transform.GetText("Bg/SongImage/SongNameBg/Text").text = vo.MusicName;
        transform.GetRawImage("Bg/SongImage").texture          = ResourceManager.Load <Texture>(vo.MusicCoverPath);

        _playerInfo.GetRawImage("HeadIcon/Head").texture  = ResourceManager.Load <Texture>(vo.IconPath);
        _playerInfo.GetRawImage("HeadIcon/Frame").texture = ResourceManager.Load <Texture>(vo.FramePath);
        _playerInfo.GetText("Name").text = vo.Name;

        if (vo.IsPlay)
        {
            _playerInfo.GetText("Grade").text = vo.MyRating + "";
            _playerInfo.GetText("Score").text = vo.Score + "分";
        }
        else
        {
            _playerInfo.GetText("Grade").text = "";
            _playerInfo.GetText("Score").text = "";
        }

        var text = _playerInfo.GetText("HeadIcon/Rank");

        text.text = vo.IsRank ? vo.MyRank.ToString() : "未上榜";

        int len = 3;

        if (list.Count < 3)
        {
            len = list.Count;
        }


        for (int i = 1; i <= len; i++)
        {
            RankingVO rankingVo = list[i - 1];
            Transform child     = _rankContainer.GetChild(i);
            child.GetRawImage("HeadIcon/Head").texture  = ResourceManager.Load <Texture>(rankingVo.IconPath);
            child.GetRawImage("HeadIcon/Frame").texture = ResourceManager.Load <Texture>(rankingVo.FramePath);
            child.GetText("Name/Text").text             = rankingVo.UserName;
            child.GetText("Rank/Text").text             = rankingVo.Score + "分";
        }

        if (list.Count < 4)
        {
            return;
        }

        GameObject prefab = GetPrefab("TrainingRoom/Prefabs/Rank/PlayerRankItem");

        for (int i = 3; i < list.Count; i++)
        {
            RankingVO  rankingVo = list[i];
            GameObject go        = Instantiate(prefab, _parent, false);
            go.transform.GetText("Rank").text        = rankingVo.Ranking.ToString();
            go.transform.GetText("Name").text        = rankingVo.UserName;
            go.transform.GetText("Image/Score").text = rankingVo.Score.ToString();
            go.transform.GetText("Image/Grade").text = rankingVo.RatingStr;
        }
    }
예제 #3
0
 public void SetData(RankingVO vo)
 {
     _rankingNum.text = vo.RatingStr;
     _playerName.text = vo.UserName;
     _score.text      = vo.Score.ToString();
 }