farming-simulator/scenes/components/dialog_ui.tscn
Dmitrii Bykov b833127bcc
Some checks failed
Godot CI / Import + smoke test (push) Failing after 13s
act1: аутентичная страна Р — комната, HUD, канон
КАНОН (3 новых файла, ресёрч-агент):
- APARTMENT.md: брежневка Купчино 9-эт, комната 10-12м², обои бежевые
  виниловые с растительным узором (наследие маминого ремонта 2010),
  линолеум жёлто-коричневый, ковёр бордовый персидский над кроватью
  (наследство от бабушки), батарея чугунная МС-140 белая с подтёками,
  пластиковый стеклопакет с алоэ+чашкой на подоконнике, кровать с тёмно-
  синим верблюжьим одеялом, стол ИКЕА MICKE, старый офисный «Бюрократ»,
  стеллаж ИКЕА BILLY с учебниками + Гарри Поттер + УК РФ (засев #8),
  постеры CS:GO + Моргенштерн на синей изоленте, банка Adrenaline +
  обёртка Lay's на столе, носки на полу. Все цвета по hex.

- STREET.md: парадная с домофоном Eltis DP-400 (питерский производитель),
  фасад керамической плитки бежевой, балконы остеклены лоскутно, на 1
  этаже Пятёрочка+К&Б, двор с тополями+ракушками-гаражами+советской
  площадкой (горка-«ракета»), лавочки бабушек/подростков, метро жетон 55₽
  август 2020, шаверма 120-180₽ (источник прямой не подтверждён, оценка
  по контексту), сети Pita's/Вкусная шаверма/КручуВерчу.

- HUD.md: pixel-art минимализм с акцентом #F0B419 Steam-inventory,
  Pathologic-2 правило (статы только при пороге), диалог-окно в стиле
  Шиндовс-окна (засев бренда), квест-маркер через ТГ-телефон героя,
  без мини-карты и постоянных таймеров.

КОД:
- act1_room.tscn полностью переписан: 73 sub_resources placeholder-кубов
  с канон-цветами hex. Добавлены: радиатор под окном, оконная рама из 5
  планок + подоконник с алоэ+чашкой, ковёр-на-стене над кроватью
  (бордовый), 2 постера (CS:GO жёлтый + Моргенштерн красный), стеллаж
  ИКЕА BILLY на западной стене с 5 книгами, старый Pentium 4 в углу
  северо-востока, банка Adrenaline + обёртка Lay's + клавиатура на столе,
  2 носка на полу. Спавн игрока сдвинут с z=1.2 на z=0.5 (был внутри
  кровати).

- dialog_manager.gd: новый HUD-API set_date_time / set_objective /
  set_money / set_weather / set_stat_alert + set_controls_hint.

- dialog_ui.tscn: 5 новых HUD-лейблов (DateTime, Objective с жёлтым
  акцентом, Money, Weather, StatsAlert) + ControlsHint всегда видимый
  тусклый.

- act1.gd: HUD теперь показывает «21 АВГ 2020 · ПТ · 10:30» вверху-слева
  и квест «◆ Распакуй подарок от бати» → «◆ Прочитай записку» →
  «◆ Возьми флешку с Шиндовс» вверху-справа.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 17:38:07 +03:00

138 lines
3.4 KiB
Text

[gd_scene load_steps=2 format=3]
[ext_resource type="Script" path="res://scripts/ui/dialog_manager.gd" id="1_dlg"]
[node name="DialogManager" type="CanvasLayer"]
layer = 10
script = ExtResource("1_dlg")
[node name="DateTimeLabel" type="Label" parent="."]
offset_left = 8.0
offset_top = 6.0
offset_right = 280.0
offset_bottom = 22.0
text = ""
modulate = Color(0.92, 0.92, 0.92, 1)
[node name="ObjectiveLabel" type="Label" parent="."]
offset_left = 340.0
offset_top = 6.0
offset_right = 632.0
offset_bottom = 22.0
text = ""
horizontal_alignment = 2
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="MoneyLabel" type="Label" parent="."]
offset_left = 340.0
offset_top = 24.0
offset_right = 632.0
offset_bottom = 40.0
text = ""
horizontal_alignment = 2
modulate = Color(0.75, 0.75, 0.75, 1)
[node name="WeatherLabel" type="Label" parent="."]
offset_left = 340.0
offset_top = 332.0
offset_right = 632.0
offset_bottom = 348.0
text = ""
horizontal_alignment = 2
modulate = Color(0.7, 0.75, 0.85, 1)
[node name="StatsLabel" type="Label" parent="."]
offset_left = 8.0
offset_top = 332.0
offset_right = 300.0
offset_bottom = 348.0
text = ""
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="ControlsHint" type="Label" parent="."]
offset_left = 0.0
offset_top = 246.0
offset_right = 640.0
offset_bottom = 260.0
text = "WASD — ходить · мышь — смотреть · ЛКМ — взаимодействие · ESC — мышь · Q — выход"
horizontal_alignment = 1
modulate = Color(0.5, 0.5, 0.5, 0.8)
[node name="PromptLabel" type="Label" parent="."]
offset_left = 0.0
offset_top = 200.0
offset_right = 640.0
offset_bottom = 220.0
text = ""
horizontal_alignment = 1
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="SubtitlePanel" type="PanelContainer" parent="."]
offset_left = 24.0
offset_top = 270.0
offset_right = 616.0
offset_bottom = 350.0
[node name="V" type="VBoxContainer" parent="SubtitlePanel"]
layout_mode = 2
[node name="Who" type="Label" parent="SubtitlePanel/V"]
layout_mode = 2
text = "[Я]"
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="Text" type="Label" parent="SubtitlePanel/V"]
layout_mode = 2
text = ""
autowrap_mode = 3
[node name="Hint" type="Label" parent="SubtitlePanel/V"]
layout_mode = 2
text = "ЛКМ или ПРОБЕЛ — дальше"
horizontal_alignment = 2
modulate = Color(0.5, 0.5, 0.5, 1)
[node name="NoteOverlay" type="Control" parent="."]
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = 640.0
offset_bottom = 360.0
mouse_filter = 0
[node name="DarkBG" type="ColorRect" parent="NoteOverlay"]
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = 640.0
offset_bottom = 360.0
color = Color(0, 0, 0, 0.75)
[node name="Center" type="CenterContainer" parent="NoteOverlay"]
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = 640.0
offset_bottom = 360.0
[node name="P" type="PanelContainer" parent="NoteOverlay/Center"]
custom_minimum_size = Vector2(420, 180)
layout_mode = 2
[node name="V2" type="VBoxContainer" parent="NoteOverlay/Center/P"]
layout_mode = 2
[node name="Title" type="Label" parent="NoteOverlay/Center/P/V2"]
layout_mode = 2
text = "Записка"
horizontal_alignment = 1
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="Text" type="Label" parent="NoteOverlay/Center/P/V2"]
layout_mode = 2
text = ""
autowrap_mode = 3
horizontal_alignment = 1
[node name="Hint" type="Label" parent="NoteOverlay/Center/P/V2"]
layout_mode = 2
text = "ЛКМ или ПРОБЕЛ — закрыть"
horizontal_alignment = 1
modulate = Color(0.5, 0.5, 0.5, 1)