[ Foro de C++ ]

Juego en C++

27-May-2021 19:15
Invitado (Yasper)
0 Respuestas

Hola soy estudiante universitario, quisiera realizar un proyecto para presentar a finales del mes de Junio, con todo lo que he aprendido hasta el momento y decidí realizar esto:

JUEGO DE DAMAS
Las damas es un juego de mesa para dos contrincantes. El juego consiste en mover las piezas en diagonal a través de los cuadros negros (o blancos en algunas variantes) de un tablero de 64 (8x8) o 100 (10x10) cuadros.
Las piezas normales se mueven 1 cuadrado en diagonal, y si alcanzan el borde de la zona del enemigo se convierten en «reinas», que se pueden mover en diagonal hacia cualquier lado los cuadros que se desee.

REGLAS
Las damas es un juego para dos personas en un tablero de 64 casillas de 8×8 celdas (el mismo que se utiliza para jugar al ajedrez). El tablero se coloca de manera que cada jugador tenga una casilla blanca en su parte inferior derecha.

Cada jugador dispone de 12 fichas de un mismo color (unas blancas y las otras negras) que al principio de la partida se colocan en las casillas negras de las tres filas más próximas a él. El objetivo del juego de damas es capturar las fichas del oponente o acorralarlas para que no puedan realizar movimientos.
Se juega por turnos alternos. Empieza a jugar quien tiene las fichas claras (blancas). En su turno cada jugador mueve una pieza propia.

Las fichas se mueven (cuando no comen) una posición hacia delante (nunca hacia atrás) en diagonal a la derecha o a la izquierda, a una posición adyacente vacía.
Si una ficha se encuentra en una casilla diagonal contigua a otra del contrario (que esta delante) estando la posterior vacía y en turno de juego, puede saltar por encima de ésta hasta la casilla vacía, retirando la ficha del contrario del tablero.
Si después de realizado un salto (comer ficha), la ficha llega a una casilla en las mismas condiciones de la anterior, puede continuar saltando y así todas las veces en las que sea posible (captura múltiple).
Si una ficha llega hasta el borde del lado contrario del tablero, se convierte en reina. La reina se mueve también una posición en diagonal, pero hacia adelante y hacia atrás. La reina siempre tiene prioridad para comer antes que cualquiera otra ficha.

Una partida finaliza cuando se da una de las siguientes situaciones:
? Un jugador se queda sin piezas sobre el tablero, por lo tanto, ha perdido.
? Un jugador no puede mover llegado su turno, puesto que todas las fichas que le quedan están bloqueadas. Este jugador pierde

La partida también puede finalizar en tablas si ambos jugadores quedan con un número igual y muy reducido de fichas y por muchos movimientos que se hagan no se resolvería la partida.

-> Para este proyecto voy a considerar algunos puntos importantes:
1. Debe seguir todas las reglas señaladas.
2. Los colores del tablero se puede elegir al azar.
3. En el juego deben participar SOLO DOS jugadores. Cada jugador debe registrar su nombre al inicio.
4. Al registrarse un jugador debe elegir el color de sus fichas (blancas o negras).
5. Las fichas de los jugadores serán representadas por un conjunto de caracteres cada uno.
6. Al inicio del juego, el jugador tiene 12 fichas para lograr el objetivo ganar el juego.
7.  En cada jugada se mostrará el tablero de juego, así como la ubicación de todas las fichas en el mismo. Adicionalmente se debe mostrar el número de movimientos que realiza cada jugador durante el juego.
8. Gana el juego aquel jugador que cumpla las reglas indicadas o la partida termina en tablas.

-> Creo necesario considerar algunas pantallas para:
-  Presentación del juego. Ella debe contener un logo.
- Mostrar las instrucciones del juego.
-  Mostrar un banner con el nombre del ganador del juego.

El entorno será desarrollado utilizando el Visual Studio 2019 - Visual C++.

- Quisiera por favor si alguien me ayudaría a realizarlo, es muy importante para lograr avanzar a un siguiente nivel, esto me ayudará a aplicar conocimiento de condicionales múltiples, funciones, bucles, punteros, etc. y aparte lograr una calificación buena. Gracias a todos de antemano.




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)