Este es un proyecto en Java basado en un juego de dados llamado "El Cerdo", que se ejecuta en el entorno de escritorio. El juego permite a los jugadores tirar dados y acumular puntos hasta alcanzar un puntaje final determinado. El objetivo es llegar a ese puntaje antes que los demás jugadores.
- Los jugadores pueden decidir el puntaje final deseado antes de comenzar el juego.
- Se puede configurar la cantidad de jugadores que participarán en la partida (hasta un máximo de 6 jugadores).
- Los nombres de los jugadores pueden ser ingresados manualmente o generados automáticamente.
- El orden de turnos se determina mediante un sorteo de dados al inicio del juego.
- Durante cada ronda, los jugadores lanzan el dado y acumulan puntos parciales.
- Si un jugador obtiene un "1" en el dado, perderá su puntaje parcial de la ronda actual.
- Los jugadores pueden decidir plantarse en cualquier momento para asegurar su puntaje parcial y evitar perderlo en caso de obtener un "1".
- El juego continúa hasta que uno de los jugadores alcanza o supera el puntaje final.
La visualización de los resultados y mensajes al usuario se realiza de manera básica mediante la utilización de JOptionPane
. Estos mensajes emergentes ofrecen información relevante sobre las jugadas realizadas, el puntaje parcial de cada jugador y las decisiones que deben tomar durante el juego.
-
Mejoras en el Código:
- Implementar manejo de excepciones para evitar errores y comportamientos inesperados.
- Refactorizar y optimizar el código para mejorar su legibilidad y mantenibilidad.
- Utilizar el patrón de diseño MVC (Modelo-Vista-Controlador) para separar la lógica del juego de la interfaz gráfica.
- Implementar pruebas unitarias para garantizar el correcto funcionamiento del juego y reducir errores.
-
Mejoras Estructurales:
- Dividir el código en paquetes para una mejor organización y modularidad.
- Crear una clase principal para ejecutar el juego y delegar la lógica a otras clases.
- Separar la lógica de entrada y salida en una clase aparte para mejorar la reusabilidad.
- Implementar una estructura de menú para facilitar la interacción con los jugadores.
-
Mejoras Visuales:
- Reemplazar el uso de
JOptionPane
con una interfaz gráfica más amigable y atractiva para el usuario. - Diseñar y agregar gráficos, imágenes o iconos para mejorar la apariencia del juego.
- Incorporar animaciones y efectos visuales para hacer la experiencia de juego más interactiva.
- Reemplazar el uso de
Luis A. Espinoza M. Correo Electrónico LinkedIn GitHub