Let players change settings from inside a game

オープン
#45 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
58/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
typescript, vite

調査の方向性

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.

索引モデルが issue の本文から書いたものです。

説明

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

主要言語
TypeScript
スター
3
フォーク
3
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

TMHSDigital/GH-Arcade のほかの issue

TMHSDigital/GH-Arcade の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。