2014-11-14 65 views
1

如何重新啓動我的成績,當我重新加載屏幕如何在統一重新加載場景中重新開始我的分數(重置靜態分數)?

public class KeepingScore: Monobehaviour; 

public static int Score; 

我也有得分設爲每當我點擊一個對象,該對象被破壞,給我點。

void OnMouseDown() 

KeepingScore.score += 1; 

Destroy(); 

我也有在那裏,當我跑出來的時候,場景切換到水平選擇菜單,在這裏我的級別再次點擊(即1級)的定時器,但我還是看到我的成績怎麼回它是。我知道它是靜態的,因此它仍然是一樣的,有沒有什麼方法可以在每次重新加載關卡時將值重置爲零。謝謝

回答

5

您可以執行MonoBehaviour.OnLevelWasLoaded(int)函數。
每次加載關卡時都會調用它。

void OnLevelWasLoaded(int level) { 
    KeepingScore.score = 0; 
} 

檢查的文檔: http://docs.unity3d.com/ScriptReference/MonoBehaviour.OnLevelWasLoaded.html

+1

也請記住,當你點擊播放按鈕來運行在編輯器中的場景此事件將不會觸發。 – Agumander 2014-11-14 17:34:31

+0

好吧,它的工作,我做的是無效OnLevelWasLoaded(){Keeping.Score = 0; } – 2014-11-15 00:00:09

相關問題