farming-simulator/scenes/components/dialog_ui.tscn
Dmitrii Bykov 7bda9c6ca1
Some checks failed
Godot CI / Import + smoke test (push) Failing after 13s
fix: auto-flow подарок, отец 180°, спавн кухни, лицензия, меню «ДРОП»
1. ОТЕЦ (поворот по фидбеку):
   - Initial Transform3D повёрнут на 180° от предыдущего — теперь
     лицом к игроку во время диалога.
   - При уходе ещё +180° поворот → спиной к игроку → шагает к двери
     не пятясь.

2. AUTO-FLOW КЛИКА ПО ПОДАРКУ:
   - Раньше: клик подарок → молча появляется системник → клик
     записку → overlay → клик дальше → монолог → ... Игрок терялся
     между кликами, думал что баг (тёмный экран).
   - Теперь: ОДИН клик подарка запускает ЦЕПОЧКУ:
     «Системник. И записка сверху.» → overlay записки → «Бать ну
     ты красавчик» → отец прощается → отец уходит → флешка готова.
     Игрок просто кликает «дальше» на каждой реплике.
   - note.set_interactable(false) — клик отдельно не нужен.
   - _on_note_interacted остался как пустой callback для совместимости.

3. КУХНЯ — СПАВН:
   - Был (0.5, 0, 1.0) — попадал внутрь стола (z=0.35..1.05).
     Игрок застревал.
   - Теперь (-0.5, 0, 1.2) — у двери возврата в комнату, далеко от
     стола. Спавнится свободно.

4. КУХНЯ — 2-Я ДВЕРЬ:
   - User спросил «куда отец ушёл — нет других дверей». Добавил
     визуальную не-интерактивную дверь на северной стене
     (Label3D «← прихожая»). Логически отец вышел через коридор.

5. ЛИЦЕНЗИЯ — НАЧАЛО:
   - User: «начинается с п.7, а где 1-6». Добавил 7 нормально-
     юридических пунктов 1.1-6.8 (про лицензию, неисключительные
     права, дизассемблирование, «как есть», ответственность,
     обязательства Пользователя) — ПЕРЕД ШИЗО-пунктами.
   - Теперь читается как настоящее ЛС: нормальное-нормальное-
     нормальное-ШИЗО-ШИЗО-ШИЗО, нарастающий абсурд.

6. HUD-ПОДСКАЗКА АВТО-ФЕЙД:
   - Timer в DialogManager (one_shot, 8 сек по умолчанию).
   - set_controls_hint() запускает таймер.
   - По истечении — tween modulate.a 0.8 → 0.0 за 1.5 сек.
   - Подсказка управления больше не висит вечно.

7. ГЛАВНОЕ МЕНЮ — НАЗВАНИЕ:
   - Было: «FARMING SIMULATOR / Подросток-фермер CS/TF2/PUBG
     кейсов · 2020-2026» (рабочее, пресно).
   - Стало: «ДРОП» (32px, жёлтый акцент) / «Лето двадцатого года.»
     (12px, серый). Лаконично, поэтично.

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

214 lines
5.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 = 300.0
offset_bottom = 22.0
mouse_filter = 2
theme_override_font_sizes/font_size = 11
text = ""
modulate = Color(0.92, 0.92, 0.92, 1)
[node name="ObjectiveLabel" type="Label" parent="."]
anchor_right = 1.0
offset_left = -300.0
offset_top = 6.0
offset_right = -8.0
offset_bottom = 22.0
mouse_filter = 2
theme_override_font_sizes/font_size = 11
text = ""
horizontal_alignment = 2
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="MoneyLabel" type="Label" parent="."]
anchor_right = 1.0
offset_left = -300.0
offset_top = 24.0
offset_right = -8.0
offset_bottom = 40.0
mouse_filter = 2
theme_override_font_sizes/font_size = 11
text = ""
horizontal_alignment = 2
modulate = Color(0.75, 0.75, 0.75, 1)
[node name="WeatherLabel" type="Label" parent="."]
anchor_left = 0.5
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 0.0
offset_top = -160.0
offset_right = -8.0
offset_bottom = -144.0
mouse_filter = 2
theme_override_font_sizes/font_size = 11
text = ""
horizontal_alignment = 2
modulate = Color(0.7, 0.75, 0.85, 1)
[node name="StatsLabel" type="Label" parent="."]
anchor_top = 1.0
anchor_bottom = 1.0
offset_left = 8.0
offset_top = -160.0
offset_right = 300.0
offset_bottom = -144.0
mouse_filter = 2
theme_override_font_sizes/font_size = 11
text = ""
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="ControlsHint" type="Label" parent="."]
anchor_right = 1.0
offset_left = 0.0
offset_top = 28.0
offset_right = 0.0
offset_bottom = 42.0
mouse_filter = 2
theme_override_font_sizes/font_size = 10
text = "WASD ходить · мышь смотреть · ЛКМ взаимодействие · ESC меню · Q сохранить и выйти"
horizontal_alignment = 1
modulate = Color(0.45, 0.45, 0.45, 0.8)
[node name="Crosshair" type="Control" parent="."]
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -4.0
offset_top = -4.0
offset_right = 4.0
offset_bottom = 4.0
mouse_filter = 2
[node name="OuterRing" type="ColorRect" parent="Crosshair"]
offset_left = 0.0
offset_top = 0.0
offset_right = 8.0
offset_bottom = 8.0
mouse_filter = 2
color = Color(0, 0, 0, 0.4)
[node name="CenterDot" type="ColorRect" parent="Crosshair"]
offset_left = 3.0
offset_top = 3.0
offset_right = 5.0
offset_bottom = 5.0
mouse_filter = 2
color = Color(1, 1, 1, 0.85)
[node name="PromptLabel" type="Label" parent="."]
anchor_left = 0.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = 0.0
offset_top = 16.0
offset_right = 0.0
offset_bottom = 32.0
mouse_filter = 2
theme_override_font_sizes/font_size = 12
text = ""
horizontal_alignment = 1
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="SubtitlePanel" type="PanelContainer" parent="."]
anchor_left = 0.0
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 16.0
offset_top = -148.0
offset_right = -16.0
offset_bottom = -8.0
mouse_filter = 2
[node name="V" type="VBoxContainer" parent="SubtitlePanel"]
layout_mode = 2
mouse_filter = 2
theme_override_constants/separation = 4
[node name="Who" type="Label" parent="SubtitlePanel/V"]
layout_mode = 2
mouse_filter = 2
theme_override_font_sizes/font_size = 11
text = "[Я]"
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="Text" type="RichTextLabel" parent="SubtitlePanel/V"]
custom_minimum_size = Vector2(580, 80)
layout_mode = 2
size_flags_vertical = 3
mouse_filter = 2
bbcode_enabled = true
text = ""
fit_content = true
scroll_active = false
autowrap_mode = 3
theme_override_font_sizes/normal_font_size = 12
theme_override_font_sizes/bold_font_size = 12
theme_override_font_sizes/italics_font_size = 12
[node name="Hint" type="Label" parent="SubtitlePanel/V"]
layout_mode = 2
mouse_filter = 2
theme_override_font_sizes/font_size = 10
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
mouse_filter = 0
[node name="DarkBG" type="ColorRect" parent="NoteOverlay"]
anchor_right = 1.0
anchor_bottom = 1.0
color = Color(0, 0, 0, 0.78)
[node name="Center" type="CenterContainer" parent="NoteOverlay"]
anchor_right = 1.0
anchor_bottom = 1.0
[node name="P" type="PanelContainer" parent="NoteOverlay/Center"]
custom_minimum_size = Vector2(460, 200)
layout_mode = 2
[node name="V2" type="VBoxContainer" parent="NoteOverlay/Center/P"]
layout_mode = 2
theme_override_constants/separation = 6
[node name="Title" type="Label" parent="NoteOverlay/Center/P/V2"]
layout_mode = 2
theme_override_font_sizes/font_size = 13
text = "Записка"
horizontal_alignment = 1
modulate = Color(0.94, 0.71, 0.1, 1)
[node name="Text" type="RichTextLabel" parent="NoteOverlay/Center/P/V2"]
custom_minimum_size = Vector2(440, 110)
layout_mode = 2
size_flags_vertical = 3
bbcode_enabled = true
text = ""
fit_content = true
autowrap_mode = 3
theme_override_font_sizes/normal_font_size = 13
theme_override_font_sizes/bold_font_size = 13
[node name="Hint" type="Label" parent="NoteOverlay/Center/P/V2"]
layout_mode = 2
theme_override_font_sizes/font_size = 10
text = "ЛКМ или ПРОБЕЛ — закрыть"
horizontal_alignment = 1
modulate = Color(0.5, 0.5, 0.5, 1)