El Game of Life es una implementación del famoso juego de Conway's Game of Life usando una arquitectura hexagonal y Python. El proyecto utiliza Pygame para la visualización y sigue las mejores prácticas de desarrollo de software.
- 🎮 Implementación del juego de la vida con reglas clásicas
- 🎨 Interfaz gráfica interactiva
- ⏱️ Simulación en tiempo real
- 📊 Estadísticas y métricas en tiempo real
- 🔄 Configuración personalizable
- 💾 Estado persistente
- Python 3.8+
- Rye (gestor de dependencias)
- Pygame
- Git
-
Clonar el repositorio:
git clone https://github.com/SENTUstudio/game-of-life.git cd game-of-life -
Instalar dependencias:
rye install
-
Configurar pre-commit:
pre-commit install
-
Teclado
- Espacio: Play/Pause
- P: Paso a paso
- C: Limpiar tablero
- R: Reiniciar simulación
-
Mouse
- Click Izquierdo: Activar célula
- Click Derecho: Desactivar célula
- Scroll: Cambiar tamaño de celdas
- Drag: Seleccionar área
- Osciladores: Pulsar, Penta-decathlon, Blinker
- Naves Espaciales: Glider, Lightweight Spaceship, Middleweight Spaceship
- Estabilizadores: Block, Beehive, Loaf
# game_config.json
{
"board": {
"width": 80,
"height": 45
},
"simulation": {
"fps": 60,
"step_time": 0.1
},
"rendering": {
"cell_size": 10,
"background_color": [0, 0, 0],
"cell_color": [255, 255, 255]
}
}-
Crear una rama para tu funcionalidad:
git checkout -b feature/nombre-funcionalidad
-
Hacer los cambios necesarios
-
Ejecutar tests:
rye run pytest
-
Formatear código:
rye run black . -
Hacer commit:
git add . git commit -m "feat: descripción del cambio"
-
Crear Pull Request
La documentación completa está disponible en:
Este proyecto está bajo la licencia MIT. Consulta el archivo LICENSE para más detalles.
- SENTUstudio
