Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feedback #1

Open
wants to merge 68 commits into
base: feedback
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
aae45a8
Setting up GitHub Classroom Feedback
github-classroom[bot] Sep 19, 2024
d951cf4
Armamos el esquema del juego
AzulPetrocelli Sep 22, 2024
5c25bb6
agrego limites de mapa
fmigliavacca Sep 22, 2024
5308107
agrego metodos de la cabeza y la manzana
fmigliavacca Sep 22, 2024
55bd0d9
Enprolijo todo y agrego metodo para hacer movimientos de los cuerpos …
fmigliavacca Sep 23, 2024
ce57d5f
Ahora la serpiente crece. Soy re capo. Igual no anda nada xd, pero co…
fmigliavacca Sep 23, 2024
792dd81
Dejo todo armado para que puedan seguir con los otros juegos
fmigliavacca Sep 24, 2024
b397b90
.
fmigliavacca Sep 24, 2024
5846591
creo carpetas para las imagenes de cada juego, pusheo el code de lo t…
Cicalalautaro Sep 24, 2024
2c85b29
screamer modificado
Cicalalautaro Sep 25, 2024
6def78e
Mergeamos todo y ya se puede continuar con cada partida. Seguir como …
Sep 25, 2024
ee25e0f
emprolijado todo y polimorfiqueado
Sep 25, 2024
dd0cfd4
agrego colisiones de cabeza con cuerpo. Aniado metodo para iniciar, t…
fmigliavacca Sep 25, 2024
6c092cc
pusheo ultimo juego TERMINADO, elimine el managerParedes ya que no es…
Cicalalautaro Sep 26, 2024
97af047
Merge branch 'main' of https://github.com/pdepjm/2024-o-tpjuego-grupo…
Cicalalautaro Sep 26, 2024
8406d71
sdsad
fmigliavacca Sep 28, 2024
9f7de03
Agregue los sprites del nivel 1 y los asigne a los objetos, tambien a…
AzulPetrocelli Sep 28, 2024
18ec6b2
Agrego metodos y() y x() a la clase pared y codigo de la partida2
santigutman Sep 28, 2024
805ca96
Update README.md
fmigliavacca Oct 2, 2024
c15809d
Saco los strings de los movimientos y hago los objetos. Empiezo la fu…
fmigliavacca Oct 7, 2024
0de58f2
Termino lo del decoder de paredes, emprolijo un poco todo, hago las i…
fmigliavacca Oct 8, 2024
3276e31
Agrege la clase Cosas para generalizar la pared y las manzanas en alg…
francojuanramos Oct 13, 2024
e2ba5f4
Update general.wlk
fmigliavacca Oct 22, 2024
dfa8cd2
#Hice la matriz para el mapa del juego dos #Cree una superclase movim…
AzulPetrocelli Oct 23, 2024
392409e
#cree el objeto mn que representa a las manzanas en la matriz #Arregl…
AzulPetrocelli Oct 23, 2024
919e29b
Merge branch 'main' of https://github.com/pdepjm/2024-o-tpjuego-grupo…
AzulPetrocelli Oct 23, 2024
8edf4c7
Aniado tema paredes como clase, falta hacer herencia con los movimientos
fmigliavacca Oct 24, 2024
a777de3
juego3
santigutman Oct 24, 2024
dbd3084
cambio mapa del juego 3
santigutman Oct 24, 2024
caed01a
asdsoas
fmigliavacca Oct 24, 2024
73dbce1
Modifico cambio de imagen a la hora de moverse
fmigliavacca Oct 24, 2024
b5cae8e
cambio la posicion inicial de ljuego 1
fmigliavacca Oct 24, 2024
ef07a27
agrego mapas
santigutman Oct 24, 2024
41f7a29
sdsad
santigutman Oct 24, 2024
65b8f91
Agregamos cuestiones de mover cuerpos en el juego de santi
santigutman Oct 24, 2024
4922c7d
#elimine los errores y los warmmins #modifique algunas funciones deja…
AzulPetrocelli Oct 31, 2024
41d37df
Carga el mapa con el personaje y las manzanas, falta solucionar el mo…
AzulPetrocelli Nov 2, 2024
85683de
Ya por fin se agranda el cuerpo bien ahora falta que colicione y que …
francojuanramos Nov 2, 2024
ef9e415
Cargan las animaciones, avance con el reinicio pero falta terminar
AzulPetrocelli Nov 4, 2024
548d742
se reinician las manzanas falta hacer que se pueda pasar de nivel y a…
francojuanramos Nov 6, 2024
4e1c319
modifique las imagenes y el mapa, quedo un mapa de 18x18 ahora es mas…
AzulPetrocelli Nov 6, 2024
0ce93e9
Modifuque el metodo terminar, elimina todos los elementos del juego p…
AzulPetrocelli Nov 6, 2024
6cbb962
ya se mueve el juego 3 y pareciera que aparece la imagen al completar…
francojuanramos Nov 7, 2024
43a48d9
El mapa se carga ni bien corremos el juego y carga el fondo junto con…
AzulPetrocelli Nov 7, 2024
3a33ad9
Cambio mapas juego 2 y screamer
santigutman Nov 7, 2024
822b967
El juego2 ya tiene animaciones y reconoce las manzanas, falta hacer q…
AzulPetrocelli Nov 7, 2024
9ae4827
Agregamos readme y tests
santigutman Nov 7, 2024
9a09cc0
cosas
fmigliavacca Nov 7, 2024
7b9acde
usando game.clear
fmigliavacca Nov 7, 2024
7fffc1f
Agregamos ciertas modificaciones n clase
fmigliavacca Nov 7, 2024
6baa520
acomode algunas cosas, elimine metodos de retorno que no aportaban xq…
AzulPetrocelli Nov 8, 2024
a40913d
creo que mergie bien
AzulPetrocelli Nov 8, 2024
b40f541
sigo acomodando, lo proximo que voy a hacer es crear la clase personaje
AzulPetrocelli Nov 8, 2024
23c2428
cree la clase partida, todavia no la use pare instanciar a los person…
AzulPetrocelli Nov 8, 2024
88eb249
ya cree la clase personaje, falta probarla en el juego 3
AzulPetrocelli Nov 9, 2024
f19cabb
Modifique los onPressDo w,s,a,d por un metodo que compara la posicion…
AzulPetrocelli Nov 9, 2024
ae78d55
juego3 probado, cree el personaje a partir de la clase, funciona perf…
AzulPetrocelli Nov 9, 2024
8448d06
agregue algunos sonidos e hice un cronometro para el nivel 3, funcion…
AzulPetrocelli Nov 9, 2024
50188d6
ya se puede pasar de nivel, falta hacer que desaparesca el ultimo vis…
AzulPetrocelli Nov 10, 2024
84a0875
agregue el metodo moverseA(direccion) para que el movimiento sea mas …
AzulPetrocelli Nov 11, 2024
b53f5ce
el juego funciona, faltan los test y cambiar y arreglar el sonido
AzulPetrocelli Nov 13, 2024
2150c8e
agregue el readme
AzulPetrocelli Nov 13, 2024
dac0f29
Agregue la explicación teórica
francojuanramos Nov 13, 2024
7e201e4
aplicando polimorfismo en lauti
AzulPetrocelli Nov 14, 2024
51606cb
Hago merge de la rama main con mi anterior commit
AzulPetrocelli Nov 14, 2024
2f00d51
Agregamos un par de test
santigutman Nov 14, 2024
778a66d
Cambio linea de lugar
santigutman Nov 14, 2024
17ab3fc
cambiamos foto de alf
santigutman Nov 14, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added Captura-Nivel1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Captura-Nivel2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Captura-Nivel3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
42 changes: 31 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,42 @@
# (reemplazar nombre de juego acá)
# Minijuegos

UTN - Facultad Regional Buenos Aires - Materia Paradigmas de Programación

## Equipo de desarrollo:
## Ideas iniciales:
El juego consta de 3 minijuegos principales diseñados para que compartan metodos en común para que sea clara la aplicación de polimorfismo y los conceptos principales vistos durante la cursada.
El objetivo de cada nivel es agarrar todas las manzanas que esten en el mapa, al hacerlo pasara automaticamente al siguiente nivel.

### Nivel 1:
Es un puzzle en el cual al comer una manzana la serpiente crece, las manzanas estan colocadas en forma estrategica para que sea dificil conseguirlas todas, ya que si la cabeza choca con el cuerpo se reinicia el nivel.

![Nivel 1](Captura-Nivel1.png)

### Nivel 2:
Similar al anterior con la diferencia de que cada vez que nos movamos el cuerpo crecera dejando un rastro que reducira nuestra movilidad en el laberinto.

- completar...
- completar...

![Nivel 2](Captura-Nivel2.png)

### Nivel 3:
Este nivel tiene una dinamica distinta, el cuerpo ya no crece, el personaje tiene que recorrer el laberinto y agarrar la manzana al final en 20 segundos, si el reloj llega a cero o toca las paredes se reiniciara el nivel(junto con el reloj).

![Nivel 3](Captura-Nivel3.png)

## Equipo de desarrollo:

## Capturas
- Azul Martin Petrocelli
- Federico Migliavacca
- Franco Juan Ramos
- Lautaro Dario Cicala Fontao
- Santiago Gutman

![pepita](assets/golondrina.png)
## Explicación teorica

## Reglas de Juego / Instrucciones
Durante la creación del juego, aplicamos diversos conceptos fundamentales vistos en la cursada con el objetivo de proporcionar mayor declaratividad y expresividad al trabajo. Al diseñar los tres juegos, nos encontramos con una serie de similitudes entre ellos, como el crecimiento del cuerpo del personaje, la acumulación de puntos, y la aparición y desplazamiento del personaje a través del entorno. Estas similitudes nos llevaron a la decisión de implementar una clase general llamada Partida y una clase Personaje, a partir de las cuales generamos instancias específicas para cada uno de los juegos. Este enfoque nos permitió manejar de manera más eficiente los aspectos comunes y evitar redundancias en el código.

(completar...)
Adicionalmente, descubrimos que elementos como las paredes y las manzanas compartían características y comportamientos similares, tales como su aparición en ciertas ubicaciones y su desaparición una vez cumplidas determinadas condiciones del juego. Para abordar esta repetición, decidimos crear una clase base llamada Cosas, de la cual heredaron las clases específicas de cada tipo de objeto en el juego, incluyendo las dos variantes de paredes y las manzanas. Esta implementación de la herencia no solo nos permitió agrupar comportamientos comunes, sino que también facilitó la reutilización de métodos y la extensión de nuevas funcionalidades sin complicar la estructura original del código, manteniéndolo más limpio y organizado.

## Controles:
En lo que respecta al movimiento del personaje, implementamos una clase Movimiento, cuyo propósito es almacenar las posiciones actuales y futuras del personaje y gestionar su desplazamiento por el escenario. Esta clase incluye un método moverse que evalúa si la siguiente posición es válida o si existe una pared en la dirección elegida para el movimiento. Dependiendo de la dirección seleccionada, el método es enviado al objeto correspondiente que hereda los atributos y métodos de Movimiento, lo que permite adaptar el comportamiento a las variaciones específicas de cada tipo de movimiento sin necesidad de duplicar código.

- `W` para...
Para manejar la configuración global del juego, decidimos implementar un objeto Configuración, el cual se encarga de centralizar la lógica y las propiedades generales que no pertenecen a un juego en particular, como la selección de la partida en curso y las configuraciones de los visuales comunes entre los juegos. Este enfoque centralizado permite simplificar y organizar mejor el código.

El uso de herencia y la estructuración en clases, junto con la implementación del objeto Configuración, no solo evita la repetición de código, sino que también incrementa el polimorfismo del diseño. Los objetos creados a partir de las clases base y las clases heredadas comparten métodos comunes, lo que otorga al código una mayor flexibilidad y facilita su adaptación a futuras modificaciones o ampliaciones. Gracias a este enfoque, el código no solo es más limpio y estructurado, sino que también resulta más fácil de entender, de mantener y de expandir, lo que en última instancia mejora la claridad del proyecto y facilita la implementación de nuevas características o la corrección de errores.
Binary file added assets/alf.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/alf1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/cabeza-abajo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/cabeza-arriba.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/cabeza-derecha.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/cabeza-izquierda.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/cuerpo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/fondo-flores.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/fondo-pasto.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed assets/golondrina.png
Binary file not shown.
Binary file added assets/manzana.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/pared-tierra.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/reloj.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/scream.mp3
Binary file not shown.
Binary file added assets/sonidoComer.mp3
Binary file not shown.
Binary file added assets/sonidoFondo.mp3
Binary file not shown.
Loading