//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Monday, January 28, 2019
|
//--------------------------------------------------------
|
|
using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
using vnxbqy.UI;
|
using System.Collections.Generic;
|
|
public class CrossServerQualifyingGuess8SubCell : ILBehaviour
|
{
|
AvatarCell headImg;
|
Text nameStr;
|
Text fightPower;
|
Text supportPlayers;
|
Text supportMoney;
|
ButtonEx guessButton;
|
Text guessText;
|
Image result;
|
|
protected override void Awake()
|
{
|
headImg = proxy.GetWidgtEx<AvatarCell>("head");
|
nameStr = proxy.GetWidgtEx<Text>("name");
|
fightPower = proxy.GetWidgtEx<Text>("fightPower");
|
supportPlayers = proxy.GetWidgtEx<Text>("count");
|
supportMoney = proxy.GetWidgtEx<Text>("supportMoney");
|
guessButton = proxy.GetWidgtEx<ButtonEx>("guessButton");
|
guessText = proxy.GetWidgtEx<Text>("guessText");
|
result = proxy.GetWidgtEx<Image>("result");
|
}
|
|
public void Display(int index)
|
{
|
var playerID = CrossServerQualifyingModel.Instance.guessPlayer64List[index];
|
var player = CrossServerQualifyingModel.Instance.fightersInfo[(uint)playerID];
|
headImg.SetActiveIL(true);
|
headImg.InitUI(AvatarHelper.GetAvatarModel((int)player.PlayerID, (int)player.Face, (int)player.FacePic, player.Job));
|
nameStr.text = player.PlayerName;
|
fightPower.text = UIHelper.ReplaceLargeNum(player.FightPower);
|
if (CrossServerQualifyingModel.Instance.guess8Common.ContainsKey(playerID))
|
{
|
supportPlayers.text = UIHelper.AppendColor(TextColType.Green, CrossServerQualifyingModel.Instance.guess8Common[playerID].ToString());
|
}
|
else
|
{
|
supportPlayers.text = "0";
|
}
|
if (CrossServerQualifyingModel.Instance.guess8Personal.ContainsKey(playerID))
|
{
|
supportMoney.text = Language.Get("CrossServerQualifying28", CrossServerQualifyingModel.Instance.guess8Personal[playerID].x);
|
if (CrossServerQualifyingModel.Instance.nowGroupMark <= 8)
|
{
|
result.SetActiveIL(true);
|
result.SetSprite(CrossServerQualifyingModel.Instance.guessPlayer8List.IndexOf(playerID) != -1 ? "CSQguess0" : "CSQguess1");
|
}
|
else
|
{
|
result.SetActiveIL(false);
|
}
|
guessButton.interactable = !(CrossServerQualifyingModel.Instance.guess8Personal[playerID].x / CrossServerQualifyingModel.Instance.guessMoney >= CrossServerQualifyingModel.Instance.guessMaxCnt);
|
}
|
else
|
{
|
supportMoney.text = Language.Get("CrossServerQualifying28", 0);
|
result.SetActiveIL(false);
|
guessButton.interactable = true;
|
}
|
guessText.text = Language.Get("CrossServerQualifying29", CrossServerQualifyingModel.Instance.guessMoney);
|
|
|
guessButton.SetListener(()=> {
|
if (HeroControler.Instance.GetMoneyCntIL(CrossServerQualifyingModel.Instance.guessMoneyType) < (ulong)CrossServerQualifyingModel.Instance.guessMoney)
|
{
|
SysNotifyMgr.Instance.ShowTip("LackMoney", CrossServerQualifyingModel.Instance.guessMoneyType);
|
return;
|
}
|
|
if (CrossServerQualifyingModel.Instance.guess8Personal.ContainsKey(playerID) &&
|
CrossServerQualifyingModel.Instance.guess8Personal[playerID].x / CrossServerQualifyingModel.Instance.guessMoney >= CrossServerQualifyingModel.Instance.guessMaxCnt)
|
{
|
return;
|
}
|
var battleID = CrossServerQualifyingModel.Instance.GetBattleID();
|
if (ILChampionshipTimeConfig.Has(battleID) && ILChampionshipTimeConfig.Get(battleID).StateValue != 80)
|
{
|
SysNotifyMgr.Instance.ShowTip("ActiveOutTime");
|
return;
|
}
|
|
if (CrossServerQualifyingModel.Instance.guess8Personal.Count == 8 &&
|
!CrossServerQualifyingModel.Instance.guess8Personal.ContainsKey(playerID))
|
{
|
SysNotifyMgr.Instance.ShowTip("CrossServerQualifying7");
|
return;
|
}
|
|
|
if (!CrossServerQualifyingModel.Instance.guess8Personal.ContainsKey(playerID))
|
{
|
ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"),
|
Language.Get("CrossServerQualifying33", player.PlayerName), (bool isOk) =>
|
{
|
if (isOk)
|
{
|
var pack = new IL_CC122_tagCMChampionshipGuess();
|
pack.ZoneID = (byte)CrossServerQualifyingModel.Instance.zoneID;
|
pack.GuessType = 8;
|
pack.PlayerID = (uint)playerID;
|
pack.GuessCount = 1;
|
pack.GuessRank = 0;
|
GameNetSystem.Instance.SendInfo(pack);
|
}
|
|
});
|
}
|
else
|
{
|
var pack = new IL_CC122_tagCMChampionshipGuess();
|
pack.ZoneID = (byte)CrossServerQualifyingModel.Instance.zoneID;
|
pack.GuessType = 8;
|
pack.PlayerID = (uint)playerID;
|
pack.GuessCount = 1;
|
pack.GuessRank = 0;
|
GameNetSystem.Instance.SendInfo(pack);
|
}
|
|
|
|
});
|
}
|
|
}
|