Let players change settings from inside a game

Đang mở
#45 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
58/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
typescript, vite
Lĩnh vực
accessibility, frontend

Hướng nghiên cứu

Read shared/pause.ts and shared/chrome.ts to trace the pause menu and toolbar, then inspect src/hub/settings-panel.ts and index.html for the existing settings controls and restart behavior. Run npm run dev to try the game with keyboard, gamepad, and touch. Done means players can change volume and mute while paused, and change reduced motion and palette without returning to the hub; verify with npm run typecheck and npm run build.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement help wanted severity: high

Summary

Volume, reduced motion and palette can only be changed on the hub. A player who finds a game too loud or too flashy has to leave, lose the run, change the setting and come back. Touch players have no mute control at all.

Where

  • shared/pause.ts:55-60 (pause menu: RESUME, RESTART, MAIN MENU, ARCADE)
  • shared/pause.ts:76-79 (mute is keyboard or gamepad only)
  • shared/chrome.ts:9-50 (toolbar adds Pause and Fullscreen only)
  • index.html:96 ("apply the next time you start a game")

Proposal

Add a Settings entry to the pause menu, or a settings button in the game toolbar that reuses the hub panel markup. Volume and mute can apply live, since the sound module reads settings on every call. Reduced motion and palette can be labelled "applies on restart", or the page can reload on change.

Who benefits

Every player, most of all touch players and anyone sensitive to flashing or sound.

Open questions

Phaser overlay or DOM dialog. A DOM dialog lets the hub panel be reused.

Acceptance criteria

  • Volume and mute can be changed while paused, by keyboard, gamepad and touch
  • Reduced motion and palette can be changed without returning to the hub

Getting started

  • Relevant files: shared/pause.ts, shared/chrome.ts, src/hub/settings-panel.ts, index.html
  • Run locally: npm install, then npm run dev
  • Checks: npm run typecheck and npm run build (there is no test suite yet)
  • Related docs: README.md

Filed by repo-audit/full-audit at b001f5d. Severity: high. Effort: M. audit-key: enhancement|shared/pause.ts|PauseController.menu

Ngôn ngữ chính
TypeScript
Star
3
Fork
3
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của TMHSDigital/GH-Arcade

Tất cả issue của TMHSDigital/GH-Arcade

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.