//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Monday, January 28, 2019
|
//--------------------------------------------------------
|
|
using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
using vnxbqy.UI;
|
using System.Collections.Generic;
|
|
public class CrossServerQualifyingGuess4SubCell : ILBehaviour
|
{
|
AvatarCell headImg;
|
Text nameStr;
|
Text fightPower;
|
Text supportPlayers;
|
Text supportMoney;
|
ButtonEx guessButton;
|
Text guessText;
|
Image result;
|
Transform selectsObj;
|
Button pullBtn;
|
Text selectNum;
|
Button rank0;
|
Button rank1;
|
Button rank2;
|
Button rank3;
|
Button rank4;
|
|
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");
|
|
selectsObj = proxy.GetWidgtEx<Transform>("selects");
|
pullBtn = proxy.GetWidgtEx<Button>("pullbtn");
|
selectNum = proxy.GetWidgtEx<Text>("num");
|
rank0 = proxy.GetWidgtEx<Button>("rank0");
|
rank1 = proxy.GetWidgtEx<Button>("rank1");
|
rank2 = proxy.GetWidgtEx<Button>("rank2");
|
rank3 = proxy.GetWidgtEx<Button>("rank3");
|
rank4 = proxy.GetWidgtEx<Button>("rank4");
|
}
|
|
public void Display(int index)
|
{
|
var playerID = CrossServerQualifyingModel.Instance.guessPlayer8List[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.guess4Common.ContainsKey(playerID))
|
{
|
supportPlayers.text = UIHelper.AppendColor(TextColType.Green, CrossServerQualifyingModel.Instance.guess4Common[playerID].ToString());
|
}
|
else
|
{
|
supportPlayers.text = "0";
|
}
|
if (CrossServerQualifyingModel.Instance.guess4Personal.ContainsKey(playerID))
|
{
|
int rank = CrossServerQualifyingModel.Instance.guess4Personal[playerID].y;
|
supportMoney.text = Language.Get("CrossServerQualifying28", CrossServerQualifyingModel.Instance.guess4Personal[playerID].x);
|
if (CrossServerQualifyingModel.Instance.nowGroupMark == 0)
|
{
|
result.SetActiveIL(true);
|
if (CrossServerQualifyingModel.Instance.GetOfficialPlayer(rank).PlayerID == playerID)
|
{
|
result.SetSprite("CSQguess0");
|
}
|
else
|
{
|
result.SetSprite( "CSQguess1");
|
}
|
}
|
else
|
{
|
result.SetActiveIL(false);
|
}
|
guessButton.interactable = !(CrossServerQualifyingModel.Instance.guess4Personal[playerID].x / CrossServerQualifyingModel.Instance.guessMoney >= CrossServerQualifyingModel.Instance.guessMaxCnt);
|
selectNum.text = rank.ToString();
|
pullBtn.SetActiveIL(rank == 0);
|
}
|
else
|
{
|
supportMoney.text = Language.Get("CrossServerQualifying28", 0);
|
result.SetActiveIL(false);
|
guessButton.interactable = true;
|
pullBtn.SetActiveIL(true);
|
if (!CrossServerQualifyingModel.Instance.isNetPackRefreshGuess4)
|
{
|
selectNum.text = "0";
|
}
|
}
|
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.guess4Personal.ContainsKey(playerID) &&
|
CrossServerQualifyingModel.Instance.guess4Personal[playerID].x / CrossServerQualifyingModel.Instance.guessMoney >= CrossServerQualifyingModel.Instance.guessMaxCnt)
|
{
|
return;
|
}
|
var battleID = CrossServerQualifyingModel.Instance.GetBattleID();
|
if (ILChampionshipTimeConfig.Has(battleID) && ILChampionshipTimeConfig.Get(battleID).StateValue != 40)
|
{
|
SysNotifyMgr.Instance.ShowTip("ActiveOutTime");
|
return;
|
}
|
int guessNum = (byte)int.Parse(selectNum.text);
|
if (guessNum == 0)
|
{
|
SysNotifyMgr.Instance.ShowTip("CrossServerQualifying6");
|
return;
|
}
|
if (CrossServerQualifyingModel.Instance.myGuessInfo.ContainsKey(guessNum)
|
&& CrossServerQualifyingModel.Instance.myGuessInfo[guessNum] != playerID)
|
{
|
SysNotifyMgr.Instance.ShowTip("CrossServerQualifying5");
|
return;
|
}
|
|
if (!CrossServerQualifyingModel.Instance.myGuessInfo.ContainsKey(guessNum))
|
{
|
ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"),
|
Language.Get("CrossServerQualifying32", player.PlayerName, guessNum), (bool isOk) =>
|
{
|
if (isOk)
|
{
|
var pack = new IL_CC122_tagCMChampionshipGuess();
|
pack.ZoneID = (byte)CrossServerQualifyingModel.Instance.zoneID;
|
pack.GuessType = 4;
|
pack.PlayerID = (uint)playerID;
|
pack.GuessCount = 1;
|
pack.GuessRank = (byte)guessNum;
|
GameNetSystem.Instance.SendInfo(pack);
|
}
|
|
});
|
}
|
else
|
{
|
var pack = new IL_CC122_tagCMChampionshipGuess();
|
pack.ZoneID = (byte)CrossServerQualifyingModel.Instance.zoneID;
|
pack.GuessType = 4;
|
pack.PlayerID = (uint)playerID;
|
pack.GuessCount = 1;
|
pack.GuessRank = (byte)guessNum;
|
GameNetSystem.Instance.SendInfo(pack);
|
}
|
|
|
});
|
|
pullBtn.SetListener(()=> {
|
selectsObj.SetActiveIL(true);
|
});
|
|
rank0.SetListener(()=> {
|
selectsObj.SetActiveIL(false);
|
selectNum.text = "0";
|
});
|
|
rank1.SetListener(() => {
|
selectsObj.SetActiveIL(false);
|
selectNum.text = "1";
|
});
|
|
rank2.SetListener(() => {
|
selectsObj.SetActiveIL(false);
|
selectNum.text = "2";
|
});
|
|
rank3.SetListener(() => {
|
selectsObj.SetActiveIL(false);
|
selectNum.text = "3";
|
});
|
|
rank4.SetListener(() => {
|
selectsObj.SetActiveIL(false);
|
selectNum.text = "4";
|
});
|
}
|
|
}
|