A failed game start leaves LOADING on screen with no error state

Aberta Para iniciantes
#18 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
78/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
typescript
Domínio
frontend, game-dev

Direção de pesquisa

Comece por shared/phaser-config.ts e shared/chrome.ts; acompanhe como startArcadeGame cria o jogo e como o carregador é removido depois da primeira renderização. Confira como os chamadores em games/*/main.ts lidam com inícios rejeitados. Implemente a mensagem de falha e o link descritos na issue e, em seguida, execute npm run typecheck e npm run build; estará concluído quando uma falha ao iniciar substituir LOADING por uma mensagem e um link para o hub.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

severity: low tech-debt

Summary

If a game throws during boot or in a scene's create, the player sees a permanent LOADING label and nothing else.

Where

  • shared/phaser-config.ts:51, shared/phaser-config.ts:61-71 (loader removed only on first render)
  • Every games/*/main.ts calls void startArcadeGame(...), discarding a rejection

Details

There is no error or unhandledrejection handler anywhere in shared/.

Steps to reproduce

  1. Throw inside any scene's create() and load the page.

Suggested fix

In startArcadeGame, wrap creation in try/catch and add a one-shot error listener that replaces the loader text with a short failure message and a link back to the arcade.

Acceptance criteria

  • A boot failure shows a message and a link to the hub instead of LOADING

Getting started

  • Relevant files: shared/phaser-config.ts, shared/chrome.ts
  • 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: low. Effort: S. audit-key: quality|shared/phaser-config.ts|startArcadeGame

Linguagem predominante
TypeScript
Estrelas
3
Forks
3
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de TMHSDigital/GH-Arcade

Todas as issues de TMHSDigital/GH-Arcade

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.