Задать вопрос
@kdyatlov99

Как исправить ошибку CS0019 в Unity?

Делаю аркадку на Unity и решил сделать счетчик очков. Очки будут прибавляться ежесекундно и выводиться на стандартном канвасе, но возникает эта ошибка:
Assets\Scripts\Points.cs(31,13): error CS0019: Operator '+=' cannot be applied to operands of type 'Text' and 'float'

Помогите пожалуйста, как это исправить?
Код:

public Text points;
float quantity = 0f;

public void Start()
{
    StartCoroutine(Work());
}

public void Update()
{
    points.text = "" + quantity;

    if(Obstacles.isLose == true)
    {
        StopCoroutine(Work());
    }
}

IEnumerator Work()
{
    while(true)
    {
        yield return new WaitForSeconds(1.0f);
        points += 1f;
    }
}
  • Вопрос задан
  • 39 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
VoidVolker
@VoidVolker Куратор тега C#
Dark side eye. А у нас печеньки! А у вас?
Написано же, что складывать текст и флоат нельзя. Очевидно, что вы тут перепутали переменные. Думаю, вполне ясно, что вместо текстовой тут должна быть другая переменная?
Ответ написан
GavriKos
@GavriKos Куратор тега Unity
У вас в целом концептуальная ошибка. НУ или архитектурная. Данные - отдельно, вывод - отдельно.
Увеличивайте какую то переменную, которая хранит очки, на 1 каждую секунду - отдельно, а потом отдельно эту переменную выводите в текстовое поле.

Не надо в самом текстовом поле увеличивать ничего. В него только вывод значния.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы