using System.Collections.Generic;
|
using UnityEngine;
|
using vnxbqy.UI;
|
|
public class CrossServerGodBattleFieldAssortInfoCell : CellView
|
{
|
[SerializeField] TextEx txtLeaderName;
|
[SerializeField] TextEx txtPowerNum;
|
[SerializeField] TextEx txtTip;
|
[SerializeField] ButtonEx btnCancel;
|
[SerializeField] ButtonEx btnRequest;
|
CrossServerGodBattleFieldAssortModel model { get { return ModelCenter.Instance.GetModel<CrossServerGodBattleFieldAssortModel>(); } }
|
bool isHaveTeam;
|
bool isCaptain;
|
uint teamID;
|
AssortTeamInfo teamInfo;
|
AssortMemberInfo memberInfo;
|
Dictionary<uint, AssortTeamInfo> teamInfoDict;
|
List<uint> teamTypelist;
|
public void Display(int index, CellView cell)
|
{
|
uint teamID = (uint)cell.info.Value.infoInt1;
|
if (!model.TryGetTeamInfoDict(out teamInfoDict) || !teamInfoDict.TryGetValue(teamID, out teamInfo) ||
|
!model.TryGetTeamCaptainMemberInfo(teamInfo, out memberInfo) || !model.TryGetTeamTypeList(model.HaveSpace, model.IDLimitType, out teamTypelist))
|
return;
|
if (model.TeamCount >= model.QueryCnt && teamTypelist.Count - 10 == index)
|
{
|
model.SendQueryFuncTeam(model.FuncMapID, 0, model.LoopIndex, 40, 1, model.isOnlyServerGroupIDLeader ? (byte)2 : (byte)0);
|
}
|
|
string serverName = ServerListCenter.Instance.GetServerName((int)memberInfo.ServerID);
|
txtLeaderName.text = Language.Get("GodBattleFieldAssort06", Language.Get("BlessedLand043", serverName, model.IsNoTeamName() ? memberInfo.Name : teamInfo.TeamName));
|
txtPowerNum.text = UIHelper.ReplaceLargeNum(model.GetTeamTotalPower(teamInfo));
|
btnRequest.SetActive(!model.IsRequest(teamID) && teamInfo.MinFightPower <= PlayerDatas.Instance.baseData.FightPoint);
|
btnCancel.SetActive(model.IsRequest(teamID));
|
txtTip.SetActive(!model.IsRequest(teamID) && teamInfo.MinFightPower > PlayerDatas.Instance.baseData.FightPoint);
|
txtTip.text = Language.Get("GodBattleFieldAssort45",UIHelper.ReplaceLargeNum(teamInfo.MinFightPower));
|
btnCancel.SetListener(() =>
|
{
|
if (model.IsOpenAction())
|
{
|
SysNotifyMgr.Instance.ShowTip("GodBattleFieldAssort03");
|
return;
|
}
|
model.SendFuncTeamMemOP(teamID, model.FuncMapID, 2);
|
});
|
|
btnRequest.SetListener(() =>
|
{
|
if (model.IsOpenAction())
|
{
|
SysNotifyMgr.Instance.ShowTip("GodBattleFieldAssort03");
|
return;
|
}
|
//队伍申请个数已达上限
|
var teamIDList = model.GetPlayerRequestTeam();
|
if (teamIDList.Count >= FunctionTeamSetConfig.Get((int)model.FuncMapID).ReqApplyMax)
|
{
|
SysNotifyMgr.Instance.ShowTip("TeamReqJoinApplyFull");
|
return;
|
}
|
model.SendFuncTeamMemOP(teamID, model.FuncMapID, 1);
|
});
|
}
|
|
}
|