using UnityEngine;
|
using UnityEngine.UI;
|
using vnxbqy.UI;
|
|
public class CrossServerGodBattleFieldAssortNoTeamWin : Window
|
{
|
[SerializeField] RichText popConfirmInfo;
|
[SerializeField] Button CreateTeam;
|
[SerializeField] Button GoTeam;
|
[SerializeField] Button closeBtn;
|
CrossServerGodBattleFieldAssortModel model { get { return ModelCenter.Instance.GetModel<CrossServerGodBattleFieldAssortModel>(); } }
|
protected override void BindController()
|
{
|
|
}
|
|
protected override void AddListeners()
|
{
|
CreateTeam.SetListener(() =>
|
{
|
if (model.IsOpenAction())
|
{
|
SysNotifyMgr.Instance.ShowTip("GodBattleFieldAssort03");
|
return;
|
}
|
int serverID = UIHelper.GetServerIDByAccount(PlayerDatas.Instance.baseData.AccID);
|
string serverName = ServerListCenter.Instance.GetServerName(serverID);
|
uint funcMapID = model.FuncMapID;
|
uint funcMapEx = 0;
|
string teamName = PlayerDatas.Instance.baseData.PlayerName;
|
ushort minLV = 0;
|
uint minFightPower = 0;
|
uint minFightPowerEx = 0;
|
byte serverOnly = 0;
|
byte needCheck = 1;
|
if (model.IsNoTeamName())
|
{
|
model.SendCreateFuncTeam(funcMapID, funcMapEx, string.Empty, minLV, minFightPower, minFightPowerEx, serverOnly, needCheck);
|
}
|
else
|
{
|
model.SendCreateFuncTeam(funcMapID, funcMapEx, teamName, minLV, minFightPower, minFightPowerEx, serverOnly, needCheck);
|
}
|
});
|
|
GoTeam.SetListener(() =>
|
{
|
WindowCenter.Instance.Close<CrossServerGodBattleFieldAssortNoTeamWin>();
|
WindowCenter.Instance.Open<CrossServerGodBattleFieldAssortInfoWin>();
|
});
|
|
closeBtn.SetListener(() =>
|
{
|
WindowCenter.Instance.Close<CrossServerGodBattleFieldAssortNoTeamWin>();
|
});
|
}
|
|
protected override void OnPreOpen()
|
{
|
model.UpdateTeamInfoEvent += OnUpdateTeamInfoEvent;
|
popConfirmInfo.text = Language.Get("GodBattleFieldAssort25");
|
}
|
|
protected override void OnAfterOpen()
|
{
|
if (TimeUtility.OpenDay < GeneralDefine.crossServerBattleFieldOpenDay)
|
{
|
//防范其他情况误打开
|
Close();
|
return;
|
}
|
}
|
|
protected override void OnAfterClose()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
model.UpdateTeamInfoEvent -= OnUpdateTeamInfoEvent;
|
}
|
|
void OnUpdateTeamInfoEvent()
|
{
|
bool isHaveTeam = model.TryGetPlayerTeamInfo(out bool isCaptain, out uint teamID, out AssortTeamInfo teamInfo);
|
if (isHaveTeam)
|
{
|
if (isCaptain)
|
{
|
WindowCenter.Instance.Close<CrossServerGodBattleFieldAssortNoTeamWin>();
|
WindowCenter.Instance.Open<CrossServerGodBattleFieldAssortCreateSuccessWin>();
|
}
|
else
|
{
|
WindowCenter.Instance.Close<CrossServerGodBattleFieldAssortNoTeamWin>();
|
WindowCenter.Instance.Open<CrossServerGodBattleFieldAssortWin>();
|
}
|
}
|
}
|
}
|