Está en la página 1de 11

INSTITUCIÓN:

UNIVERSIDAD LAICA ELOY ALFARO DE MANABÍ

INTEGRANTES: BURGASI
ROVAYO DAYANARA LUNA
LOPEZ JEFFERSON JHOAN MERO
PONCE SANTA KARLA RIVERA
LOOR TOMMY
ZAMORA MACIAS ROCHELLY

DOCENTE:
ING. JOFFRE EDGARDO PANCHANA FLORES

MATERIA:
PROGRAMACIÓN ORIENTADA A OBJETOS

CURSO:
3 “A”

CARRERA:
INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN.

AÑO:
2020-2021 (1)
Los videojuegos en sus inicios constituyeron un gran medio de entretenimiento, los
cuales marcaron un antes y un después con lo que se podría lograr en la programación,
estos generaron experiencias jamás antes vistas enfocadas en la diversión, creando gran
conmoción en los usuarios y a la vez división de opiniones entre ellos. Por lo que no se
puede obviar a aquellas personas que formaron parte de estos inicios y avances
tecnológicos ya que guardan gran nostalgia en aquellos pasatiempos que aunque
presentaron limitantes los vuelve importantes.

Este proyecto se basa en la creación de un videojuego retro arcade, inspirado en el


género “Shoot 'em up” y el juego “Space Impact”, y así obtener una experiencia similar
a dicho juego de antaño usando la programación orientada a objetos.

El juego consiste en una nave que tiene como objetivo destruir todos los asteroides y
Naves Enemigas (Aliens) que encuentre en su camino para poder mantenerse vivo y a la
vez que acumule puntos. El juego dependerá de las estrategias y habilidades de cada
jugador para sobrevivir en el espacio. Algunos jugadores preferirán mover lo mínimo
posible su nave y centrarse en atacar aquellos asteroides que más se aproximan mientras
que otros recorrerán el espacio buscando posiciones ventajosas para disparar a los
asteroides y ovnis.

Este juego está enfocado a cualquier jugador nostálgico de las máquinas recreativas de
videojuegos arcade y a los nuevos jugadores que deseen experimentar, aprender y
disfrutar de este gran juego. En general a cualquiera que quiera poner a prueba sus
habilidades y reflejos al mando de una nave espacial.
FICHAS DE PERSONAS

Nombre: Jorge Sánchez


Edad: 35
Nivel de estudio: Licenciatura
Profesión: Artes musicales

Descripción de persona:
Jorge se encuentra soltero y sin compromisos o hijos. Vive en
Quito y trabaja como productor musical independiente y quien lo
contrate. Tiene un horario de trabajo muy flexible y
constantemente está moviéndose por toda la ciudad reuniéndose
con posibles contratos.
En su casa tiene una laptop única que lo usa para realizar las
mezclas de su trabajo y lo une todo a sus instrumentos y
sintetizadores, al llegar a casa es casi siempre estar laborioso y
ocupado para poder realizar los trabajos pendientes a entregar. Al
terminar de trabajar y hartase de un trabajo prolongado necesita tiempos para relajarse y
entretenerse, por momentos suele recordar un videojuego de cuando era niño, pero al ser
tan viejo no ha podido encontrarlo y solo puede recordar que lo que le gustaba de ese
videojuego y algún día poder encontrar algo parecido a esa experiencia de su niñez.

Descripción de un escenario:
Son las 3:00 pm de un miércoles. Jorge termina su trabajo antes de lo planeado así que
puede relajarse hasta su próxima reunión con un cliente a las 5:00 pm. Se dirige a
preparar todo para salir, pero no le toma mucho tiempo y aún tiene tiempo de sobra sin
nada que hacer, desea poder entretenerse con algo más que no sea solo trabajo. Nunca
ha sido fanático de la televisión. Vuelve a recordar un ese videojuego de su niñez que
desearía poder volver a jugar, pero es tan viejo que no sabría como buscarlo. Intenta
buscarlo en su navegador con el nombre que recuerda “space invaders”, las búsquedas
le generan juegos parecidos que llaman su atención y decide elegir el más aproximado a
lo que recuerda, un juego rápido y sin presión para matar el tiempo antes de retomar su
trabajo sin presiones, al ponerse a jugar sintiendo nostalgia de las antiguas maquinas
arcades decide intentar conseguir más puntos y divertirse un rato para quitarse las que
tanto tenia de dicho juego que recordaba y tanto le divertía.
Nombre: Andrés Núñez
Edad: 14 años.
Nivel de estudio: Secundaria
Profesión: Ninguna
Descripción de Persona.
Andrés es un chico que acude con normalidad a su secundaria se
encuentra en primer año de bachillerato, cumple de forma
óptima sus trabajos y tareas de sus diferentes asignaturas.
Su tiempo libre lo suele ocupar para escuchar música, navegar
en internet, se le da muy bien jugar ajedrez. Pero casi no lo
practica ya que es hijo único y sus amigos, aunque él les ha
tratado de enseñar no consiguen aprender del todo. Debido a
esto no suele enfocar todo su tiempo libre en el ajedrez y en
lugar de esto juega diferentes juegos con el fin de pasar un buen
y divertido momento.
Descripción de un escenario:
Son las 16:00 horas de un miércoles, Andrés se encuentra jugando uno de sus habituales
videojuegos. Pero algo sucede este viernes que hace que sea diferente a los demás.
Andrés siente que los videojuegos con los que se entretiene de forma habitual, ya no le
brindan esta satisfacción; debido a que ha pasado mucho tiempo en ellos y se ha
aprendido todos sus trucos. Tiene tiempo de sobra y decide buscar en la web y en
tiendas especializadas en la vente de videojuegos, esperando así que encuentre algún
videojuego que le brinde una experiencia un poco diferente a los que existen
actualmente.
REQUISITOS FUNCIONALES
Requisitos Descripción del Requerimiento

Permitir moverse alrededor del escenario


RF1
con las flechas direccionales del teclado.

Permitir disparar a los objetos enemigos y


RF2 que estos se destruyan al colisionar con el
proyectil.
Permitir reaparecer después de colisionar
RF3 con un objeto enemigo dependiendo de la
cantidad de vidas restantes.
Permitir que los enemigos disparen de
RF4
manera aleatoria.
Permitir crear una lista de solicitudes
RF5
aprobadas.
Empezar una partida ingresando al botón
RF6
jugar.
Generar un puntaje que marque la cantidad
RF7 de enemigos eliminados en el transcurso
de la partida
Mostrar una pantalla de finalización de la
RF8
partida al encontrarse sin vidas restantes.
Redirigir al menú de inicio al acabar la
RF9
partida.

Mostrar un menú con las opciones básicas


RF16
de “iniciar juego”, “salir”.
DIAGRAMA DE NAVEGACIÓN
Clic en
Jugar
Clic en
Jugar

La nave muere

Clic en Clic en
Instrucciones Volver al
menú

La nave muere
Clic en Salir

Clic en
Volver

Clic en Salir
Diagrama de clases
Lógica de negocio
La lógica de negocios de nuestro proyecto Ship Shot el cual es un video juego que se
basara en que el usuario tendrá que mover la nave que le proporciona el programa para
así evitar que los asteroides y las naves enemigas impacten contra él y provoquen su
muerte. Además de esto el usuario tendrá la función de ejecutar disparos, estos disparos
podrán destruir tanto a los asteroides como a las naves enemigas que se estén alrededor
de la nave del jugador.
Los datos que ingresará el usuario serían las pulsaciones de las teclas previamente
programadas, que ejecutaran las acciones de mover y disparar.

PATRON FACTORY METHOD (METODO DE FABRICA)


Es un patrón de tipo creacional define una interfaz para crear un objeto, pero no se
especifica que objeto se instanciara por las clases hijas.
Consiste en utilizar una clase constructora (al estilo del Abstract Factory) abstracta con
unos cuantos métodos definidos y otro(s) abstracto(s): el dedicado a la construcción de
objetos de un subtipo de un tipo determinado. Es una simplificación del Abstract
Factory, en la que la clase abstracta tiene métodos concretos que usan algunos de los
abstractos; según usemos una u otra hija de esta clase abstracta, tendremos uno u otro
comportamiento.
Problema que resuelve
El patrón de fábrica se usa para reemplazar constructores de clases, como lo resuelve,
abstrayendo el proceso de generación de objetos para que el tipo de objetos instanciado
pueda determinarse en tiempo de ejecución.
La solución para esto es hacer un método abstracto (el método de la fábrica) que se
define en el creador. Este método abstracto se define para que devuelva un producto. Las
subclases del creador pueden sobrescribir este método para devolver subclases
apropiadas del producto.
Explicación teórica de como el patrón aplicado resuelve ese problema
en su proyecto.
El problema que resuelve este patrón, es la creación de entidades de forma aleatoria, que
interactúan con la NaveJugador sin la necesidad de agregar nuevas líneas de código.
También nos brinda la flexibilidad de poder agregar los enemigos que deseemos ya que,
sólo debemos enforcarnos en las clases abstractas y sus heredados, sin necesidad de
interactuar con la clase principal.
Diagrama UML con aplicación de Patrón de Diseño Factory
Url del Proyecto en Gitlab:
https://gitlab.com/tomyrivera1021/proyectopoona veespacial.gi
t

Url del video:


https://web.microsoftstream.com/video/ddaad1d5 -308c-4c51-808f-
633f5607d0e0 https://web.microsoftstream.com/video/19164f77 -fc86-4457-
a964- d759249256da?list=studio
https://web.microsoftstream.com/video/240c9b79 -e5b9-4d9f-bdfb-
69653c142150 https://web.microsoftstream.com/video/946a24c0 -2250-43e5-
a805-
33a86eb784c5?list=studio
https://web.microsoftstream.com/video/0a3a882a -6738-4138-
8eda-
928ffaa07fd6?list=studio

También podría gustarte