少年修仙传客户端代码仓库
hch
4 天以前 600733c8f592cb9e65f2b7a3e110ac1d686e6bfe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Monday, January 28, 2019
//--------------------------------------------------------
 
using System;
using UnityEngine;
using UnityEngine.UI;
using vnxbqy.UI;
using System.Collections.Generic;
 
public class CrossServerQualifyingRaceCell : ILBehaviour
{
    Text timeStr;
    Text name;
    Text desc;
    Image bg;
 
    List<string> raceNameList = new List<string>() {
        "CrossServerQualifying16",
        "CrossServerQualifying16",
        "CrossServerQualifying16",
        "CrossServerQualifying16",
        "CrossServerQualifying17",
        "CrossServerQualifying17",
        "CrossServerQualifying38",
        "CrossServerQualifying38",
        "CrossServerQualifying18",
        "CrossServerQualifying39",
        "CrossServerQualifying40",
        "CrossServerQualifying41",
    };
 
    protected override void Awake()
    {
        timeStr = proxy.GetWidgtEx<Text>("time");
        name = proxy.GetWidgtEx<Text>("name");
        desc = proxy.GetWidgtEx<Text>("desc");
        bg = proxy.GetWidgtEx<Image>("bg");
    }
 
    public void Display(int listIndex)
    {
        int stateValue = CrossServerQualifyingModel.Instance.raceList[listIndex];
        var id = ILChampionshipTimeConfig.GetBattleID(stateValue);
        var config = ILChampionshipTimeConfig.Get(id);
        var index = CrossServerQualifyingModel.Instance.GetOpenTimeIndex();
        var showTime = CrossServerQualifyingModel.Instance.openTimes[index].AddDays(config.StartDay - 1);
        showTime = showTime.AddSeconds(config.StartHour * 60 * 60 + config.StartMinute * 60);
        timeStr.text = StringUtility.Contact(showTime.ToString("yyyy-MM-dd HH:mm"), " -> ",
                        config.EndHour.ToString("D2"), ":", config.EndMinute.ToString("D2"));
 
        name.text = Language.Get(raceNameList[listIndex]);
        bg.SetActiveIL(listIndex % 2 == 0);
 
        int groupMark = stateValue / 10;
        int battleNum = listIndex % 4 + 1;
        //服务端约定 最后一场groupMark == 2比赛下发结果的顺序为 1v2,5v6,3v4,7v8,其他按正常顺序
        if (groupMark == 2)
        {
            if (battleNum == 2)
            {
                battleNum = 3;
            }
            else if (battleNum == 3)
            {
                battleNum = 2;
            }
        }
        if (CrossServerQualifyingModel.Instance.battleInfo.ContainsKey((uint)groupMark))
        {
            if (CrossServerQualifyingModel.Instance.battleInfo[(uint)groupMark].ContainsKey((uint)battleNum))
            {
                var battle = CrossServerQualifyingModel.Instance.battleInfo[(uint)groupMark][(uint)battleNum];
                var playerAName = Language.Get("UnDetermind");
                var playerBName = Language.Get("UnDetermind");
                if (CrossServerQualifyingModel.Instance.fightersInfo.ContainsKey(battle.PlayerIDA))
                {
                    playerAName = CrossServerQualifyingModel.Instance.fightersInfo[battle.PlayerIDA].PlayerName;
                    if (battle.WinPlayerID == battle.PlayerIDA)
                    {
                        playerAName = UIHelper.AppendColor(TextColType.Purple, playerAName);
                    }
                }
                if (CrossServerQualifyingModel.Instance.fightersInfo.ContainsKey(battle.PlayerIDB))
                {
                    playerBName = CrossServerQualifyingModel.Instance.fightersInfo[battle.PlayerIDB].PlayerName;
                    if (battle.WinPlayerID == battle.PlayerIDB)
                    {
                        playerBName = UIHelper.AppendColor(TextColType.Purple, playerBName);
                    }
                }
                desc.text = Language.Get("CrossServerQualifying37", playerAName, playerBName);
            }
            else
            {
                desc.text = Language.Get("UnDetermind");
            }
        }
        else
        {
            desc.text = Language.Get("UnDetermind");
        }
 
 
    }
 
}