Синтаксис while-loop для C #, Что я сделал не так?

Поскольку обратный менеджер для объектов выбора choice_set, вы должны установить source='choice_set' для поля choices:

class PollSerializer(serializers.ModelSerializer):
    choices = ChoiceSerializer(many=True, read_only=True, required=False, source='choice_set')

-1
задан PythonNoob 19 January 2019 в 17:15
поделиться

1 ответ

Петля while не имеет части else. Блок while выполняется в цикле; как только условие становится равным false, цикл заканчивается, и выполнение продолжается с оператора после цикла, нет никакой причины / необходимости помещать else туда.

Но в вашем случае вы, вероятно, вообще не хотите петли. Я полагаю, ваш триггер срабатывает при каждом столкновении. Таким образом, вы действительно имели в виду условие if, где ветвь else полностью в порядке.

Кроме того, я думаю, что вы либо хотели Health-- уменьшить здоровье, или вы хотели Health < 3 для подсчета столкновений (и, вероятно, переименовать переменную в CollisionCount или что-то подобное?). [1115 ]

Итак, ваш код должен быть

void OnTriggerEnter(Collider other)
{
    if (Health > 0)
    {
        Health--;
        Debug.Log(Health);
    }
    else
    {
        GameOver();
    }
}
0
ответ дан Mormegil 19 January 2019 в 17:15
поделиться
Другие вопросы по тегам:

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