Tractament de cadenes amb l'ActionScript  
      
  L'objectiu d'aquesta pràctica és fer una aplicació interactiva per adquirir vocabulari específic de qualsevol matèria.  
      
  Aquesta pràctica es basarà en el clàssic joc del penjat que tant agrada i que segur que tots coneixeu per haver jugat alguna vegada.  
    
  L'aplicació es pot utilitzar amb petites variacions de vocabulari i dibuix per a qualsevol matèria on es vulgui aconseguir l'adquisició de vocabulari sobre un tema determinat, aquí s'ha escollit el vocabulari de les parts d'una flor.
      
  Aquest aplicació, que es podria fer amb qualsevol altre llenguatge de programació, adquirirà més força, interactivitat i versatilitat al Flash, ja que permet crear un entorn obert, fàcil de modificar, encara que no es tinguin coneixements en programació, i permet utilitzar animacions que, en altres llenguatges, implicarien moltes més hores d'implementació i un coneixement profund del llenguatge que s'utilitza.  
      
      
Desenvolupament de la pràctica
    
Partireu, en aquesta pràctica, d'una interfície que podeu utilitzar per a altres aplicacions, amb unes petites modificacions i que consisteix en un clip de pel·lícula que fa de títol (la flor), i una imatge de les parts d'una flor.  
    
Aquests parts de la flor s'han convertit en clips de pel·lícula, i s'ha modificat la seva propietat efecte _alpha=0 perquè restin invisibles al començament del programa. Estan ubicades en capes amb el nom corresponent de les parts i protegides.  
    
  Hi ha, també, un text dinàmic per anar visualitzant els encerts i la quantitat de caràcters que té la paraula per descobrir.

 

  
  A la part dreta de la interfície, teniu una mena de tauler on trobareu el botó que iniciarà el joc i els botons corresponents a les lletres de l'alfabet. Aquest botons s'han convertit en clips de pel·lícula, ja que necessitareu utilitzar la propietat visible perquè desapareguin a causa del fet que els botons en si no tenen propietats.  
      
  Al final la interfície, hi ha un botó que us servirà per finalitzar l'aplicació.  
      
  Observeu una mostra de l'aplicació que anireu desenvolupant, i qu,e una vegada acabada, podreu modificar i completar.  
      
     
 
 
 
Feu clic per executar l'aplicació
 
  
  Comenceu ja el desenvolupament de la pràctica.  
      
  »  Obriu l'arxiu flor1.zip on trobareu la interfície abans esmentada.  
      
  » Desprotegiu la capa anomenada principal i feu doble clic al fotograma clau.  
      
» Ara comenceu a inserir el codi que, en principi, correspondrà a la inicialització de variables documentades per a l'ús posterior.
  

p=""; // Variable per a emmagatzetmar la paraula escollida pel programa.
p1=""; // Variable per a emmagatzemar els comodins dels caràcters que corresponen a la paraula.
l=0; // Variable per a emmagatzemar la longitud de la paraula
c=0; // Variable per a fer visible cada part del dibuix

      
  »  Programeu el botó Iniciar joc.  
      
  »  Declareu la variable local var n = 0;, que us servirà per escollir un nombre a l'atzar d'entre un nombre de paraules que es vol posar a l'aplicació, en el vostre cas, 11.  
      
  Com que cada vegada que feu clic el botó Iniciar joc s'ha d'esborrar el contingut de la paraula del joc anterior, poseu buida la variable p1, que correspon als comodins de la paraula, així mateix, la variable c la poseu a 0 i us servirà per visualitzar els clips de pel·lícula del dibuix.  
      
  » Amb el mateix objectiu, heu de fer invisibles els clips de pel·lícula del dibuix posant la propietat _alpha =0;. Els noms d'instància que ja tenen assignats són: fil1, fil2, fil3, fil4, ant1, ant2, ant3, ant4, ov1, pet1, pet2, pet3, sep1.  
      
 

on (release) {
var n=0; // Variable per a escollir la paraula a l'atzar
p1=""; // Posem la variable dels asteriscs buida
c=0;
// Fem invisible el dibuix - efecte alpha a 0
_root.fil1._alpha=0;

.//Escriu el codi per a les corresponents instàncies

}

 
      
  » Heu de fer visibles, també, els botons que han desaparegut quan s'ha fet clic a cada lletra.  
      
  Els noms de les instàncies que contenen el botó corresponent a les lletres aa, bb, cc... zz  
      
  Hi ha un botó que correspon a tecla barra d'espai per incloure a l'aplicació grups de paraules, com en el vostre cas, "SAC EMBRIONARI" i pensant que, en altres aplicacions, es puguin utilitzar com a frases i no solament com a paraules. Això dóna moltes més possibilitats didàctiques d'aplicació, com exemple, a l'àrea de socials: "ARC DE MIG PUNT", "EDAD MITJANA", "PARC NATURAL DEL MONTSENY"...  
      
  L'ordre per fer visible les instàncies dels clips de pel·lícula que contenen els diferents botons seria: _root.aa._visible=true;, que hauríeu de fer a tots els botons incloent el botó espesp (per incloure espais).  
      
  El pas següent seria que l'ordinador esculli a l'atzar la paraula, i a tal fi, poseu a la variable n un nombre a l'atzar entre el nombre de paraules que vulgueu que tingui l'aplicació. En el vostre cas, heu posat onze paraules amb majúscules.  
      
  La funció random() us ofereix nombres a l'atzar entre 0 i el nombre que heu posat com a paràmetre. Per evitar que surti el 0 i que, a més a més, pugui sortir l'11, li sumeu 1. n=random(11)+1;  
      
  » Depenent del nombre a l'atzar que l'ordinador esculli, posarà el contingut de la variable p amb un codi com aquest:  
       
 

n=random(11)+1;
if(n==1) { p="ESTAM"; }
if(n==2) { p="ANTERA"; }
if(n==3) { p="FILAMENT"; }
if(n==4) { p="PISTIL"; }
if(n==5) { p="ESTIGMA"; }
if(n==6) { p="ESTIL"; }
if(n==7) { p="OVARI"; }
if(n==8) { p="PETAL"; }
if(n==9) { p="SEPAL"; }
if(n==10) { p="OVUL"; }
if(n==11) { p="SAC EMBRIONARI"; }

 
      
  »  Heu d'informar al programa el nombre de caràcters que té la paraula escollida per a la funció random(). Per aconseguir aquest objectiu, utilitzeu el mètode length de l'objecte string, que us retorna el nombre de caràcters que componen una cadena.  
      
 

» El pas següent serà fer visible el nombre de caràcters que té la paraula que heu d'endevinar utilitzant comodins. Feu un bucle per aconseguir-ho. El bucle utilitza la variable p1 per incloure tants comodins com caràcters tingui la paraula, i controla el nombre de comodins segons el valor que tingui la variable l.

» Finalment, heu de fer visible aquesta cadena de comodins en el quadre de text dinàmic. El codi resultant quedaria com el que es mostra a continuació i ja tindríeu programades les accions que hauria de fer el botó.

 
      
 

l=_root.p.length;
for(i=1;i<=l;i++) { var p1=p1+"*";}
_root.t1=p1;

 
 

» Deseu i proveu el programa.

Quan feu clic al botó d'iniciar joc, hauria de sortir en el quadre de text dinàmic una cadena de comodins que, a l'atzar, hauria de ser de longitud diferent cada vegada.

Penseu que, per tenir un nombre limitat i petit de paraules, algunes es poden repetir o poden coincidir amb el mateix nombre de caràcters.

Les paraules per utilitzar a l'aplicació podrien estar en un fitxer extern, fent que l'aplicació estigui més oberta i que us sigui més fàcil de modificar, i el codi programat en aquest botó no s'hauria de modificar.