Создаем платформер для Андроид Часть 4 "Время, Статистика игры"
Играющий должен стремиться к высшим результатам, а для этого надо видеть время уровня, результат уровня и рекорд.
Ко всему прочему по факту завершения уровня надо остановить время игры - оно впрямую влияет на результат и рекорд.
Начнем с времени игры.
Напишем полный скрипт и опять отключим временно то, чего пока еще нет.
Позиция отображения времени уже готова. Поэтому сразу пишем скрипт Clock
Пока пусть лежит в папке Scripts.
Следует обратить внимание, что к стандартным библиотекам скрипта добавлены еще две:
using System;
using UnityEngine.UI;
без них скрипт должным образом работать не будет!
Временно отключаем в скрипте следующие позиции (напомню, чтобы отключить достаточно закомментировать строку двойным флешем):
public Text secondStat;
public Text minutesStat;
public GameObject upss;
upss.SetActive(false);
upss.SetActive(true);
secondStat.text = "" + second1;
minutesStat.text = "" + minuta1;
Вешаем скрипт на объект Timer в Canvas и настраиваем его так
Запускаем игру, можно даже никуда не бегать - главное ход времени. Работает...
Пришла пора заняться Статистикой уровня.
Первым делом в Канвасе создаем пустой объект OutPanel и ставим по центру.
Затем уже в созданной папке создаем объект UI / Image и даем имя Panel и растягиваем эту панель как-то так
Якорь ставим по центру. Придаем цвет и убираем прозрачность, если таковая есть
Для красивости надо присобачить любую рамку - найти ее в инете, закинуть в папку Sprites (отдельно для рамки создавать еще папку нет смысла - она одна) и дать имя StatFon. Разрешение png.
Дочерним объектом создаем UI / Image с именем Ramka, растягиваем в размер панели и запихиваем туда спрайт StatFon. Получаем как-то так
Вопрос - для чего именно так?
Дело в том, что скриптом остановится только время, но платформы так и будут скакать туда сюда, будущая дверь тоже продолжит двигаться и чтобы не геморроиться со скриптами по отключению подобных элементов уровней - можно просто их скрыть этой панелью... Как говориться, сие на скорость не влияет!
Теперь надо сделать кнопки "Далее", "Снова" и "Выход"
Можно обойтись без спрайтов, но это как-то убого, право слово! Поэтому, ищем что-то на свой вкус и заносим в папку Sprites / Buttons
Затем в родительской папке Panel создаем папку Buttons и уже в ней делаем элемент UI / Button, выравниваем по размеру и ставим справа сверху. Даем имя Next, тащим в в нее спрайт
Раскрываем кнопку и в поле Текст пишем Next, выставляем цвет и размер шрифта
Готово. Повторяем операцию - копируем готовую кнопку, переименовываем ее в Again и тащим чуть ниже, в тексте также пишем Again. Потом также с кнопкой Exit.
(Кстати, все вполне можно написать русским языком. На Андроиде функция поддерживается ровно)
В итоге получаем вот это
Замечательно.
Определимся с полями: Результат, Рекорд.
Они выполняются так же, как элемент Score, который уже сделан. Поэтому не стоит себя особо утруждать, достаточно дублировать оба элемента из папки Score в Канвасе и перенести все это в новую папку в Buttons - Info
Естественно, надо дать новые имена, расположение и размеры. Цвет по желанию.
И якоря поправить не забываем...
В целом Статистика как элемент уровня готова.
Часть 1 "Концепция игры" https://dzen.ru/a/ZGJVMZKsTRJ1IRxW
Часть 2.1 "Поиск и размещение" https://dzen.ru/a/ZGNW53IB3hJhklbs
Часть 2.2 "Настройка игровых элементов" Игрок, Задний фон, Кирпичики, Поле Канваса, Земля, Фон Канваса, Границы игрового поля https://dzen.ru/a/ZGTlEXyZok4KNcEk
Часть 2.3 "Настройка игровых элементов"
Платформы, Кирпичики, Кнопки управления, элементы Канваса https://dzen.ru/a/ZG3owStvrRb4xElN
Часть 3.1 "Игрок - движение и прыжки" https://dzen.ru/a/ZJWHrGZylAw34K1k
Часть 3.2 "Игрок. Собиратель монеток. Дверь" https://dzen.ru/a/ZJrfjBv0yCUeuzCB
Далее Часть 5. "Собираем статистику в кучу" https://dzen.ru/a/ZYllpKSvuEWxQUwr