Exercici: Pong

From Edutec Wiki
Revision as of 09:15, 1 June 2016 by Jogaye (Talk | contribs)

Jump to: navigation, search
Other languages:
català • ‎español


Introducció

El primer que farem és partir de zero, és a dir, triarem l'opció 'Nou' del menú 'Arxiu'. Ara tenim el gatet a l'escenari i el traurem. Ja sabeu com fer-ho: escollim les tisores i eliminem el gat. La idea és quedar-nos sense res! Construirem els objectes necessaris per al programa. Primer dibuixarem un pilota. Al menú nou objecte fem clic sobre el pinzell i s'obrirà l'eina de dibuix

Ejercicio Pong 01.png


Seleccionem l'eina cercle Archivo:Seleccionherramientacirculo.png i triem el cercle farcit Archivo: Pong03.png. Fem un cercle ni massa petit ni massa gran (amb la tecla majúscules pressionada acaonseguirem dibuixar un cercle i no una el·lipse) Ara tenim un objecte nou amb el qual podem fer coses, li posem de nom "Pilota".


Movent la pilota

Primer de tot, caldrà que tornem al llenç de programació, podem fer-ho prement el botó de Programes:

Pong04.png

Què podem fer? Per començar podem iniciar el programa prement la bandereta verda.

Pong01-1.png

Col·loquem aquest codi a l'escenari, Escrivim el codi de la "Pilota". Ja sabem com fer-ho, oi? Ja coneixem les instruccions 'mou-te', 'rebota en tocar una vora', l'estructura iterativa 'per sempre' i la instrucció que detecta si hem enviat un missatge. Combinant tot això podem fer el programet senzill

Pong06.png

Ara pressionem la bandera verda i posem el programa en funcionament. Comprovem com funciona el rebot.

Anem a afegir un nou objecte per detectar quan la pilota toca la part inferior de l'escenari.

Cada vegada que premem la bandera verda la pilota ira a la part superior central de l'escenari (0,160) i es mourà en direcció cap avall (180). Si deixem el codi d'aquesta manera la pilota sempre tindria el mateix moviment, farem que la direcció sigui diferent cada vegada, amb la instrucció.

Pong01-2.png


La paleta

Ja tenim la pilota en moviment, construïm un nou objecte per interactuar amb la pilota, A aquest objecte li anem a cridar "Paleta"

centro

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

400px|centro

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

centro

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.

centro


Más rebotes

Escribamos el código de rebotar.

centro


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.

400px|centro

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

centro

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

centro

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

centro

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

centro


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.

centro

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

centro

Dibujemos un nuevo escenario para el fin de partida.

400px|centro

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

centro

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

Para la pelota:

centro

Para la paleta:

centro