Симулятор подростка-фермера CS/TF2/PUBG-кейсов 2020-2022. Pre-alpha.
Find a file
Dmitrii Bykov f8040fb399
Some checks failed
Godot CI / Import + smoke test (push) Failing after 13s
полная мета-структура игры: pause + settings + save/load
PAUSE-МЕНЮ (autoload PauseMenu CanvasLayer):
- ESC во время геймплея открывает оверлей с тёмным фоном
  и центральной панелью в Шиндовс-стиле.
- 4 кнопки: Продолжить / Настройки / В главное меню /
  Сохранить и выйти.
- process_mode = ALWAYS чтобы работать при tree.paused = true.
- При закрытии меню в 3D-сценах автоматически возвращает
  Input.mouse_mode = CAPTURED.
- В главном меню pause не активируется (_can_pause false).
- set_input_as_handled блокирует FPV-контроллер от перехвата
  ESC одновременно.

НАСТРОЙКИ (под-панель в Pause-меню):
- Слайдер «Чувствительность мыши» 0.001-0.010 (по умолчанию 0.0025).
- Слайдер «Громкость» 0-100% — связан с AudioServer Bus 0 Master
  через linear_to_db (audio ассетов пока нет, но шкала рабочая).
- Кнопки Назад / Применить. Применить пишет в user://settings.json.
- settings.json грузится автоматически при старте GameState._ready.

SAVE/LOAD:
- GameState.save_game(scene_path) → user://save01.json в JSON
  с player_name, прогрессом актов 1-2, ачивками, текущей сценой.
- GameState.load_game() читает и восстанавливает state, заполняет
  last_scene_path для перехода.
- has_save() / delete_save() помощники.
- Кнопка «Продолжить» в главном меню активна только если есть
  save и грузит игрока в сохранённую сцену.
- Кнопка «Новая игра» удаляет старый save и сбрасывает state.

AUTO-SAVE:
- При закрытии окна через X (NOTIFICATION_WM_CLOSE_REQUEST) —
  save_game перед quit.
- Кнопка Q в FPV-контроллере — save+quit.
- Кнопка «Сохранить и выйти» в pause-меню — save+quit.
- Кнопка «В главное меню» — save перед переходом.

FPV-КОНТРОЛЛЕР:
- mouse_sensitivity больше не локальное @export, читается из
  GameState.mouse_sensitivity каждый mouse_motion event
  (применяется живьём после Apply).
- _input → _unhandled_input чтобы PauseMenu мог перехватить ESC
  через set_input_as_handled.
- Убран ESC-toggle захвата мыши (теперь это делает PauseMenu).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 18:28:58 +03:00
.forgejo/workflows ci: фикс — убрал container: ubuntu:22.04 (не имел node для actions/checkout) 2026-05-24 15:30:48 +03:00
canon canon: PACING.md — бюджет 4+ часа прохождения 2026-05-24 17:53:49 +03:00
scenes полная мета-структура игры: pause + settings + save/load 2026-05-24 18:28:58 +03:00
scripts полная мета-структура игры: pause + settings + save/load 2026-05-24 18:28:58 +03:00
.gitignore baseline: канон + Godot 4.6 скелет + сценарий пролога v2 2026-05-24 14:27:33 +03:00
project.godot полная мета-структура игры: pause + settings + save/load 2026-05-24 18:28:58 +03:00
Игра для Steam.txt baseline: канон + Godot 4.6 скелет + сценарий пролога v2 2026-05-24 14:27:33 +03:00
Пролог_Первый_день.md canon: FMS -> FSM Panel глобально + CHANNELS.md под user-скрины 2026-05-24 16:27:06 +03:00