fix: скролл лицензии, отец лицом к игроку, банка-цилиндр, экран
Some checks failed
Godot CI / Import + smoke test (push) Failing after 13s

АКТ 2 СКРОЛЛ:
- Body RichTextLabel: fit_content=true → false, теперь label
  остаётся в фиксированном размере 540×220 и скроллит контент
  внутри. Раньше label расширялся по тексту и обрезался панелью.
- scroll_following=false (не следить за концом).
- mouse_filter=STOP — теперь mouse wheel над label скроллит.
- font_size снижен с дефолта на 11 — больше пунктов помещается
  на экране, читается комфортно.
- Window custom_minimum_size = 580×348 (было 560×320) — больше
  места под лицензию.

ОТЕЦ:
- FatherNPC initial transform теперь rotation_y = +π/2
  (Transform3D(0,0,-1,0,1,0,1,0,0,1.7,0,0)) — лицом к игроку
  на запад. Игрок видит лицо отца, а не профиль.
- В _walk_father_out tween поворачивает rotation_y → -π/2
  (180° поворот через 0/север). Шагает на восток к двери
  с правильно повёрнутым корпусом.

МОНИТОР:
- К Desk/OldPC добавлен child Screen — BoxMesh 0.21×0.15×0.005
  с эмиссивной материалом mat_screen (тёмный с голубым свечением).
- Стоит на передней грани монитора, имитирует тёмный экран
  с легким bluish-glow CRT-вибом.

ADRENALINE BANK → ЦИЛИНДР:
- mesh_can: BoxMesh → CylinderMesh top=bottom=0.03 height=0.13.
  Теперь это реально банка по форме, а не куб.

ТЕКСТУРЫ ПРЕДМЕТОВ (TextureGen новые):
- adrenaline_label: синий с тёмно-синими диагональными штрихами +
  жёлтая молния по центру + тёмные верхняя/нижняя кромки.
- lays_wrapper: жёлтый с красной волнистой лентой посередине
  (синус) + коричневая чипса-клякса внизу + тёмные уголки.
- sock_fabric: тёмно-синий с горизонтальными светлыми полосками
  каждые 6 пикселей + тёмный шов.
- monitor_screen: тёмное стекло с edge-glow + scanlines каждые
  2 строки (CRT-вайб).
- Применены в act1.gd._apply_textures на AdrenalineCan,
  LaysWrapper, Sock1/Sock2.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dmitrii Bykov 2026-05-24 18:36:19 +03:00
parent f8040fb399
commit 579df43289
4 changed files with 166 additions and 7 deletions

View file

@ -67,6 +67,19 @@ func _apply_textures() -> void:
var book_mat: BaseMaterial3D = (book_node as MeshInstance3D).material_override
TextureGen.apply_to_material(book_mat, TextureGen.book_color(i), Vector3(1, 1, 1))
# Adrenaline / Lay's / Носки
var can_mat: BaseMaterial3D = ($Desk/AdrenalineCan as MeshInstance3D).material_override
TextureGen.apply_to_material(can_mat, TextureGen.adrenaline_label(), Vector3(1, 1, 1))
var lays_mat: BaseMaterial3D = ($Desk/LaysWrapper as MeshInstance3D).material_override
TextureGen.apply_to_material(lays_mat, TextureGen.lays_wrapper(), Vector3(1, 1, 1))
for sock_name in ["Sock1", "Sock2"]:
var sock_node: Node = get_node(sock_name)
if sock_node != null and sock_node is MeshInstance3D:
var sock_mat: BaseMaterial3D = (sock_node as MeshInstance3D).material_override
TextureGen.apply_to_material(sock_mat, TextureGen.sock_fabric(), Vector3(1, 1, 1))
func _play_intro() -> void:
system_unit.visible = false