Juego clásico de Piedra, Papel o Tijera creado con Angular, ideal para reforzar fundamentos del framework como componentes, servicios y manejo de eventos.
- Características
- Requisitos
- Instalación
- Uso
- Flujo de juego
- Arquitectura & estilo
- Mejoras posibles
- Contribuciones
- Licencia
- Interfaz interactiva donde el usuario elige entre piedra, papel o tijera.
- La aplicación elige la opción de la IA de forma aleatoria.
- Resultado (victoria, derrota o empate) se muestra tras cada ronda.
- Sesión con puntaje acumulado para jugador y máquina.
- Juego responsive, adaptable a móviles y tablets.
- Node.js (≥16 recomendado)
- Angular CLI (instalar con
npm i -g @angular/cli)
git clone https://github.com/FrancoDavid/game-rps-angular.git
cd game-rps-angular
npm installng serveLuego abre http://localhost:4200 en tu navegador.
-
El jugador selecciona su opción: Piedra, Papel o Tijera.
-
La IA elige al azar su jugada.
-
Se determina el resultado según las reglas clásicas:
- Piedra gana a tijera
- Tijera gana a papel
- Papel gana a piedra
-
Se actualizan los puntajes y se muestra el resultado.
-
El jugador puede reiniciar en cualquier momento.
-
App generada con Angular CLI.
-
Componentes clave:
ChoiceButtonComponentpara cada opciónResultDisplayComponentpara mostrar el resultadoScoreboardComponentpara manejar el puntaje
-
Servicio
GameServiceque controla lógica de juego (IA, comparación de jugadas, puntajes). -
Estilos simples y organizados mediante CSS/SCSS siguiendo buenas prácticas, inspirado en ejemplos como este Challenge de Angular para juegos RPS ([github.com][1], [github.com][2]).
- Añadir ciclos de juego (first to 3 wins).
- Animaciones para opciones al ser seleccionadas.
- Guardar puntaje en
localStorage. - Opción multijugador local o en red.
- Desplegar en GitHub Pages con CI/CD.
- Tests end‑to‑end con Protractor o Cypress.
¡Todas las ideas son bienvenidas! Para contribuir:
- Haz fork del repositorio.
- Crea una rama:
feature/tu-mejora. - Añade tu mejora con commits descriptivos.
- Envía un Pull Request explicando el cambio.
Distribuido bajo MIT. Consulta LICENSE para más detalles.