Повторение: обратный отсчёт
Часть раздела Физика и игровой процесс путешествия по Unity на Coddy. Урок 27 из 71.
В этом обзоре собраны основные моменты главы: корутина, которая ведёт обратный отсчёт с помощью WaitForSeconds, и её дескриптор, сохранённый в поле, чтобы её можно было остановить.
Задание
ЛегкоНачни гонку с помощью корутины обратного отсчёта.
- Напиши
IEnumerator Countdown(): отсчитывай отsecondsдо 1, выводя в журнал каждое число и ожидая 1 секунду; затем выведи в журналGo!и задайcar.linearVelocity = Vector3.forward * speed;. - При нажатии Space останови любой запущенный обратный отсчёт, а затем запусти новый и сохрани его в поле типа
Coroutine. - Щелчок во время обратного отсчёта останавливает его и выводит в журнал
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! — и машина трогается с места
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Физика и игровой процесс
1Твёрдое тело
Гравитация и массаТолкаем с помощью AddForceПрыжок с импульсомFixedUpdate для физикиСкоростьКинематические телаПовторение: пусковая площадка4Корутины
InvokeInvokeRepeating, CancelInvokeВаша первая корутинаЦиклы в корутинахОстановка корутинПовторение: обратный отсчёт10Проект: Побег с арены
АренаОхотники2Столкновения
OnCollisionEnterВо что я попал?Разрушение при столкновенииСтояние на землеОтскок и трениеФормы коллайдеровПовторение: разрушаемая стена5Проект: Монетная гонка
Катящийся шарСобираем монетыПотренируйтесь самостоятельно: Песочница Unity