2

Программная смена иконки игры на Construct 3 во вкладке браузера

Серия Игрушечный программист - мой опыт Construct 3

Добрый день!

Меня зовут Руслан.
С 2016 года делаю игры в редакторе Construct 3.

Когда у нас в работе попадаются достаточно сложные проекты, которые потом нужно долго поддерживать, мы используем 2 отдельных папки на сервере.

1. Тестовая — в неё мы постоянно загружаем обновлённые версии проекта, чтобы посмотреть, всё ли работает как надо.

2. Боевая — в неё заливаем уже более менее-протестированные версии, которые не стыдно показать заказчику.

На днях мой коллега попросил сделать разные favicon для тестовой и боевой версий игры, чтобы он мог визуально различать их в своей куче вкладок браузера.

Favicon – это маленькие иконки сайта, которые выводятся во вкладке браузера и в некоторых других местах типа Избранного в браузере.

Иконка сайта или игры.

Иконка сайта или игры.

Поначалу я ответил, что это будет слишком морочно — при каждой заливке боевой версии менять вручную все иконки в проекте (те, которые в разделе Icons & screenshots).

Иконки в проекте.

Иконки в проекте.

При этом у нас в последнем проекте 6 отдельных блоков со своими иконками. В общем, «да ну нафиг».

Но вчера я вспомнил про нашего китайского друга — нейросеть DeepSeek, которая часто помогает накодить что-нибудь эдакое.

И он снова не подвёл. Подсказал, как программно менять эту иконку в проекте.

1. Сначала рисуем иконку в нужном размере

ДипСик говорит, что размеры бывают нужны разные, но вроде максимальный-оптимальный для нашей цели — 64х64 px.

Чтобы не мудрить, я просто перекрасил в другой цвет основную иконку проекта прямо в редакторе анимаций C3.

Перекрашенная иконка.

Перекрашенная иконка.

2. Сохраняем картинку в файл

Я сохранил картинку как icontest.webp

Название и расширение этой картинки может быть почти любое, на ваш вкус.

3. Закидываем картинку к другим файлам проекта

Папка с файлами проекта в Construct 3.

Папка с файлами проекта в Construct 3.

4. Задаём переменные для переключения иконки

У меня это строковые переменные:

Управляющие переменные.

Управляющие переменные.

- modeTest — хранит тип версии.

”test” – тестовая версия *,

”” - боевая версия.

* Использую именно этот вариант (”test” и пустую строку), поскольку они у нас завязаны на имена таблиц в базах данных.

Содержимое этой переменной я меняю вручную с ”test” на ””, перед компиляцией и заливкой боевой версии.

- modeTestIcon — триггер, показывающий, переключилась ли уже иконка (чтобы не переключать иконку при каждом переходе между макетами проекта).

”off” – иконка ещё не менялась,

”on” – иконка уже сменилась.

5. Добавляем событие переключения иконки

И теперь самое главное — сам скрипт переключения иконки.

Использование скрипта.

Использование скрипта.

Скрипт отдельно:

var link = document.querySelector("link[rel~='icon']") || document.createElement('link');

link.rel = 'icon';

link.href = 'icontest.webp'; // путь к иконке тестовой версии игры

document.head.appendChild(link);

В этом событии мы проверяем:

- Если иконка ещё не переключалась modeTestIcon = ”off”,

- И если это тестовая версия игры modeTest = ”test”.

То задаём проекту иконку вот с таким именем icontest.webp. **

** Если у вас иконка будет под другим именем, не забудьте поменять ссылку на неё в скрипте.

И затем отмечаем в триггере modeTestIcon что иконка уже поменялась и не нужно делать этого снова.

6. Заливаем всё на сервер и тестируем.

Если всё сделано верно, то теперь мы можем быстро понять, где у нас вкладка браузера с тестовой версией, а где — с боевой.

Разные версии игры.

Разные версии игры.

На сим откланиваюсь. Скоро вернусь с очередной, скучной, но полезной фичей для Construct 3 :)

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества