NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/HotUpdate/UI/TempUIHandle.cs

79 lines
3.4 KiB
C#

using Cysharp.Threading.Tasks;
using PhxhSDK.AOT.VersionUpdate;
using UnityEngine;
namespace HotUpdate.UI
{
public class TempUIHandle : IVersionUpdateUI
{
public TempUIHandle()
{
TempUpdateUI.Instance.m_DialogObj.SetActive(false);
}
public async UniTask<bool> ShowDialog(string title, string content)
{
TempUpdateUI.Instance.m_DialogObj.SetActive(true);
TempUpdateUI.Instance.isClickOk = false;
//TempUpdateUI.instance.m_TextTitle.text = title;
TempUpdateUI.Instance.m_TextContent.text = content;
while (TempUpdateUI.Instance.m_DialogObj.activeSelf)
{
await UniTask.DelayFrame(1);
}
return TempUpdateUI.Instance.isClickOk;
}
public void ShowVersion(string curAotVersion, string workSpace, string curResVersion, string newResVersion, string serverName)
{
string aotVersion = string.Format(LocalizeMono.Instance.GetLocalizeText("AotVersionInfo"), curAotVersion, workSpace, serverName); // 游戏版本:{0},渠道:{1},服务器:{2}
string resVersion = string.Format(LocalizeMono.Instance.GetLocalizeText("CurResVersionInfo"), curResVersion); // 当前资源版本:{0}
string sever = string.Format(LocalizeMono.Instance.GetLocalizeText("NewResVersionInfo"), newResVersion); // ,最新资源版本:{0}
TempUpdateUI.Instance.m_TextAotVersion.text = aotVersion;
TempUpdateUI.Instance.m_TextCurResVersion.text = resVersion;
TempUpdateUI.Instance.m_TextNewResVersion.text = sever;
TempUpdateUI.Instance.m_TextAotVersion.gameObject.SetActive(true);
TempUpdateUI.Instance.m_TextCurResVersion.gameObject.SetActive(true);
TempUpdateUI.Instance.m_TextNewResVersion.gameObject.SetActive(true);
}
public void UpdateProgress(float progress)
{
if (TempUpdateUI.Instance.m_ProgressObj != null)
TempUpdateUI.Instance.m_ProgressObj.SetActive(true);
TempUpdateUI.Instance.m_SliderProgress.value = progress;
TempUpdateUI.Instance.m_textSliderProgress.text = ((int)(progress * 100f)).ToString() + "%";
}
public void UpdateProgressText(string text)
{
if (TempUpdateUI.Instance.m_ProgressObj != null)
TempUpdateUI.Instance.m_ProgressObj.SetActive(true);
TempUpdateUI.Instance.m_TextProgress.text = text;
TempUpdateUI.Instance.m_TextProgress.gameObject.SetActive(true);
}
public void HideUpdateInfo()
{
TempUpdateUI.Instance.m_TextAotVersion.gameObject.SetActive(false);
TempUpdateUI.Instance.m_TextCurResVersion.gameObject.SetActive(false);
TempUpdateUI.Instance.m_TextNewResVersion.gameObject.SetActive(false);
TempUpdateUI.Instance.m_TextProgress.gameObject.SetActive(false);
}
public void CloseAll()
{
if (TempUpdateUI.Instance.UICamera != null)
TempUpdateUI.Instance.UICamera.gameObject.SetActive(false);
if (TempUpdateUI.Instance != null)
Object.Destroy(TempUpdateUI.Instance.gameObject);
}
public float GetCurProgress()
{
return TempUpdateUI.Instance.m_SliderProgress.value;
}
}
}