Земский Бизнес - Деньги, телефон, смена дня и ночи

Продолжаем делиться прогрессом по игре - на этот раз много правок в мелочах, которые внезапно оказались совсем не мелочами.

Земский Бизнес - Деньги, телефон, смена дня и ночи

💸 Деньги, сдача и немного логики

Переписали генерацию суммы, которую даёт посетитель. Теперь покупатели приносят более логичные значения: либо "круглые" суммы, которые реально собрать купюрами, либо точную сумму под заказ. Возможно, позже ещё вернемся к этому алгоритму и докрутим его, но пока поживём так.

На кассе появилась отдельная строка с информацией о том, сколько сдачи игрок уже накликал. Эта же информация дублируется в подсказке при наведении на поднос для сдачи. Считать сдачу вручную, с новым алгоритмом, было даже интересно, но всё-таки логичнее, чтобы касса считала её сама - и игрокам будет попроще.

Земский Бизнес - Деньги, телефон, смена дня и ночи

Заказы теперь действительно имеют значение

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

Теперь, если:

  • на подносе есть товары, которых не было в заказе;
  • или товар есть в заказе, но его больше, чем нужно,

покупатель сначала попросит убрать лишнее и только потом перейдёт к оплате.

Прокачка механики телефона

Изначально модель телефона была временной заглушкой, без отделённых кнопок. Под неё использовались «невидимые» UI-кнопки в World-space канвасе. Сейчас у телефона полноценная своя модель, поэтому мы полностью переделали взаимодействие: клики и наведения теперь работают через коллайдеры кнопок и IPointerEnter / Exit / Click.

Раз кнопки стали отдельными:

  • добавили анимацию при нажатии;
  • обводку при наведении мыши.

Телефон по-прежнему активируется закидыванием монетки в монетоприёмник, но раньше эта монетка была абстрактной. Теперь она появляется физически и анимированно «уплывает» внутрь.

Трубка тоже прокачалась - теперь она перемещается к предполагаемому уху и обратно. +5% к иммерсивности, как по мне.

Дополнительно добавил управление с клавиатуры:

  • Space / Enter - опустить монетку
  • Esc - положить трубку
  • Цифры (включая NumPad), * и # - набор номера
  • Backspace - удалить последний символ

Думаем, стоит ещё где-нибудь вывести эти подсказки на экран.

Время суток, солнце и луна

Теперь в игре есть время, и к нему привязаны Солнце и Луна. Сейчас время может течь беспрерывно (как на видео), но есть идея сделать более классическую схему: день начинается утром, заканчивается вечером, после чего игроку нужно завершить день, сохраниться и пойти спать.

Свет, материалы и TextMeshPro

С добавлением времени суток сразу стало видно, что не все материалы корректно реагируют на освещение. Самые заметные - 3D-тексты (например, табличка с названием улицы), сделанные через TextMeshPro. По умолчанию там используется Unlit-шейдер, который вообще не зависит от света.

Для названия магазина мы попробовали стандартный tmp-srp-urp-lit, но он отражает свет слишком "пластиково" (особенно заметно на 00:01).

В итоге просто открыли граф шейдера tmp_lit и добавили в него слайдер Smoothness. Теперь можно управлять шероховатостью текста. Чтобы слайдер появился, пришлось убрать кастомный GUI шейдера - разбираться, как добавлять туда свои параметры, пока не хочется.

40 секунд смотрим как меняется время суток 🗿

На этом пока все. Добавить игру в список желаемых можно по ссылке:
Земский Бизнес в Steam

9
1