如何在Unity中创建一个GUI脚本,该脚本将在一定的秒数内重新启动,因此级别是定时的?例如,在30秒时,级别重新启动或返回主菜单。
这是我的计时器脚本
我所处的级别在构建设置中标记为0。 主菜单是一个不同的编号。
答案 0 :(得分:1)
停止使用OnGUI
和JavaScript
/ UnityScript
。使用new Unity UI
和C#
。只需创建一个文本并将文本附加到timerText
插槽,您就可以看到计时器从0到30或任何传入的值。
<强> C#强>:
void Start()
{
StartCoroutine(reloadTimer(30));
}
public Text timerText;
IEnumerator reloadTimer(float reloadTimeInSeconds)
{
float counter = 0;
while (counter < reloadTimeInSeconds)
{
counter += Time.deltaTime;
timerText.text = counter.ToString();
yield return null;
}
//Load new Scene
SceneManager.LoadScene(0);
}
请务必使用UnityEngine.SceneManagement;
和using UnityEngine.UI;
<强>的JavaScript 强>:
public var timerText : UI.Text;
function Start () {
reloadTimer(30);
}
function reloadTimer(reloadTimeInSeconds : float){
var counter = 0;
while (counter < reloadTimeInSeconds)
{
counter += Time.deltaTime;
timerText.text = counter.ToString();
yield;
}
//Load new Scene
UnityEngine.SceneManagement.SceneManager.LoadScene(0);
}