Лучшее время
Часть раздела Создание настоящих игр путешествия по Unity на Coddy. Урок 56 из 60.
Последний этап создания платформера: теперь игрок бегает, прыгает, едет на платформах, возрождается, собирает самоцветы и переходит на следующий уровень, а для каждого уровня в PlayerPrefs сохраняется лучшее время.
Задание
СреднеКаждый уровень запоминает лучшее время.
- В
FinishLineдобавьusing TMPro;,[SerializeField] private TMP_Text bestText;и время прохождения, увеличивающееся наTime.deltaTime. - В
Start()покажи лучшее время, сохранённое под именемBestTime_плюс название уровня, в форматеBest: 12.4 s, илиBest: none. - На финише, перед загрузкой, сохрани первое или более быстрое время прохождения.
Нажми «Играть», установи время и побей его. Затем нажми «Проверить».
Попробуйте сами
using UnityEngine;
using UnityEngine.SceneManagement;
public class FinishLine : MonoBehaviour
{
void OnTriggerEnter(Collider other)
{
if (other.GetComponent<Player>() == null) return;
Scene level = SceneManager.GetActiveScene();
Debug.Log(level.name + " complete!");
int next = level.buildIndex + 1;
if (next >= SceneManager.sceneCountInBuildSettings)
{
next = 0;
}
SceneManager.LoadScene(next);
}
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Создание настоящих игр
1Текст на экране
Холст и текстПокажем счётФорматирование чиселТаймер обратного отсчётаПовторение: спидометр4Сцены и уровни
Загрузить сценуПерезапустить уровеньСледующий уровеньСохранить между сценамиПовторение: выбор уровня7Управление временем
Пауза с timeScaleЗамедленное движениеНемасштабируемое времяПовторение: Bullet Time10Проект: 3D-платформер
ТрассаДвижущиеся платформы2Кнопки и экраны
Кнопки и onClickЛямбдыСвязи в InspectorВключение и выключение панелейШкалы здоровьяПовторение: магазин улучшений5Сохранение с помощью PlayerPrefs
Сохранение числаЗагрузка со значением по умолчаниюРекордСохранение настроекПовторение: монеты в банкеПотренируйтесь самостоятельно: Песочница Unity