Итак!
Статистика уровня должна включиться после того, как Игрок зайдет в Дверь, которая в свою очередь будет открыта исключительно, как Игрок наберет нужное количество очков, собирая монетки. При этом должно остановиться время прохождения уровня и все это отразиться и в рабочем поле и в Статистике.
Задача однако! На самом деле все уже не так сложно. Есть практически все. Остается связать.
Для начала открываем скрипт TakeCoin и снимаем двойной флеш, где он был проставлен ранее - скрипт заработает полностью.
Смотрим в скрипт на Игроке - появилось строка ScoreStat и что характерно пустая. Туда следует перетащить Result из Panel / Info
Производим аналогичную операцию в скрипте Clock
Соответственно вносим нужные элементы в строки скрипта (скрипт висит на объекте Timer, если кто потерялся...) Нечего пока занести в строку Upss. Давайте разберемся с этой строкой...
Подразумевается следующее - если Игрок собирал монетки 1 час!!!, что в принципе просто нереально, вылетает наш Upss и останавливает игру с предложением начать уровень снова. Стоит заметить, что скрипт Clock не имеет команд на остановку игры и нужный скрипт надо еще создать и связать со скриптом Clock.
В качестве факультатива рассмотрим этот процесс в самом конце туториала в Части "Улучшения игры". А пока закомментируем в скрипте все, что связано с Upss и пропустим это событие.
Запускаем игру, собираем монетки, касаемся двери и, как видим, значения времени и результат в стате отражаются ровно
С Рекордом пока малость повременим и сделаем его позже.
Теперь поработаем с кнопками...
Начнем с кнопки Out - Выход из игры. Для этого пишем совсем малюсенький скрипт OutGame, располагая его в папке Scripts
В Канвасе создаем пустую папку Manager и закидываем скрипт Out туда
Как видим, в скрипт ничего тащить не надо, вот всегда бы так!!!
Раскрываем Canvas / OutPanel / Buttons / Out и в самом низу Инспектора видим пустое поле On Click. Жмем + и в строку None Object тащим Manager, раскрываем поле NoFunction, выбираем OutGame / OnClick
Готово. Однако следует отметить, что на Андроиде все будет работать, а вот в Юнити нажатие на эту кнопку ничего не даст.
Дабы не пугаться, сделаем кнопку Again - Снова.
Пишем скрипт AgainGame
Прошу обратить внимание на добавленную библиотеку using UnityEngine.SceneManagement, без которой ничего не выйдет...
Скрипт вешаем опять-таки на Manager.
Но это еще не все!
Если в поле Project посмотреть папку Scenes, то в ней всего только Level_1 и стало быть переходить пока некуда. Создаем в указанной директории новую сцену с именем Level_2 (ПКМ / Create / Scene)
Пусть она остается вся пустой. И вот что это дает:
Жмем File / BuildSetting, открывается соответствующее окно, где в разделе Scenes in Build есть только Scenec/Level_1, которая имеет индекс "0".
Перетащим в это поле вновь созданную Сцену, у которой сразу будет другой индекс "1"
Запомним индексы Сцен и закроем BuildSetting
Открываем в Иерархии Manager и видим в Инспекторе наш скрипт с единственной строкой Scene. Так как это возврат к этому уровню, а он имеет индекс "0", то ничего тут менять не надо.
Остается повторить операцию в поле On Click кнопки Again, выбрав соответствующий скрипт и команду в нем
Теперь, если запустить игру и после выпадения статистики нажать кнопку Again, игра начнется снова. Проверяем...
Вот теперь можно сделать переход на следующий уровень.
В принципе можно воспользоваться уже готовым спритом AgainGame, но в последствии есть риск запутаться в их применениях. Поэтому лучше и правильнее сделать клон этого скрипта и назвать его NextGame. Создаем и копируем в него содержимое AgainGame, не забывая про библиотеку UnityEngine.SceneManagement
Копировать все тупо не надо!!! Копируем отдельно библиотеку и тело скрипта, не затрагивая его названия - иначе Юнити будет ругаться матерно
Дальше все уже понятно - скрипт на Manager и в строке Scene ставим 1, индекс 2-го уровня.
Запускаем игру, побеждаем и в статистике жмем Next и любуемся красивым синим прямоугольником в закладке Game.... Работает!
Таким образом со статистикой уровня разобрались полностью.
Часть 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
Часть 4 "Время, Статистика игры" https://dzen.ru/a/ZMotF8kxti_l2c5Q
Далее Часть 6 "Архитектура уровня" https://dzen.ru/a/ZZabxCoEzhElsLtF