|
using DG.Tweening;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
public class MapLoadingWin : UIBase
|
{
|
[Header("加载地图时长毫秒")]
|
public int millSeconds = 1000;
|
[Header("超过时长自动关闭毫秒")]
|
public int autoCloseMillSeconds = 3000;
|
[Header("洞缩小的时长毫秒")]
|
public int holeCloseMillSeconds = 1000;
|
[SerializeField] Transform fbLoadRect;
|
[SerializeField] Image holeLoadImg;
|
|
[SerializeField] Transform chapterLoadRect;
|
[SerializeField] Text chapterName;
|
[SerializeField] Text mapName;
|
[SerializeField] Text processText;
|
|
|
float showTime = 0;
|
int closeTime = 0;
|
protected override void OnPreOpen()
|
{
|
showTime = Time.time;
|
|
if (functionOrder == 0)
|
{
|
fbLoadRect.SetActive(true);
|
chapterLoadRect.SetActive(false);
|
//副本切换
|
holeLoadImg.SetNativeSize();
|
//holeLoadImg的宽高同比1秒内缩小到0,但是不用scale的方式
|
var rect = holeLoadImg.GetComponent<RectTransform>();
|
rect.DOSizeDelta(new Vector2(0, 0), holeCloseMillSeconds / 1000f);
|
closeTime = autoCloseMillSeconds;
|
}
|
else
|
{
|
//章节切换
|
chapterLoadRect.SetActive(true);
|
fbLoadRect.SetActive(false);
|
int num = PlayerDatas.Instance.baseData.ExAttr1 / 10000;
|
chapterName.text = Language.Get("MapLoad1", UIHelper.ChineseNumber(num));
|
mapName.text = MainChapterConfig.Get(num).ChapterName;
|
processText.text = Language.Get("MapLoad2","0");
|
closeTime = millSeconds;
|
}
|
}
|
|
protected override void OnPreClose()
|
{
|
}
|
|
|
protected void LateUpdate()
|
{
|
var passTime = Time.time - showTime;
|
|
if (passTime > closeTime / 1000f)
|
{
|
CloseWindow();
|
}
|
if (functionOrder != 0)
|
{
|
var num = (int)(passTime*1000 / closeTime * 100) % 100;
|
if (num % 6 == 0)
|
{
|
processText.text = Language.Get("MapLoad2", num);
|
}
|
}
|
}
|
|
}
|