Skip to content

Truco: mesa jugable en el frontend - #11

Merged
alva-p merged 2 commits into
mainfrom
truco-mesa
Oct 25, 2026
Merged

alva-p merged 2 commits into
mainfrom
truco-mesa

Conversation

@alva-p

@alva-p alva-p commented Oct 25, 2026

Copy link
Copy Markdown
Collaborator

Sobre #10 (mazo), que va sobre #9 (motor + server). Con esto el truco se puede jugar en el sitio.

Qué hay

  • Crear mesa: selector UNO / Truco. Para el truco se eligen el modo (1v1, 2v2, 3v3) y los puntos (15 o 30). Las mesas pagas no aparecen porque el truco todavía no tiene.
  • Lista de mesas: cada mesa muestra su juego, por ejemplo 🗡️ Truco · 2v2 · a 30 o 🃏 UNO.
  • Sala de espera por equipos: los equipos salen del orden de llegada (asientos pares contra impares). El botón de empezar se habilita recién con la mesa llena.
  • Mesa (TrucoTable + useTruco):
    • Cada jugador deja delante suyo sus cartas jugadas.
    • Se ven las cartas del compañero; de los rivales, solo el dorso.
    • La botonera ofrece únicamente las jugadas que el motor da como legales. Irse al mazo pide un segundo toque.
    • Globos con los cantos, reloj de turno, bazas ganadas y perdidas, y tanteador con malas y buenas en las partidas a 30.
    • Al terminar cada mano se muestra qué sumó cada equipo y las cartas del envido ganador. Al final de la partida aparece un cartel con el resultado.
    • En pica-pica se atenúa a los que no juegan ese duelo.
  • Abandono: levantarse en plena partida la pierde para su equipo (Truco.abandon en el motor y lobby:leave en el server). Antes, los que quedaban tenían que esperar que el reloj mandara al ausente al mazo mano tras mano. Una desconexión sigue guardando el asiento.
  • Textos en español e inglés.

Pruebas

  • Motor: npm run test:truco pasa los 20 tests (uno nuevo, para el abandono).
  • Server: test:truco (con el caso del que se va), test:turns y test:security pasan.
  • Navegador, con Playwright contra el server local y Vite:
    • Partidas completas en 1v1 a 15, 2v2 a 15 y 3v3 a 30 (incluido el pica-pica), en escritorio y celular.
    • Recargar la página en plena partida, levantarse de la mesa y una mesa de UNO para confirmar que sigue igual.
  • tsc y build OK. El lint tiene los mismos 15 errores que ya había en main; ninguno nuevo.

🤖 Generated with Claude Code

- Crear mesa: selector UNO/Truco, modo 1v1/2v2/3v3 y a 15 o 30 (sin mesas pagas)
- Lista: etiqueta del juego en cada mesa
- Sala de espera por equipos; arranca con la mesa llena
- Mesa: cartas jugadas delante de cada uno, cantos según las jugadas legales,
  globos, tanteador con malas y buenas, resultado de la mano y cartel final
- Levantarse en plena partida la pierde para su equipo (motor + server)
- Textos en español e inglés

Co-Authored-By: Claude <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
chain-table Ready Ready Preview Oct 25, 2026 4:21am UTC

- Cuadraditos de 5 fósforos (cuatro lados y la diagonal); a 30, una raya separa malas de buenas
- Tablero de madera en la esquina libre de la mesa; en el celu, arriba de la mesa
- Test: en el 1v1 no se ve la mano del rival

Co-Authored-By: Claude <noreply@anthropic.com>
@alva-p
alva-p changed the base branch from truco-mazo to main October 25, 2026 04:21
@alva-p
alva-p merged commit 70d5476 into main Oct 25, 2026
4 checks passed

This branch was successfully deployed

1 active deployment
Preview — 1e770f6c Deployed Oct 25, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant