//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Wednesday, October 11, 2017
|
//--------------------------------------------------------
|
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI
|
{
|
|
public class RealmUpHoldWin : Window
|
{
|
[SerializeField] Image m_PlayerIcon;
|
[SerializeField] Text m_AddValue;
|
[SerializeField] Text m_Desc;
|
[SerializeField] Button m_HoldBtn;
|
[SerializeField] Text m_HoldBtnTxt;
|
[SerializeField] Button m_CloseBtn;
|
|
DateTime displayTime = DateTime.Now;
|
|
RealmModel m_Model;
|
RealmModel model
|
{
|
get
|
{
|
return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<RealmModel>());
|
}
|
}
|
#region Built-in
|
protected override void BindController()
|
{
|
}
|
|
protected override void AddListeners()
|
{
|
m_CloseBtn.onClick.AddListener(OnCloseBtn);
|
m_HoldBtn.onClick.AddListener(OnHoldBtn);
|
}
|
|
private void OnHoldBtn()
|
{
|
if (PlayerDatas.Instance.realm.holdDataList.Count > 0)
|
{
|
RealmHoldData data = PlayerDatas.Instance.realm.holdDataList[0];
|
if (data.AtkAdd < model.realmHoleLimit)
|
{
|
CA902_tagCGRealmFBHelp holdpack = new CA902_tagCGRealmFBHelp();
|
holdpack.PlayerID = data.PlayerID;
|
GameNetSystem.Instance.SendInfo(holdpack);
|
}
|
else
|
{
|
MessageWin.Inst.ShowFixedTip(Language.Get("RealmWin_Bewrite_8"));
|
}
|
}
|
OnCloseBtn();
|
}
|
|
private void OnCloseBtn()
|
{
|
PlayerDatas.Instance.realm.RemoveHoldData();
|
if (PlayerDatas.Instance.realm.holdDataList.Count > 0)
|
{
|
InitData();
|
}
|
else
|
{
|
CloseImmediately();
|
}
|
}
|
|
protected override void OnPreOpen()
|
{
|
PlayerRealmData.OnRefreshHoldData += OnRefreshHoldData;
|
InitData();
|
}
|
|
private void OnRefreshHoldData()
|
{
|
InitData();
|
}
|
|
protected override void OnAfterOpen()
|
{
|
}
|
|
protected override void OnPreClose()
|
{
|
PlayerRealmData.OnRefreshHoldData -= OnRefreshHoldData;
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
|
protected override void LateUpdate()
|
{
|
base.LateUpdate();
|
if ((DateTime.Now - displayTime).TotalSeconds >= model.realmGuardianDisplayTime)
|
{
|
OnCloseBtn();
|
}
|
}
|
#endregion
|
|
private void InitData()
|
{
|
if (PlayerDatas.Instance.realm.holdDataList.Count == 0)
|
{
|
return;
|
}
|
displayTime = DateTime.Now;
|
RealmHoldData data = PlayerDatas.Instance.realm.holdDataList[0];
|
m_AddValue.text = Language.Get("RealmWin_Bewrite_4", data.PlayerName);
|
float _addValue = model.GetRealmHelperAttr(PlayerDatas.Instance.baseData.realmLevel > data.RealmLV ? 2 : 1, 0) / 100;
|
m_Desc.text = Language.Get("RealmWin_Bewrite_5", _addValue);
|
if (PlayerDatas.Instance.baseData.realmLevel > data.RealmLV)
|
{
|
m_HoldBtnTxt.text = Language.Get("RealmWin_Bewrite_7");
|
}
|
else
|
{
|
m_HoldBtnTxt.text = Language.Get("RealmWin_Bewrite_6");
|
}
|
m_PlayerIcon.SetSprite(GeneralConfig.Instance.GetJobHeadPortrait(data.Job, data.JobRank));
|
}
|
|
}
|
|
}
|
|
|
|
|