2016-05-19 6 views
0

В приведенном ниже скрипте используется система монет. В другом файле монеты отображаются на экране. Но каждое столкновение, монета исчезает из-за Destroy (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 (« монеты », PlayerPrefs.GetInt (« монеты ») + 1);' – user1274820

+0

Вам действительно нужно кодировать Unity в C#, а не javascript. – Martin

ответ

1

Необходимо обновить свой интерфейс. Вы можете сделать это, вызвав метод, который обновляет значение. Что-то похожее на это:

textUI.updateCoins(coins); 

И, конечно, вы должны назвать это перед вашим методом уничтожения.

Смежные вопросы