2016-05-19 8 views
0

以下のスクリプトは、コインシステムを制御しています。別のファイルでは、コインが画面に表示されます。しかし、各コリジョンは、デストロイ(this.gameObject)のためにコインが消えますが、コインの変数は増加しません。どうして?私のコインの変数が上がらないのはなぜですか?

#pragma strict 
    var coins = PlayerPrefs.GetInt("coins"); 

    function OnTriggerEnter2D(other : Collider2D) { 
     coins += 1; 
     PlayerPrefs.SetInt("coins", coins); // or however many points you want to give per coin 
     Destroy(this.gameObject); 
    } 
+1

試してみてください。PlayerPrefs.SetInt( "coins"、PlayerPrefs.GetInt( "coins")+1); ' – user1274820

+0

あなたは本当にjavascriptではなくC#でUnityをコーディングする必要があります。 – Martin

答えて

1

あなたのUIを更新する必要があります。値を更新するメソッドを呼び出すことで実行できます。これと似たようなもの:

textUI.updateCoins(coins); 

もちろん、破壊メソッドの前に呼び出す必要があります。

関連する問題