Menu
CoddyTech

Повторение: обратный отсчёт

Часть раздела Физика и игровой процесс путешествия по Unity на Coddy. Урок 27 из 71.

В этом обзоре собраны основные моменты главы: корутина, которая ведёт обратный отсчёт с помощью WaitForSeconds, и её дескриптор, сохранённый в поле, чтобы её можно было остановить.

challenge icon

Задание

Легко

Начни гонку с помощью корутины обратного отсчёта.

  1. Напиши IEnumerator Countdown(): отсчитывай от seconds до 1, выводя в журнал каждое число и ожидая 1 секунду; затем выведи в журнал Go! и задай car.linearVelocity = Vector3.forward * speed;.
  2. При нажатии Space останови любой запущенный обратный отсчёт, а затем запусти новый и сохрани его в поле типа Coroutine.
  3. Щелчок во время обратного отсчёта останавливает его и выводит в журнал Cancelled.

Нажми «Играть» и нажми Space: 3, 2, 1, Go!. Затем нажми «Проверить».

Попробуйте сами

using System.Collections;
using UnityEngine;

public class RaceStart : MonoBehaviour
{
    public Rigidbody car;
    public int seconds = 3;
    public float speed = 8f;

    void Update()
    {
        // Space: запустить (или перезапустить) обратный отсчёт. Click: отменить его.
    }

    // Обратный отсчёт: 3, 2, 1 с интервалом в секунду, затем Go! — и машина трогается с места
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Физика и игровой процесс

Потренируйтесь самостоятельно: Песочница Unity