Auxilio por favor
Tengo que hacer el juego de sokoban en lenguaje c para aprobar programación ¿alguien sabe donde puedo conseguir el código fuente del juego?
Si lo saben díganmelo por favor.
Saludos a todos !
Trabajo Práctico
Programación I
"Juego Sokoban"
Objetivo :
Aplicar los conocimientos de programación para diseñar e implementar un juego interactivo.
Descripción del Problema :
Se procesa un tablero, el laberinto, donde el jugador empuja bloques hasta sus destinos. Este tablero está bordeado por paredes y tiene obstáculos al interior. El jugador puede moverse a una casilla contigua en cada turno, si no está obstruida. De la misma manera, el jugador que esté frente a un bloque, si hay un espacio después del bloque, puede empujarlo en una jugada. El objetivo del juego es haber llegado a empujar a todos los bloques hasta sus casillas de destino.
Al cargar el programa, las paredes del contorno deben construirse por default. Inmediatamente, se entra al modo "obstaculizar"; para ello, se debe desplegar el tablero en pantalla y permitir que el usuario vaya navegando por el, dejando obstáculos (presionando ENTER) en su camino. El usuario presiona ESC para terminar de obstaculizar.
Posteriormente, el programa entra al modo "repartir bloques". Durante esta acción, el programa deposita N bloques (cada bloque ocupa una posición) generando las coordenadas para tal depósito al azar (random).
Finalmente, y de manera similar a la repartición de bloques, el programa marca N posiciones como "destinos" para los bloques (un destino para cada bloque en juego).
Terminado el escenario, el juego comienza situando al jugador en una casilla central (no ocupada)
Elegida al azar.
El juego consiste en un bucle que termina cuando todos los bloques hayan sido empujados hasta sus destinos o el jugador desista presionando una tecla convenida de fin de juego.
En cada interacción del bucle, el jugador puede moverse una posición a una celda vecina vacía unicamente; o puede tratar de empujar un bloque una posición, si tal posición está libre.
Requisitos :
. El tablero de juego debe tener dimensiones variables. Al comenzar el juego, el usuario decide con qué dimensiones quiere jugar.
. Deben manejarse un par de coordenadas para el jugador.
. Se puede capturar la tecla presionada por el usuario (cursores, ENTER) con la función getch()
. Tras un movimiento de un jugador, para simular la animación, se debe imprimir un blanco en su posición anterior y luego imprimir al jugador en su nueva posición.
. La configuración del tablero (obstáculos, bloques, destinos, posición del jugador) pueden manejarse en una matriz donde cada elemento contenga el código de su contenido (obstáculos, bloques, etc.).
. El despliegue en pantalla del tablero y los sucesos serían fiel reflejo de lo registrado en la matriz.
. El programa debe ser codificado y defendido en lenguaje C (debe tener comentarios explicativos en cada función).
. El informe debe incluir el análisis realizado, el diseño y el código fuente.
Si lo saben díganmelo por favor.
Saludos a todos !
Trabajo Práctico
Programación I
"Juego Sokoban"
Objetivo :
Aplicar los conocimientos de programación para diseñar e implementar un juego interactivo.
Descripción del Problema :
Se procesa un tablero, el laberinto, donde el jugador empuja bloques hasta sus destinos. Este tablero está bordeado por paredes y tiene obstáculos al interior. El jugador puede moverse a una casilla contigua en cada turno, si no está obstruida. De la misma manera, el jugador que esté frente a un bloque, si hay un espacio después del bloque, puede empujarlo en una jugada. El objetivo del juego es haber llegado a empujar a todos los bloques hasta sus casillas de destino.
Al cargar el programa, las paredes del contorno deben construirse por default. Inmediatamente, se entra al modo "obstaculizar"; para ello, se debe desplegar el tablero en pantalla y permitir que el usuario vaya navegando por el, dejando obstáculos (presionando ENTER) en su camino. El usuario presiona ESC para terminar de obstaculizar.
Posteriormente, el programa entra al modo "repartir bloques". Durante esta acción, el programa deposita N bloques (cada bloque ocupa una posición) generando las coordenadas para tal depósito al azar (random).
Finalmente, y de manera similar a la repartición de bloques, el programa marca N posiciones como "destinos" para los bloques (un destino para cada bloque en juego).
Terminado el escenario, el juego comienza situando al jugador en una casilla central (no ocupada)
Elegida al azar.
El juego consiste en un bucle que termina cuando todos los bloques hayan sido empujados hasta sus destinos o el jugador desista presionando una tecla convenida de fin de juego.
En cada interacción del bucle, el jugador puede moverse una posición a una celda vecina vacía unicamente; o puede tratar de empujar un bloque una posición, si tal posición está libre.
Requisitos :
. El tablero de juego debe tener dimensiones variables. Al comenzar el juego, el usuario decide con qué dimensiones quiere jugar.
. Deben manejarse un par de coordenadas para el jugador.
. Se puede capturar la tecla presionada por el usuario (cursores, ENTER) con la función getch()
. Tras un movimiento de un jugador, para simular la animación, se debe imprimir un blanco en su posición anterior y luego imprimir al jugador en su nueva posición.
. La configuración del tablero (obstáculos, bloques, destinos, posición del jugador) pueden manejarse en una matriz donde cada elemento contenga el código de su contenido (obstáculos, bloques, etc.).
. El despliegue en pantalla del tablero y los sucesos serían fiel reflejo de lo registrado en la matriz.
. El programa debe ser codificado y defendido en lenguaje C (debe tener comentarios explicativos en cada función).
. El informe debe incluir el análisis realizado, el diseño y el código fuente.
1 respuesta
Respuesta de molk
-1