using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
using EnhancedUI.EnhancedScroller;
|
|
namespace vnxbqy.UI
|
{
|
|
public class CrossServerOneVsOneMatchResultCell : ScrollerUI
|
{
|
[SerializeField] Text dateTime;
|
[SerializeField] Text info;
|
[SerializeField] GameObject victory;
|
[SerializeField] GameObject failure;
|
CrossServerOneVsOneModel crossServerModel { get { return ModelCenter.Instance.GetModel<CrossServerOneVsOneModel>(); } }
|
|
public override void Refresh(CellView cell)
|
{
|
var results = crossServerModel.localSaveResults;
|
var resultInfo = results[cell.index];
|
dateTime.text = resultInfo.PkEndTime;
|
int offlineType = 0;
|
bool isOffline = resultInfo.TryGetOffLine(out offlineType);
|
int winStreakScore = 0;
|
bool isWinStreak = resultInfo.TryGetWinStreakScore(out winStreakScore);
|
if(isOffline)
|
{
|
switch(offlineType)
|
{
|
case 1:
|
info.text = Language.Get("CrossServer105", resultInfo.VsPlayerName.Replace("@gm", ""), resultInfo.AddScore);
|
break;
|
case 2:
|
if(isWinStreak)
|
{
|
info.text = Language.Get("CrossServer104", resultInfo.VsPlayerName.Replace("@gm", ""), resultInfo.AddScore,
|
resultInfo.WinStreak,winStreakScore);
|
}
|
else
|
{
|
info.text = Language.Get("CrossServer103",resultInfo.VsPlayerName.Replace("@gm", ""), resultInfo.AddScore);
|
}
|
break;
|
}
|
}
|
else
|
{
|
int winNum = 0;
|
int failNum = 0;
|
resultInfo.GetWinAndFailNum(out winNum,out failNum);
|
string compareScore = StringUtility.Contact(winNum,":",failNum);
|
if (isWinStreak)
|
{
|
info.text = Language.Get("CrossServer102", resultInfo.VsPlayerName.Replace("@gm", ""), compareScore,resultInfo.AddScore,
|
resultInfo.WinStreak, winStreakScore);
|
}
|
else
|
{
|
info.text = Language.Get("CrossServer101", resultInfo.VsPlayerName.Replace("@gm", ""), compareScore,resultInfo.AddScore);
|
}
|
}
|
|
bool isWinner = PlayerDatas.Instance.baseData.PlayerID == resultInfo.WinnerID ? true : false;
|
victory.SetActive(isWinner);
|
failure.SetActive(!isWinner);
|
}
|
}
|
}
|