Abbiamo visto (lezione_3) che si possono creare degli oggetti animati al loro interno. Come si interviene su di loro tramite script?
Vediamo come fermare e far ripartire l'animazione dell'aereo visto in precedenza.
Facciamo in modo di avere nella libreria un oggetto di tipo clip filmato con un'animazione. (questo esempio è un buon punto di partenza: animazione interna.fla )
Trasciniamo due istanze (copie) dell'oggetto sulla libreria, e , usando il pannello delle proprietà, assegnamo come nome d'istanza aereo1 e aereo2:
il nome ci è utile per identificare la singola istanza attraverso lo script.
A questo punto inseriamo un pulsante, a cui associamo questo codice:
on (release) { aereo1.stop(); }
ed un altro con il codice
on (release) { aereo1.play(); }
Possiamo creare due altri pulsanti, in cui il codice sarà lo stesso , a parte aereo1.stop() e aereo1.play() che saranno sostituiti da aereo2.stop eccetera…
animazione interna control.fla
Quello che è importante qui è la sintassi del punto: in questo caso aereo1.play(); significa: applica la funzione play all'istanza aereo1.
Ci sono destinazioni di puntamento predefinite che sono molto utili:
this indica l'oggetto a cui lo script è associato (in genere si può omettere in quanto sottointeso)
_parent indica l'oggetto che contiene quello a cui stiamo applicando lo script
_root indica il livello principale del filmato, il contenitore generale
Con actionscript, possiamo controllare facilmente le proprietà di un oggetto: renderlo invisibile, spostarlo, ruotarlo, ingrandirlo o ridurlo… Vediamo in dettaglio le proprietà principali:
Il filmato Flash ha al suo interno un sistema cartesiano di coordinate, che corrispondono ai pixel del filmato.
Va ricordato che il punto di origine dell'asse delle y si trova in alto a sinistra: per cui la coordinata y di un oggetto aumenta man mano che l'oggetto scende!
Proprietà
_y //la coordinata y dell'oggetto _x //la coordinata x dell'oggetto
Valori: non ci sono limiti alle coordinate: tuttavia se sono maggiori della dimensione del filmato l'oggetto scomparirà alla vista.
Ogni oggetto sullo stage può essere ridimensionato, modificando le proprietà _xscale e _yscale. Rispettivamente queste proprietà controllano le dimensioni orizzontali e verticali dell'oggetto.
Proprietà
_yscale //la dimensione verticale dell'oggetto _xscale //la dimensione orizzontale dell'oggetto
Valori: il valore preimpostato è 100, (cento per cento).
Ogni oggetto può essere reso visibile o invisibile modificando la proprietà _visible
_visible=true //rende visibile un oggetto (Valore di default) _visible=false // rende invisibile un oggetto
Il valore _alpha determina il livello di trasparenza di un oggetto:
_alpha=numero // imposta la trasparenza a numero
Valori: la trasparenza va da 0 (invisible) a 100 (completamente opaco)
Anche la rotazione si può impostare tramite la proprietà _rotation:
_rotation
In questo filmato di esempio è possibile cambiare le proprietà dell'oggetto aereo usando i pulsanti alla destra.
Vediamo un semplice uso dei suoni, aggiungiamo il rumore del motore del nostro aereo.
Ci sono diversi siti da cui scaricare suoni, ad esempio possiamo utilizzare questo: http://www.grsites.com/sounds/aircraft001.shtml
Un ottimo editor opensource per l'audio è Audacity: http://audacity.sourceforge.net/
Ecco qui un suono adatto all'aereo: suoni.zip
Una volta trovato il suono adatto, lo importiamo nella libreria:
Ora, modifichiamo il clip dell'aereo (cliccando sull'oggetto nella libreria, o su una delle sue istanze)
Per aggiungere il suono, selezioniamo un fotogramma chiave, e modifichiamo dall'apposito pannello le proprietà come segue:
In questo modo il suono verrà ripetuto all'infinito.
Scarica il file sorgente: animazione_suono.fla