hola amigos soy nuevo en el foro y necesito ayuda para un trabajo.Ojala me puedan a yudar con pautas
Reglas del Juego
Usted debe crear un programa en Visual C++ para desarrollar el juego "Combate de Fragatas" que se describe a continuación:
• Jugadores: Dos fragatas están luchando por el control de los océanos. Una nave es controlada por el computador, la otra es controlada por el usuario.
• Campo de batalla: Este será simulado en un tablero cuadrado de 10 x 10 casilleros
• Fragata: Esta tiene cuatro atributos básicos y cada atributo tiene un puntaje que será determinado al momento de la creación de la nave. A continuación se describe los atributos y el rango de puntaje que pueden tomar:
Atributo Mínimo Máximo Significado
Acciones 1 6 Indica el número de acciones que la nave puede realizar por turno.
Blindaje 1 8 Indica el daño que la nave puede resistir antes de ser destruida por la nave enemiga
Potencia 1 4 Indica el daño que la nave puede perpetrar al atacar a una nave enemiga
Alcance 1 6 Indica el numero de casillas puede alcanzar el disparo de una nave hacia otra
Cada fragata, tanto la del usuario como la del computador, pueden tener un total de 15 puntos en conjunto en sus atributos.
Ejemplo:
Fragata usuario: Acciones –> 6, Blindaje –> 1, Potencia –> 4, Alcance –> 4
Fragata computador: Acciones –> 3, Blindaje –> 7, Potencia –> 3, Alcance –> 2
• Orden: Para saber quien empieza el juego se determinada aleatoriamente.
• Partida: Inicialmente las fragatas aparecen en los extremos opuestos del tablero (Oeste y Este).
• Movimiento: Cada fragata puede girar a la izquierda o a la derecha, avanzar de frente o no moverse. Esta no puede moverse diagonalmente o en retroceso. Al girar el indicador de dirección de las naves cambia.
• Avance: Cada fragata solo se puede avanzar en la dirección que esta mirando (Norte, Sur, Este, Oeste).
• Dirección de Ataque: Cada fragata puede disparar solo a la derecha o izquierda de la dirección que esta mirando. (Ejemplo: si esta mirando hacia el Norte, la nave puede disparar solamente al Este u Oeste o si está mirando hacia el Este, la nave solo puede disparar al Sur o Norte).
• Turno: En cada turno el usuario realiza una secuencia de acciones que la nave tiene permitido en el atributo "Acciones".
• Acciones: Para el turno de la nave controlada por el usuario, las acciones son ingresadas una tras otra por el usuario. Para el turno de la nave controlada por el computador, esta calcula sus acciones basadas en el número de acciones que esta tiene. Cada nave entonces ejecuta la lista de sus acciones empezando desde la primera, una acción a la vez.
• Ataque: Cuando una nave abre fuego, esta puede golpear a la nave enemiga si el número de casilleros (empezando desde el casillero adelante de la nave) contados hasta donde la nave enemiga esta, es menor o igual al "Alcance" de sus armas. El daño producido en el "Blindaje" de la nave enemiga es igual al valor de la "Potencia". Un ataque solo es posible si el enemigo está dentro del alcance.
• Fragata Deshabilitada: Si durante cualquier turno, alguna nave que fue creada con un blindaje mayor a 1 y llega a tener un blindaje igual a 1, esta estará deshabilitada y no podrá moverse mas. Solo podrá ceder su turno. Si la nave fue creada con blindaje 1, no existirá este estado para dicha nave.
• Fragata Hundida: Cuando una nave tenga un "Blindaje" igual o menor a 0, el barco se hunde.
Requerimientos Básicos que deben ser considerados
Debe tener una matriz para manejar el tablero de juego.
Dibujar el tablero en la pantalla, incluyendo un símbolo para el barco del usuario y del computador.
La información ingresada por el usuario debe ser validada.
Los movimientos del usuario deben ser ingresados mediante el teclado. Usted es libre de elegir las combinaciones de teclas que desea usar para las acciones y movimientos.
Debe contener obligatoriamente funciones, cada una debe ser lógicamente creada.
La fragata controlada por el computador genera un número aleatorio de acciones y disparos, dentro del número de "Acciones" que le son permitidas en su turno.
Cuando la fragata controlada por el usuario este dentro del rango de alcance de la fragata controlada por el computador, esta ultima ya no realizara acciones de avance aleatorio y solo atacará a la nave del usuario.
Ejemplo1: Nave PC, con alcance 4 y dirección Norte
Ejemplo2: Nave PC, con alcance 2 y dirección Oeste
Reglas del Juego
Usted debe crear un programa en Visual C++ para desarrollar el juego "Combate de Fragatas" que se describe a continuación:
• Jugadores: Dos fragatas están luchando por el control de los océanos. Una nave es controlada por el computador, la otra es controlada por el usuario.
• Campo de batalla: Este será simulado en un tablero cuadrado de 10 x 10 casilleros
• Fragata: Esta tiene cuatro atributos básicos y cada atributo tiene un puntaje que será determinado al momento de la creación de la nave. A continuación se describe los atributos y el rango de puntaje que pueden tomar:
Atributo Mínimo Máximo Significado
Acciones 1 6 Indica el número de acciones que la nave puede realizar por turno.
Blindaje 1 8 Indica el daño que la nave puede resistir antes de ser destruida por la nave enemiga
Potencia 1 4 Indica el daño que la nave puede perpetrar al atacar a una nave enemiga
Alcance 1 6 Indica el numero de casillas puede alcanzar el disparo de una nave hacia otra
Cada fragata, tanto la del usuario como la del computador, pueden tener un total de 15 puntos en conjunto en sus atributos.
Ejemplo:
Fragata usuario: Acciones –> 6, Blindaje –> 1, Potencia –> 4, Alcance –> 4
Fragata computador: Acciones –> 3, Blindaje –> 7, Potencia –> 3, Alcance –> 2
• Orden: Para saber quien empieza el juego se determinada aleatoriamente.
• Partida: Inicialmente las fragatas aparecen en los extremos opuestos del tablero (Oeste y Este).
• Movimiento: Cada fragata puede girar a la izquierda o a la derecha, avanzar de frente o no moverse. Esta no puede moverse diagonalmente o en retroceso. Al girar el indicador de dirección de las naves cambia.
• Avance: Cada fragata solo se puede avanzar en la dirección que esta mirando (Norte, Sur, Este, Oeste).
• Dirección de Ataque: Cada fragata puede disparar solo a la derecha o izquierda de la dirección que esta mirando. (Ejemplo: si esta mirando hacia el Norte, la nave puede disparar solamente al Este u Oeste o si está mirando hacia el Este, la nave solo puede disparar al Sur o Norte).
• Turno: En cada turno el usuario realiza una secuencia de acciones que la nave tiene permitido en el atributo "Acciones".
• Acciones: Para el turno de la nave controlada por el usuario, las acciones son ingresadas una tras otra por el usuario. Para el turno de la nave controlada por el computador, esta calcula sus acciones basadas en el número de acciones que esta tiene. Cada nave entonces ejecuta la lista de sus acciones empezando desde la primera, una acción a la vez.
• Ataque: Cuando una nave abre fuego, esta puede golpear a la nave enemiga si el número de casilleros (empezando desde el casillero adelante de la nave) contados hasta donde la nave enemiga esta, es menor o igual al "Alcance" de sus armas. El daño producido en el "Blindaje" de la nave enemiga es igual al valor de la "Potencia". Un ataque solo es posible si el enemigo está dentro del alcance.
• Fragata Deshabilitada: Si durante cualquier turno, alguna nave que fue creada con un blindaje mayor a 1 y llega a tener un blindaje igual a 1, esta estará deshabilitada y no podrá moverse mas. Solo podrá ceder su turno. Si la nave fue creada con blindaje 1, no existirá este estado para dicha nave.
• Fragata Hundida: Cuando una nave tenga un "Blindaje" igual o menor a 0, el barco se hunde.
Requerimientos Básicos que deben ser considerados
Debe tener una matriz para manejar el tablero de juego.
Dibujar el tablero en la pantalla, incluyendo un símbolo para el barco del usuario y del computador.
La información ingresada por el usuario debe ser validada.
Los movimientos del usuario deben ser ingresados mediante el teclado. Usted es libre de elegir las combinaciones de teclas que desea usar para las acciones y movimientos.
Debe contener obligatoriamente funciones, cada una debe ser lógicamente creada.
La fragata controlada por el computador genera un número aleatorio de acciones y disparos, dentro del número de "Acciones" que le son permitidas en su turno.
Cuando la fragata controlada por el usuario este dentro del rango de alcance de la fragata controlada por el computador, esta ultima ya no realizara acciones de avance aleatorio y solo atacará a la nave del usuario.
Ejemplo1: Nave PC, con alcance 4 y dirección Norte
Ejemplo2: Nave PC, con alcance 2 y dirección Oeste