Pràctica final

Com a pràctica final realitzarem un petit curtmetratge d'uns cinc minuts de tema lliure amb animacions.

Al final d'aquest haurà de sortir el títol "The End"

Et donem unes pistes per fer-ho

Podem fer diverses millores en el nostre programa.

1.- Podem afegir-li algun so per comunicar que el joc o la pel·lícula s'ha acabat. Amb el personatge sel·leccionat, anem a la pestanya 'Sons' i fem click a 'Grava'.

Ara ens apareixerà una finestra per enregistrar sons. Prement el botó vermell podem dir qualsevol cosa, que quedarà enregistrada. Per exemple, podríem dir “Game Over” amb veu molt solemne, perquè quedi força clar que el joc s'ha acabat.

Ara canviem el nom del so que tot just hem gravat. Podem anomenar-lo, per exemple, 'game over'.

I ara afegirem al final del nostre programa la instrucció 'toca so' amb el nom del nou so triat al menú desplegable

2.-Oi que va massa ràpid quan perd una vida i comença la partida amb la següent? Per això tenim la instrucció 'espera… segons' (a la categoria 'Control').

Podem posar-la tot just desprès de les inicialitzacions de la pilota i abans de la repetició 'repeteix fins tocant Animació3?', és a dir, ha d'estar dins del repetir més exterior però fora del repetir més interior. Amb un segon d'espera n'hi ha de sobres.

3.-Podem escriure amb l'editor de dibuixos el text (botó de l'editor amb una “T” dibuixada) “Game Over” (si no ens surt bé, el sel·leccionem, anem a la pestanya 'Vestits' i fem clic a 'Edita' perquè torni a obrir-se l'editor de dibuixos).

Però ara, quan juguem, el “Game Over” hi és sempre! El “Game Over” hauria de desaparèixer en començar i nomès sortir quan el joc s'acaba. Fixem-nos que a la categoria 'Aspecte' tenim dues instruccions 'amaga' i 'mostra'. Podem provar d'associar al text “Game Over” el programa

Amb la qual cosa s'amaga quan comencem. Això està bé. Fixem-nos, però, que quan acabem no apareix! Així doncs, encara tenim feina.

No sé si us n'heu adonat de que, qui sap quan s'acaba el programa és la pilota, o el programa associat a la pilota, en canvi qui ha d'aparèixer quan el joc s'acaba és el text “Game Over”.

Com li pot dir la pilota al text que el joc s'ha acabat??

A Scratch els objectes poden enviar missatges a tots els altres objectes. Sel·leccionem la pilota (si no ho estava) i fem clic a la categoria 'Control'. Allà podem veure la instrucció 'envia a tots menú desplegable'.

Arrosseguem la instrucció fins a la zona de programes i mirem el menú. No hi ha res, només l'opció 'nou…'

Si triem l'opció 'nou…' ens demanarà el nom d'un missatge:

Podem escriure, per exemple, “fidejoc”. Un cop ho haguem fet, afegim la instrucció 'envia a tots fidejoc' al final del programa de la pilota, com a darrera instrucció del programa (possiblement darrera de 'toca so gameover').

Aquesta instrucció envia a tots els objectes el missatge “fidejoc”. Ara bé, hi haurà objectes que en faran cas d'aquest missatge, i hi haurà objectes que no.

Un dels objectes que n'hauria de fer cas és el text “Game Over”. En rebre aquest missatge, hauria de fer-se visible. Ho tenim fàcil! Si ens fixem a les instruccions de la categoria 'Control' hi ha una instrucció 'al rebre menú desplegable' que ens va força bé. Sel.leccionem el text “Game Over” i arrosseguem 'al rebre…' cap a la zona de programa. Triem “fidejoc” en el menú de la instrucció. Tot just a sota hi enganxem 'mostra', de la categoria 'Aspecte', i ja ho tenim! Els programes associats al text “Game Over” són

“Però… com? Dos programes per a un sol objecte?” deveu estar pensant. Fixeu-vos que cada un d'aquests programes s'activarà en determinades condicions. Un ('amaga') quan es premi la bandera verda, un altre ('mostra') quan es rebi el missatge “fidejoc”. Són situacions diferents que no interfereixen entre elles. Així doncs, cap problema. Aquest mecanisme que té Scratch d'enviar missatges entre objectes el veurem sovint en els propers mòduls. Ara, si voleu, podeu tornar a provar l'exercici 2, que és fàcil de resoldre amb dos programets per a la barra petita.

Final

I el Pong guarnit quedarà de la següent manera, per a la pilota, pel text “Game Over” i per a la barra curta (únics objectes que tenen programa associat) respectivament: