Level Timer-如何在Unity中创建时间限制?

时间:2016-05-01 04:40:31

标签: javascript unity3d timer

如何在Unity中创建一个GUI脚本,该脚本将在一定的秒数内重新启动,因此级别是定时的?例如,在30秒时,级别重新启动或返回主菜单。

这是我的计时器脚本

Image

我所处的级别在构建设置中标记为0。 主菜单是一个不同的编号。

1 个答案:

答案 0 :(得分:1)

停止使用OnGUIJavaScript / UnityScript。使用new Unity UIC#。只需创建一个文本并将文本附加到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);
}