Условная версия 0.2 стала ближе, но сделать за выходные всю основу не получилось

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

Чатгопота конечно дубина, порой утекает в какие-то пространные процессирования или начинает придумывать излишне заебистые структуры. Но в общем и целом движемся:

1) При запуске создается комната гаража с тремя пустыми стенами-ячейками, которые на себе также уже содержат базовый спрайт стойки с активными зонами, по клику на которую появляется окно добавления нового автомобиля.

Условная версия 0.2 стала ближе, но сделать за выходные всю основу не получилось

2) В этом окне есть список из тринадцати параметров, которым можно вбить текстовое значение. Ниже есть выбор спрайтов трех проекций - спереди, сзади и сбоку (вид сбоку пока не работает в принципе, т.к. он затрагивает остальные системы, решил пока не переусложнять).

Условная версия 0.2 стала ближе, но сделать за выходные всю основу не получилось

3) Это окно имеет под капотом систему, которая пытается корректно скалировать загружаемый спрайт так, чтобы он выглядел соотносимо с другими спрайтами. То есть, чтобы ширина одной машины визуально реально была видна в интерфейсе гаража. Это делает костыльная, полная условностей система. Мы грузим при добавлении машины параметры ширины, высоты и длины. Ширина берется за основу. В системе у нас масштаб равен такому соотношению - 1метр это 400рх. Система смотрит ширину, что мы ввели, например 2.5м и понимает, что спрайт отображаемый должен быть в ширину 1000рх. Он масштабирует спрайт машины перед добавлением в слот. Причем тут есть еще одна проверка - высота. Если мы делаем машину шире 2.5 метров (у нас слот в принципе не вмещает больше), то спрайт будет ограничен по 2.5 и пропорционально проскалирован.
Когда же решается вопрос с масштабом по ширине, система смотрит получившуюся высоту спрайта и сравнивает с высотой ячейки. Ячейки есть трех видов - 2.5, 3 и 1.8 метров. Система смотрит, пытается соотнести и подобрать нужный спрайт и проверяет, влезают ли в его ячейки машины, которые уже в этой стойке есть. По сути, это все хуйня просто ради хуйни и небольшой наглядности, чтобы потом на стойке порш 911 тарга был меньше визуально, чем додж рам.

Условная версия 0.2 стала ближе, но сделать за выходные всю основу не получилось

4) При повторном клике на машину открывается копия окна добавления, его я буду переделывать в инфо окно. Пока можно заметить, что я физически снес кнопки загрузки спрайтов, а в поле, которое не было заполнено, отображается (None).

Условная версия 0.2 стала ближе, но сделать за выходные всю основу не получилось

В общем, в планах закончить систему вывода инфо окна, редактирования карточки машины и всякие квалитилайф штуки по типу той, чтобы удаление стены не удаляло стену с машиной в ней, а удаляло только пустые. Наверное вычищу это все и займусь графикой. Замоделю, отрендерю и перезапеку спрайты. Но это уже будет условный 0.3, наверное.

33
33