Дать имя персонажу или своему аккаунту в игре — эта функция присутствует почти во всех играх. Как сделать это в Clickteam Fusion?
Всем привет, друзья. В этой статье создадим ввод имени для персонажа в игре.
Для ввода текста нам понадобиться объект Edit Box он работает практически на всех платформах:
Настройка Edit Box object
Итак, добавляем на сцену Edit Box и кнопку для перехода к следующей сцене игры.
Что бы игрок ни оставил поле пустым, создаем событие проверки минимального количества символов в поле:
В Edit Box нет события для обязательной (мин.) длины символов, так что здесь нужно использовать событие Compare two general values от объекта Special :
Указываем, что количество введенных символов должно быть больше 2-х.
Что бы вычислить длину строки нужно использовать строковую функцию Lenght of string. И в качестве параметра для Len указываем содержимое Edit Box:
Все просто! Теперь игроку придется ввести имя, что бы поиграть.
А что бы игрок ни ввел слишком длинное имя, создаем событие ограничения на максимально возможное количество символов. Такая функция заложена в действиях Edit Box:
Действие Set focus on в этом событии означает, что в поле ввода сразу будет установлен курсор.
Поле для имени настроено!
Далее после нажатия на кнопку, содержимое редактируемого поля записывается в глобальную строковую переменную, что бы передать имя между Frame’ми:
Вывод имени
На второй сцене игры объект String принимает значение глобальной строки Имя, и привязывается к координатам персонажа в событии Always:
В зависимости от длины имени координата X объекта String регулируется относительно персонажа, и его имя всегда отображается по центру. Снова используем Len, что бы определить на сколько сдвинуть объект String.
Если не применять данную формулу, а использовать событие фиксированной привязки координат, то получится некрасиво:
Как видите все просто!
Оцените, пожалуйста, этот пост звездочками и лайками. И оставьте комментарий, если хотите больше примеров с объектом Edit Box и текстом. Спасибо, друзья)
Большое спасибо за информацию. Теперь я буду это знать.
Ввожу имя, нажимаю на ИГРАТЬ (оно у меня вместо кнопки следущей сцены)
но не переходит на сцену с самой уже игрой. В чем проблема?
Наверно количество символов не соответствует
Всё хорошо! Но как тогда делать, когда активирован: «Change Resolution Mode»? Лично у меня пропадает возможность записи текста, с помощью «Edit box».
Да, это какой-то баг, Edit box пропадает если включить Change Resolution Mode. Надеюсь разработчики Clickteam это исправят). А пока с Change Resolution Mode можно использовать String вместо Edit box.
Хороший урок на русском
Хм…
Минимум 3 буквы?
Ну думаю, «Цой» сойдёт
Ну Вы можете по-своему сделать