2016-05-01 3 views
0

UnityでGUIスクリプトを作成するには、レベルを一定の秒数で再起動して、レベルを計時するのですか?たとえば、30秒にレベルが再開したり、メインメニューに戻ります。 レベルタイマー - Unityでタイムリミットを作成するには?

は、ここに私のタイマースクリプト

Image

私はビルド設定では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); 
} 

のJavaScriptUnityEngine.SceneManagement;using UnityEngine.UI;

を使用して含まれていることを確認してください:

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); 
} 
+0

これはユニティ・スクリプトの代わりに、C#で可能性がどのような方法があります。私はそれを使うことができましたが、私はしばらく理解していませんでした。助けてくれてありがとう。 – colt1911

+0

Assets/timerc#.cs(11,16):エラーCS0246:型または名前空間の名前 'Text'が見つかりませんでした。 usingディレクティブまたはアセンブリ参照がありませんか? – colt1911

+0

@ colt1911私の答えの最後の行を読んでください。 – Programmer

関連する問題