fix: auto-flow подарок, отец 180°, спавн кухни, лицензия, меню «ДРОП»
Some checks failed
Godot CI / Import + smoke test (push) Failing after 13s

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>
This commit is contained in:
Dmitrii Bykov 2026-05-24 19:46:20 +03:00
parent d6acefdfa8
commit 7bda9c6ca1
7 changed files with 125 additions and 67 deletions

View file

@ -14,6 +14,8 @@ signal advanced
@onready var controls_hint: Label = $ControlsHint
@onready var crosshair: Control = $Crosshair
var _hint_timer: Timer
@onready var date_time_label: Label = $DateTimeLabel
@onready var objective_label: Label = $ObjectiveLabel
@onready var money_label: Label = $MoneyLabel
@ -33,11 +35,21 @@ func _ready() -> void:
stats_label.visible = false
crosshair.visible = true
_hint_timer = Timer.new()
_hint_timer.one_shot = true
add_child(_hint_timer)
_hint_timer.timeout.connect(_fade_hint)
func set_crosshair_visible(v: bool) -> void:
crosshair.visible = v
func _fade_hint() -> void:
var t: Tween = create_tween()
t.tween_property(controls_hint, "modulate:a", 0.0, 1.5)
func say(who: String, line: String) -> Signal:
who_label.text = "[%s]" % who
text_label.text = line
@ -120,12 +132,17 @@ func set_stat_alert(text: String) -> void:
stats_label.visible = true
func set_controls_hint(text: String) -> void:
func set_controls_hint(text: String, auto_hide_after: float = 8.0) -> void:
if _hint_timer != null:
_hint_timer.stop()
if text == "":
controls_hint.visible = false
return
controls_hint.text = text
controls_hint.visible = true
controls_hint.modulate = Color(0.45, 0.45, 0.45, 0.8)
if auto_hide_after > 0 and _hint_timer != null:
_hint_timer.start(auto_hide_after)
func _input(event: InputEvent) -> void: