viernes, 24 de febrero de 2017

Ping-pong

El proyecto final consistía en la realización de un juego que nosotras decidimos llamar "Ping-Pong".
Primero, dimensionamos el campo, insertamos una foto del césped de fondo y dibujamos las líneas del campo.

Después dibujamos los jugadores (una raya azul y otra roja). Estos tenían que moverse, por lo tanto, definimos las variables x1 y x2 para cada jugador.

A continuación, dibujamos la pelota, definiendo las variables x e y; además de incrX e incrY, siendo esto lo que aumentará la posición de la pelota (ya que esta se tiene que mover).
Para que rebotara, utilizando if(), multiplicábamos incr por (-1) cuando chocara con una línea.
Además, tuvimos que definir los límites de los jugadores también, utilizando las variables definidas previamente y colocando límites para que el jugador no se fuera hasta el final de la pantalla. Utilizamos condicionales compuestos a lo largo de toda la práctica.

Después, ordenamos que cuando un jugador marcara gol, la pelota volviera automáticamente a situarse en el centro del campo, utilizando if().

Seguidamente utilizamos el bloque void keyRelased para el movimiento de los jugadores, pulsando las teclas 'a' y 'd' para el rojo y 'k' y 'ñ' el azul.

Por último, hicimos que la pantalla se pusiera negra cuando un jugador marcara tres goles y apareciera en la pantalla "Azul/Rojo gana". Además, igualamos los incr a 0 para que la pelota dejara de moverse detrás de la pantalla negra.


MAYORES DIFICULTADES
Nuestra mayor dificultad fue cuando nos encontramos ante la situación de empezar una nueva partida una vez aparecida la pantalla negra. Decidimos que al pulsar la tecla 'b', el juego volviera a comenzar, utilizando el bloque void keyReleased. Sin embargo, después de varios intentos y a causa de la falta de tiempo, decidimos desechar nuestra idea.

Otra dificultad fue cuando tuvimos que delimitar el movimiento de los jugadores, ya que al principio no sabíamos como podíamos hacerlo, aunque al final conseguimos superar la dificultad.

AUTOEVALUACIÓN DE NUESTRO PROYECTO
INTERFAZ AMIGABLE: 😄
Insertamos la imagen de fondo, las líneas, la pelota y los jugadores.
MOVIMIENTO DE LA PELOTA CORRECTO: 😄
La pelota tiene unos correctos movimientos de rebote con las líneas y los jugadores.
MOVIMIENTO DE LOS JUGADORES CORRECTO: 😄
Los jugadores tienen unos límites y se mueven pulsando unas determinadas teclas.
REINICIO AL MARCARSE GOL: 😄
Al marcarse un gol, la pelota se sitúa en el centro del campo.
FINAL DEL JUEGO: 😄
Al marcar tres goles, la pantalla se pone negra y aparece un mensaje indicando el jugador ganador.
COMENTARIOS ADECUADOS: 😄
EXTRAS: 😞
EXTRAPOINT: 😞


😄 Realizado
😞 No realizado

Consideramos que nuestra nota es: 9/11

VÍDEO


miércoles, 1 de febrero de 2017

Práctica 14

¿Cómo funciona una clase?

Primero se define una clase (nivel de agrupación de código donde mezclamos variables con funciones) llamada "copo" (en este caso) definiendo sus variables y una función con su mismo nombre llamada Constructor (todo ello en otra pestaña).
En el código, antes del setup, se define un objeto del tipo copo y en el setup se carga.

En este vídeo nos explica qué es una clase:



Práctica

Hemos creado un fichero llamado "clasepelota"que consistía en pintar las dos pelotas en el lienzo utilizando las clases, definiendo los valores de sus variables x e y y diámetro.

Hemos realizado la práctica "postalconclase" que consistía en modificar la anterior práctica "postalmodularizada". Definíamos una clase que se llamara Copo con las variables necesarias, el constructor, y la función Pintar.
Definimos un array de 10 elementos de esa Clase, es decir, los copos que caen, a los que dimos valores aleatorios en su posiciones.