Вся ниже представленная информация есть в Телеграмм и доступна всем по ссылке t.me/ded63russtudio
В ближайшее время данный канал в Дзене поддерживаться не будет!
Настоятельно рекомендуем воспользоваться указанной ссылкой...
Поступил вопрос от читателя Дмитрия:
"... А как можно уменьшить или увеличить скорость машины игрока?..."
Правильный вопрос!
Надо сделать так, чтобы Игрок мог ускоряться и замедляться для более эффективного сбора монеток.
Как это осуществить?
Первый вариант напрашивается сам собой - поставить ползунок газа и тормоза в одном лице и, используя последний управлять скоростью машины.
Однако тут есть проблема. Где этот ползунок поставить, это раз. И два - придется пользователю в игре пользовать сразу два пальца.... что не есть удобно!
Ко всему прочему, это достаточно большой фронт работы.
Потому воспользуемся более простым и коротким методом:::
В Иерархии есть папка TachZon, в которой есть элемент Tach, вот он
Смотрим на его размеры в Инспекторе поле Трансформ, строка Scale: Х=5 (это ширина экрана), а Y=1 (это высота экрана).
Стало быть надо увеличить высоту экрана, например, до 10.
И чтобы было видно в Сцене в BoxCollider включить кнопку EditCollider
Сразу становиться ясно, куда передвинуть Tach, дабы можно было управлять машиной Игрока с любой точки экрана...
Двигаем
Position X = 0, Y = 5. Если теперь включить кнопку EditCollider, сразу видно
границы коллайдера элемента Tach.
Однако этого будет мало!
Надо обратиться к скрипту PlayerMoov - там прописано только движение по горизонтали и отсутствует движение по вертикали от слова "совсем".
Это надо исправить, дописав в скрипт нужные строки...
Попытайтесь сначала самостоятельно дописать скрипт. Это не трудно:
1. необходимо добавить публичные дробные переменные по позияциям верх и низ
//максимальная позиция сверху
public float up;
//максимальная позиция снизу
public float down;
2. в основном методе добавить проверку положения мышки по вертикали
//проверка позиции мышки и установление границ перемещения
игрока по оси Y
mousePos.y = mousePos.y > up ? up : mousePos.y;
mousePos.y = mousePos.y < down ? down : mousePos.y;
"Все изменения можно тупо копировать и менять в них переменные..."
Вот готовый вариант скрипта
Затем так, как прежде определялось удаление движения машины влево и вправо, определить удаление машины вверх и вниз. Тем, кто не помнит, как это было сделано вот ссылка https://dzen.ru/a/ZD0ubCQa9FnoFurv Смотреть в настройке скрипта PlayerMoov
Определив координаты верха и низа, заносим их в скрипт
Запускаем игру в Юнити и видим - машина Игрока подвластна пальцу пользователя в полном объеме....
Даже больше, чем в полном - еще и задний ход есть!!!
Стало малость интереснее. Спасибо читателю Дмитрию за правильный вопрос!!! Задавай еще - тут много чего можно сделать интересного...
Для тех, кто еще не в теме:
Часть 1 https://dzen.ru/a/ZC72XqomHCK7maPA"Запуск и Канвас"
Часть 2 https://dzen.ru/a/ZDBiSIkRGhr2Rxad "Игровые Элементы"
Часть 3 https://dzen.ru/a/ZD0ubCQa9FnoFurv "Скриптинг"
Часть 4 https://dzen.ru/a/ZD1BcyQa9FnoRR-i "Улучшения игры"
Часть 5 https://dzen.ru/a/ZD6sHovHRBu5sepI "Билдинг"
Есть вопросы - задавайте!!!