[ Foro de C++ ]

laberintos de calabozos en c++

16-Apr-2019 05:23
jorge luis rendon morales
3 Respuestas

Objetivo: implementar el juego básico de DRAGONES Y MAZMORRAS en modo texto
y en modo gráfico, usando C++ con metodología de programación orientada a
objetos.
Hay un laberinto conformado por mazmorras interconectadas. Hay una entrada
(marcada en azul) y una salida (marcada en rosado). El héroe intenta ir de la
entrada a la salida del laberinto. Cada casilla del laberinto puede ser:
• Una pared (negro).
• Un gnomo (verde) que te hará una pregunta que tienes que contestar. Si
aciertas en la respuesta entonces desaparece y te dejará pasar. Además, te
dejará un tesoro en la casilla donde él estaba.
• Un tesoro (amarillo). Puedes cogerlo, si lo deseas. Serías tonto si no lo coges.
• Un dragón (rojo). El dragón acabará contigo a no ser que le entregues el
número de tesoros que él te diga.
• El jugador (anaranjado).
• El resto de las casillas están vacías (son blancas).
La lógica del juego debe implementarse por medio de estas clases:
• Laberinto: un espacio rectangular de un tamaño a elegir por el usuario. En
cada casilla debe haber un puntero que apunta a alguno de estos objetos. Si el
puntero es nulo, la casilla está vacía.
• Gnomo: un ser que te hace preguntas extrañas cuando estás en una casilla
adyacente. Si aciertas, te dará un tesoro y desaparecerá.
• Dragon: si entras en su casilla te devorará, a no ser que le entregues
suficientes tesoros. El número de tesoros requerido te lo dice justo cuando
estés en una casilla adyacente.
• Tesoro: un objeto que hay que recoger para contentar a los dragones. Para
coger un tesoro basta por pasar por la casilla donde está.
• Jugador: yo, o sea, el héroe del juego. Puede ir en 4 direcciones, coger
tesoros, entregar tesoros y responder preguntas.
Jugador: Angel
Tesoros recogidos: 2
Pregunta del gnomo: ¿Cuantas son 2+3 ?
G Aviso del dragón: te devoraré si no me entregas 5 tesoros.
T
G
G
G T
D
J
• HallDeLaFama: con la lista de ganadores hasta la fecha. Lo haremos en
clase, en un laboratorio.
PISTA: También necesitarás una clase abstracta llamada Objeto de donde hereden
todos los objetos que están en las casillas.
La interfase con el computador se encarga de obtener entradas del usuario real (leer
el nombre del usuario y la jugada, del teclado o mouse) y de imprimir el estado del
juego en cada momento (el laberinto con la posición del jugador, los gnomos,
dragones y tesoros. También debe presentar el nombre del jugador y el número de
tesoros recuperados. Y, al finalizar, debe presentar los mejores hasta la fecha,
pidiendo esa información al HallDeLaFama. Para ello debe usar una clase abstracta:
• DispositivoEntradaSalida. Es una clase abstracta que yo les daré. De ella
derivan dos clases concretas:
• DispositivoTerminal: lee de cin e imprime en cout). Esta clase también
se la daré yo.
• DispositivoQt: lee el mouse e imprime en una ventana.


16-Apr-2019 15:06
Nacho Cabanes (+83)

Y la duda es...?


16-Apr-2019 20:42
jorge luis rendon morales

es que estoy haciendo un curso de introducción para programadores en c++ , yo se crear los objetos cada uno , las clases , pero no se como implementar el programa de manera que guarde y cuente los tesoros que se recogen en una matriz , ni como denegar el acceso a otra zona hasta que e conteste la pegunta , toda la ayuda que puede recibir  me viene demasiado bien , incluso si  tienes wsp o facebook , nos podemos poner en contacto de una mejor manera , muchas gracias


19-Apr-2019 12:06
Nacho Cabanes (+83)

Como has abierto un nuevo hilo, te contesto en él...






(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.)