//--------------------------------------------------------
|
// [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");
|
}
|
|
|
}
|
|
}
|