using vnxbqy.UI;
|
using System;
|
using System.Collections.Generic;
|
using UnityEngine.UI;
|
using System.Collections;
|
using UnityEngine;
|
//竞技场记录列表
|
public class ArenaRecordCell : ILBehaviour
|
{
|
AvatarCell ImageHead;
|
Text TextPlayerName;
|
Text TextPlayerTime;
|
Text TextPlayerFight;
|
Text TextPlayerScore;
|
Text TextPlayerScoreAll;
|
Button Btn_OK;
|
Image ImageYFC;
|
|
protected override void Awake()
|
{
|
ImageHead = proxy.GetWidgtEx<AvatarCell>("ImageHead");
|
TextPlayerName = proxy.GetWidgtEx<Text>("TextPlayerName");
|
TextPlayerTime = proxy.GetWidgtEx<Text>("TextPlayerTime");
|
TextPlayerScore = proxy.GetWidgtEx<Text>("TextPlayerScore");
|
TextPlayerScoreAll = proxy.GetWidgtEx<Text>("TextPlayerScoreAll");
|
TextPlayerFight = proxy.GetWidgtEx<Text>("TextPlayerFight");
|
Btn_OK = proxy.GetWidgtEx<Button>("Btn_OK");
|
ImageYFC = proxy.GetWidgtEx<Image>("ImageYFC");
|
}
|
|
public void Display(int index)
|
{
|
string inputString = LocalSave.GetString("MatchInfoPlayerFight"+PlayerDatas.Instance.PlayerId);
|
var stringArray = inputString.Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries);
|
|
IL_HA923_tagGCArenaBattleRecordList.tagGCArenaBattleRecord record = ArenaModel.Instance.ArenaBattleRecordList[index];
|
ImageHead.InitUI(AvatarHelper.GetAvatarModel((int)record.PlayerID, (int)record.Face, (int)record.FacePic, record.Job));
|
ulong fightpower = 0;
|
if(record.PlayerID < 10000)
|
{
|
TextPlayerName.text = ArenaModel.Instance.RobotName;
|
fightpower = (uint)ArenaModel.Instance.GetLevel(record.LV, 2); //fight
|
}
|
else
|
{
|
TextPlayerName.text = record.PlayerName;
|
|
fightpower = record.FightPowerEx;
|
fightpower = fightpower * 100000000;
|
fightpower = fightpower + record.FightPower;
|
}
|
TextPlayerScoreAll.text = StringUtility.Contact(Language.Get("Arena_Score"), ":", record.Score.ToString());
|
int timestmp = (int)Math.Abs(TimeUtility.AllSeconds - record.Time);
|
TextPlayerTime.text = StringUtility.Contact(TimeUtility.SecondsToDHMSCHS(timestmp), Language.Get("L1026")); //转换时间显示格式
|
TextPlayerFight.text = StringUtility.Contact(Language.Get("L1056"), ":", UIHelper.ReplaceLargeNum(fightpower));
|
int value = int.Parse(record.AddScore);
|
if(value > 0)
|
{
|
TextPlayerScore.text = StringUtility.Contact("+" , record.AddScore);
|
}else if(value == 0)
|
{
|
TextPlayerScore.text = StringUtility.Contact("0");
|
}else
|
{
|
TextPlayerScore.text = record.AddScore;
|
}
|
|
TextPlayerScore.color = int.Parse(record.AddScore) >= 0 ? UIHelper.GetUIColor(TextColType.Green) : UIHelper.GetUIColor(TextColType.Red);
|
|
bool bYFC = false;
|
for(int i = 0;i < stringArray.Length;i++)
|
{
|
if (record.Time.ToString() == stringArray[i])
|
bYFC = true;
|
}
|
if(record.IsWin > 0 || bYFC)
|
{
|
Btn_OK.SetActiveIL(false);
|
}
|
else
|
{
|
Btn_OK.SetActiveIL(true);
|
}
|
if (bYFC)
|
{
|
ImageYFC.SetActiveIL(false);
|
}
|
else
|
{
|
ImageYFC.SetActiveIL(false);
|
}
|
|
|
Btn_OK.SetListener(() =>
|
{
|
if (!ArenaModel.Instance.bArenaOpen)
|
{
|
SysNotifyMgr.Instance.ShowTip("ArenaTimeLimit");
|
return;
|
}
|
ArenaModel.Instance.currentRecordIndex = index;
|
|
if (record.PlayerID < 10000)
|
{
|
ArenaModel.Instance.BeginRecordBattle();
|
}
|
else
|
{
|
SetBattlePlayer(record.PlayerID);
|
}
|
|
});
|
}
|
|
void SetBattlePlayer(uint _PlayerID)
|
{
|
IL_CA9A5_tagCGQueryArenaBattlePlayer pack = new IL_CA9A5_tagCGQueryArenaBattlePlayer();
|
pack.PlayerID = _PlayerID;
|
GameNetSystem.Instance.SendInfo(pack);
|
}
|
|
|
}
|