Ответ на пост «Про вкладки в браузере»1
Ловите ОПЛ(Очень Полезный Совет). Сам с некоторого времени им активно пользуюсь, потому что вот такой же вот Плюшкин XXI века.
Камрады! Открывайте браузер в режиме ИНКОГНИТО! Если вы его случайно схлопните, или это сделает за вас хитромудрая Винда, решившая, внезапно, обновиться - то начнёте свою интернет-жисть с нуля!
Про вкладки в браузере1
Недавно жена попросила разрешения воспользоваться моим ноутбуком, и я безропотно согласился, с одним лишь условием, что она не будет закрывать пару моих вкладок. Через пять минут я узнал, что моя жена, оказывается, умеет ругаться матом, хотя вместе мы уже тринадцать лет.
— Нам надо серьезно поговорить, — подозвала она меня к себе, и я без задней мысли явился на зов.
— Саш, скажи, пожалуйста, вот это ты называешь «пара вкладок»? — она показала на мой маленький информационный хлам. Открытых окон было так много, что из ноутбука дуло сквозняком.
— Ну чуть больше, чем пара, подумаешь… Все нужное, ничего не закрывай!
Жена молча ткнула в одну из ста вкладок и оказалась на странице, которую не обновляли с 2022 года. Там все еще висело объявление о продаже квартиры и был открыт банковский калькулятор ипотеки с процентом, на который трудно смотреть без слез.
— А вдруг ее еще не продали? — не понимал я сути претензии.
Жена молча обновила страницу, и выяснилось, что тот дом давно снесли по программе реновации.
— Ну и что ты из этого делаешь проблему?
Глянув на меня, как на запутавшегося в жизни кролика, жена снова ткнула наобум и попала на азербайджано-русский переводчик.
— Вот это можно закрыть?
— Нет, оставь! — хотел я вырвать мышку. — В Баку часто проходят хорошие концерты, вдруг мы соберемся туда в отпуск.
— Хорошо, — она ткнула еще раз. — Зачем тебе культиватор? У нас ни дома, ни дачи.
— Я смотрел, какой у него расход…
— За-чем?
— Да не помню я! Чего ты пристала?
Мы продолжили изучать содержимое моего браузера.
Знаете, я из тех, кому нечего скрывать в истории поиска. Порой мне кажется, что я скачал пол-интернета, и найти что-то в этом бардаке почти невозможно. Это музей забытых интересов, архив полупреодолённых страхов и коллекция странных увлечений.
Медицинские сайты расскажут о моей боязни подхватить боррелиоз или пропустить первые признаки Альцгеймера.
Ткни наугад — и найдешь лайфхаки по заточке ножниц фольгой или инструкцию, как построить дом из самана в сибирских лесах. Вы найдете недосмотренный год назад документальный фильм про антропологов и последние пять минут японского стендапа, книгу, брошенную на середине, инструкцию по установке бампера на Альмеру, а также узнаете процент солености Финского залива. Отдай я этот компьютер студентам психфака, и они смогут написать по мне дипломную работу, причем каждый свою, с нулевым процентом плагиата.
Жена назвала меня Плюшкиным двадцать первого века и попросила прибраться в виртуальном сарае.
Я придумал грубую рифму для гоголевского персонажа и, обидевшись, прогнал жену, а сам открыл новую вкладку и вбил в поисковик новый запрос, мучавший меня с самого утра: «Где купить шаманский бубен и как в него бить». Где-то через тридцать минут я прервался на обед и открыл новую вкладку с интервью Цоя, решив отложить покупку бубна на попозже.
Александр Райн
Заходите в гости в телеграм. Там я выкладываю свои рассказы и истории из жизни https://t.me/RaynAlexandr
5. Экраны и листы событий - Порядок в проекте Construct 3 - собственный взгляд
Добрый день!
Меня зовут Руслан.
С 2016 года делаю игры в редакторе Construct 3.
В этой заметке вкратце покажу как управляю экранами и листами событий в Construct 3.
1) Экраны (они же макеты) всегда называю с заглавной буквы.
2) Листы событий - всегда с маленькой.
3) Если лист событий относится к определённому экрану - у них одинаковое имя (разница только в регистре первой буквы).
Это позволяет сразу понять, что это за вкладка - экран или лист событий. И не съедается лишнее место в пространстве вкладки.
4) В отдельные листы событий выношу:
массивы (array),
обработку кнопок (menu),
обработку непрерывными действиями: бег персонажа, всякие ползунки, прокрутки и т.п. вещи (control),
тестовые кнопки и события (test),
столкновения (collisions),
обработку функций Вконтакте, Яндекса, Google (vk, yandex, google, gamePush),
мультиплеерные функции (photon),
прочие обособленные наборы событий,
общее для всех - выношу в лист common. Обычно он получается самый объёмный.
В листах событий, привязанных к экранам прикрепляю те листы, которые могут понадобиться на данном экране.
Как обычно, Телеграм:
https://t.me/toyprogrammer
Программная смена иконки игры на Construct 3 во вкладке браузера
Добрый день!
Меня зовут Руслан.
С 2016 года делаю игры в редакторе Construct 3.
Когда у нас в работе попадаются достаточно сложные проекты, которые потом нужно долго поддерживать, мы используем 2 отдельных папки на сервере.
1. Тестовая — в неё мы постоянно загружаем обновлённые версии проекта, чтобы посмотреть, всё ли работает как надо.
2. Боевая — в неё заливаем уже более менее-протестированные версии, которые не стыдно показать заказчику.
На днях мой коллега попросил сделать разные favicon для тестовой и боевой версий игры, чтобы он мог визуально различать их в своей куче вкладок браузера.
Favicon – это маленькие иконки сайта, которые выводятся во вкладке браузера и в некоторых других местах типа Избранного в браузере.
Поначалу я ответил, что это будет слишком морочно — при каждой заливке боевой версии менять вручную все иконки в проекте (те, которые в разделе Icons & screenshots).
При этом у нас в последнем проекте 6 отдельных блоков со своими иконками. В общем, «да ну нафиг».
Но вчера я вспомнил про нашего китайского друга — нейросеть DeepSeek, которая часто помогает накодить что-нибудь эдакое.
И он снова не подвёл. Подсказал, как программно менять эту иконку в проекте.
1. Сначала рисуем иконку в нужном размере
ДипСик говорит, что размеры бывают нужны разные, но вроде максимальный-оптимальный для нашей цели — 64х64 px.
Чтобы не мудрить, я просто перекрасил в другой цвет основную иконку проекта прямо в редакторе анимаций C3.
2. Сохраняем картинку в файл
Я сохранил картинку как icontest.webp
Название и расширение этой картинки может быть почти любое, на ваш вкус.
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 :)
Типичный Chrome
Из канала Мем в глаз попал