Offer an alternating-turns two-player mode in the solo games

未关闭
#113 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
活跃
技术栈
typescript
领域
game-dev

调研方向

Start in shared/scenes.ts at endRun, showMatchResult and GameOverData, then read buildMenu to see how menu options are passed into a game's restart data. Pick one game (Stack or Runner) and read its MenuScene and GameScene to see how a run ends. Done means that game shows a TURNS option, plays two runs back to back with a match result, and leaves high scores, dailies and trophies unchanged. Confirm the behaviour with npm test.

由索引模型根据 Issue 内容生成。

描述

enhancement severity: low

Summary

Offer an alternating-turns two-player mode (pass the controller) in the solo games.

Where

  • README.md:371 (roadmap: "More two-player modes")
  • shared/scenes.ts:127-136 (endRun), shared/scenes.ts:163-195 (showMatchResult), shared/scenes.ts:197-206 (GameOverData)

Details

Only Snake, Pong and Siege have a two-player mode. Every solo game already ends through the shared endRun with a score, and a shared two-player result screen exists, but nothing connects them.

Proposal

Add an opt-in turns: true menu mode in buildMenu. When it is set, endRun stores player 1's score and restarts the game with { ...restartData, turn: 2 } behind a "PLAYER 2 READY" banner; after turn 2 it calls showMatchResult with both scores. Turn runs record a play but skip high scores and trophies, as two-player matches already do. Start with one game (Stack or Runner) to prove it.

Who benefits

Two people sharing one device in the seven games with no two-player option (Breakout, Stack, Astro, Runner, Hop, Maze, Pinball).

Acceptance criteria

  • One game offers TURNS, plays two runs back to back and shows a match result.
  • Turn runs do not change high scores, dailies or trophies.

Getting started

  • Relevant files: shared/scenes.ts, one game's MenuScene and GameScene
  • How to run tests: npm test

Filed by repo-audit/full-audit at de2b25b. Severity: low. Effort: L. audit-key: enhancement|shared/scenes.ts|alternating-turns

主要语言
TypeScript
星标
3
派生
3
平均合并
8 小时 13 分钟
30 天内合并 PR
2

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

TMHSDigital/GH-Arcade 的其他 Issue

查看 TMHSDigital/GH-Arcade 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。