Ejercicio: Pong

De Edutec Wiki
Saltar a: navegación, buscar

Introducción

Lo primero que haremos es partir de cero, es decir, elegiremos la opción 'Nuevo' del menú 'Archivo'. Ahora tenemos el gatito en el escenario y lo sacaremos. Ya sabéis cómo hacerlo: escogemos las tijeras y eliminamos el gatito. La idea es quedarnos sin nada! Vamos a construir los objetos necesarios para el programa. Primero dibujaremos un pelota. En el menú nuevo objeto hacemos clic sobre el pincel y se abrirá la herramienta de dibujo

Ejercicio Pong 01.png

Seleccionamos la herramienta circulo Archivo:Seleccionherramientacirculo.pngy elegimos el circulo relleno Archivo:Pong03.png. Hacemos un circulo ni demasiado pequeño ni demasiado grande(con la tecla mayúsculas presionada conseguimos dibujar un circulo y no una elipse) Ahora tenemos un objeto nuevo con el que podemos hacer cosas,le ponemos de nombre "Pelota".

 

Moviendo la pelota

Primero de todo, será necesario que volvamos al lienzo de programación, podemos hacerlo pulsando el botón de Programas:

Pong04.png

¿Qué podemos hacer? Para empezar podemos iniciar el programa al pulsar la banderita verde.

Pong01-1.png

Colocamos este código en el escenario, Escribamos el código de la "Pelota". Ya sabemos cómo hacerlo, ¿verdad? Ya conocemos las instrucciones 'muévete', 'rebota al tocar un borde', la estructura iterativa 'para siempre' y la instrucción que detecta si hemos enviado un mensaje. Combinando todo esto podemos hacer el programita sencillo

Pong06.png

Ahora presionemos la bandera verde y pongamos el programa en funcionamiento. Comprobemos como funciona el rebote.

Vamos a añadir un nuevo objeto para detectar cuando la pelota toca la parte inferior del escenario.

Cada vez que pulsemos la bandera verde la pelota ira a la parte superior central del escenario (0,160) y se moverá en dirección hacia abajo (180). Si dejamos el código de esta forma la pelota siempre tendría el mismo movimiento, vamos a hacer que la dirección sea distinta cada vez, con la siguiente instrucción.

Pong01-2.png

 

La paleta

Ya tenemos la pelota en movimiento, construyamos un nuevo objeto para interactuar con la pelota, A este objeto le vamos a llamar "Paleta"

Pong01-4.png

En el editor de dibujos dibujamos un rectángulo, procurando que el centro quede bien colocado

Pong02-1.png

A este objeto le añadimos el siguiente código.

Pong02-2.png

Con este código conseguimos que el objeto "Paleta" siga el movimiento en "x" del ratón. Ahora tenemos que conseguir que la paleta y la pelota interactuen. Para ello modificaremos el código de la paleta de la siguiente forma.

Pong10-1.png

 

Más rebotes

Escribamos el código de rebotar.

Pong10-2.png

 

La línea de fondo

Comprobemos como funciona el rebote. Vamos a añadir un nuevo objeto, que nos servirá para detectar cuando la pelota toca la linea de fondo y por tanto perdemos el punto. Vamos a crear nuevo objeto, abrimos el editor de dibujo y dibujamos un objeto como se muestra en la siguiente imagen y le llamamos fondo.

PongLineadefondo.png

Modifiquemos el código de la "Pelota" para que esta interactue con el "Fondo"

PongTocandofondo.png

Seria conveniente que pudiésemos contar las veces que la pelota toca el fondo. Para ello creamos una variable a la que llamamos "marcador".

PongVariablemarcador.png

Cada vez que la "Pelota" toca la linea de fondo incrementamos esta variable en uno.

PongCodigomarcador.png

Cuando iniciemos la partida tendremos que poner esta variable a cero. Para ello escribimos el siguiente código en el escenario. Hemos construido un nuevo mensaje "inicia" que utilizaremos mas adelante para fijar la posición inicial de todos los objetos

PongMensajeinicia.png

 

Perder la partida

Hagamos que la partida dure un numero determinado de puntos. Cambiemos el bucle "por siempre" del código de la pelota por un "repetir hasta que ..." con la condición deseada.

PongCodigocomarcador.png

Añadamos un mensaje (enviar "fin") al código para activar las condiciones de final de partida

PongFinpartida.png

Dibujemos un nuevo escenario para el fin de partida.

PongFondofinal.png

Modifiquemos el código del escenario para que responda a los mensajes "inicia" y "fin".

PongEscenariocodigofinal.png

Para terminar añadamos los comportamientos "inicia" y "fin" a los otros objetos.

Para la pelota:

PongPelotafin.png

Para la paleta:

PongPelotafin.png

Link

Pong