Ogni istruzione di uno script viene chiamata statement. La fine di uno statmenet e' indicata dal simbolo ;. Anche se in ActionScript il ; è opzionale, si consiglia di metterlo ugualmente per aumentare la leggibilità del codice. In modalità normale ogni statement occupa esattamente una riga. In modalità esperta si possono scrivere più comandi su una riga ed i comandi possono estendersi su più righe. I comandi possono essere raggurppati in blocchi. I blocchi sono delimitati dalle parentesi graffe {}. Passando dalla modalità esperta a quella normale tutti i comandi vengono ridistribuiti uno per riga.
Le istruzioni raggruppate in un blocco vengono eseguite tutte ed in sequenza. Esistono però particolari comandi che permettono di saltare, ripetere o richiamare interi blocchi di istruzioni. Per aumentare la leggibilità dei programmi è possibile introdurre dei commenti. I commenti iniziano con due barre oblique // e terminano a fine riga. I commenti servono per spiegare "a parole" il funzionamento di alcune porzioni di codice. Sono essenziali quando ad un lavoro partecipano più persone. Le variabili Un programma, per poter essere interattivo, deve aver modo di memorizzare delle informazioni ricavate durante la sua esecuzione. Possono essere introdotti anche in modalità normale attraverso l'apposita voce. Le Variabili sono quelle scatole in cui i programmi possono memorizzare le informazioni durante il loro funzionamento.
Le variabili Ad ogni variabile è associato un nome (detto identificatore) Gli identificatori possono essere costituiti da lettere, numeri, $ e _, ma non possono iniziare per numero. I nomi non sono case-sensitive: lettere maiuscole e minuscole vengono considerate allo stesso modo. Assegnazione L operazione di inserimento di un valore all interno di una variabile è chiamata assegnazione. Una variabile si assegna scrivendo il suo nome, quindi =, ed infine il valore. Assegnazione Assegnazione La parte destra di un operazione di assegnazione può essere un numero, una scritta oppure un espressione (un calcolo). Le variabili possono essere assegnate in modalità normale tramite l'appostio comando set Variable. La parte sinistra deve necessariamente essere una variabile (a meno che non si usi il comando set, ma non lo vedremo). Utilizzo Utilizzo Le variabili vengono utilizzate come paramteri dei comandi ActionScript. Tutte le volte che in un comando viene indicato un nome di una variabile, esso viene sostituito con il valore contenuto in quel momento nella variabile. Una variabile può essere utilizzata ad esempio per memorizzare il frame a cui saltare dopo la pressione di un tasto.
Utilizzo Utilizzo In un assegnazione il nuovo valore viene memorizzato nella variabile solamente quando il valore dell espressione contenuto nella parte destra è stato calcolato completamente. Si può quindi utilizzare nella parte destra la stessa variabile specificata nella parte sinistra. Questa tecnica può essere utile ad esempio per incrementare un punteggio. In ActionScript le variabili non sono tipate, al contrario dei dati che lo sono. Una variabile può contenere valori di natura differente (numeri, scritte, filmati) in momenti diversi. dei valori specificano di che natura sia il dato inserito nella variabile. Esistono 5 tipi principali di dati: I numeri Le stringhe I booleani Gli oggetti I filmati I numeri idenitficano numeri reali a doppia precisione. Le stringhe contengono scritte e sequenze di lettere. Vengono indicate scrivendo i valori tra virgolette doppie.
I booleani possono contenere una informazione del tipo vero (true) o falso (false). Gli oggetti vengono impiegati per rappresentare i dati di maggior complessità come date, colori o suoni. Flash inferisce automaticamente dal contesto il tipo delle variabili. Esistono però alcuni comandi con cui è possibile trasformare esplicitamente una stringa in numero e vice versa. I filmati sono invece particolari tipi di oggetti che rappresentano elementi grafici visualizzati sulla videata. Il comando Number(S) trasforma la stringa S tra parentesi in un numero. Il comando String(N) trasforma il numero N scritto tra parentesi in una stringa. La visibilita' Esistono 2 classi di variabili in Flash: Le variabili globali Le variabili locali
La visibilita' La visibilita' Le variabili globali sono visibili (utilizzabili) in ogni parte del filmato. Esse mantengono il loro valore in tutte le parti di uno script. Si assegnano semplicemente utilizzando il comando =. La visibilita' La visibilita' Le variabili locali sono visibili solamente all'interno del blocco (tra le parentesi graffe) in cui sono dichiarate. Per definire le variabili locali occorre impiegare il comando var. La visibilita' Le variabili globali servono per contenere dati necessari in tutto il filmato. Le variabili locali servono per memorizzare dati temporanei adoperati esclusivamente nel blocco di appartenenza. E' utile differenziare per rendere i programmi più leggibili e meno soggetti ad errori. Agire con i campi Abbiamo visto in precednza come sia possibile introdurre dei campi all'interno dei filmati. Flash permette di associare le variabili ai campi presenti in un filmato. Il contenuto della variabile corrisponde quindi a ciò che è scritto nel campo.
Agire con i campi Agire con i campi Testo Testo Un campo di tipo "dynamic text" visualizza il contenuto della variabile associata, ma non può essere modificato durante l'esecuzione. Un campo dinamico può utilizzare comandi HTML per definire l'aspetto del testo. Agire con i campi Agire con i campi Testo I campi dinamici vengono utilizzati per presentare output all'utente. Un campo di tipo "input text" permette all'utente di inserire delle informazioni che il programma può ritrovare nella variabile associata. Agire con i campi Agire con i campi Testo Impostando l'opzione password, i caratteri digitati dall'utente non vengono visualizati. I campi di input vengono utilizzati per ricevere l'input dell'utente.
Le espressioni Le espressioni Sui dati di tipo numerico possono essere eseguite le normali operazioni aritmetiche: + Somma - Differenza * Prodotto / Divisione % Resto della divisione Per variare la precedenza degli operatori si possono utilizzare le parentesi tonde. Le espressioni Le espressioni Esistono anche operazioni che aggiornano i valori di variabili numeriche: Le operazioni possono essere utiilizzate per calcolare i parametri dei comandi, selezionando l'opzione espressioni. Var++ Var-- Var+=A Var-=A Incrementa il valore di Var Decrementa il valore di Var Aggiunge A a Var Sottrae A a Var Le espressioni Le espressioni L'operatore + assume un significato diverso quando viene interposto tra stringhe. In questo caso effettua la concatenazione delle stringhe. A: Ciao B: Mondo A+B: Ciao Mondo + La concatenazione di due stringhe corrisponde alla scritta ottenuta accostando i due addendi in sequenza.
Esempio: una calcolatrice Esempio: una calcolatrice Con gli strumenti fino ad ora appresi siamo in grado di realizzare una semplice calcolatrice in flash. Vediamo subito come! Iniziamo ad inserire due campi di input per i due numeri, ed un testo dinamico per il risultato. Esempio: una calcolatrice Esempio: una calcolatrice Input1 Input2 Output Ad ogni campo associamo una variabile: Input1, Input2 e Output. Aggiungiamo quindi 4 pulsanti, uno per ciascuna operazione. Esempio: una calcolatrice Una delle caratteristiche essenziali dei linguaggi di scripting è quella di consentire l'esecuzione di blocchi di programma in seguito alla verifica di opportune condizioni. Il comando IF serve a questo scopo. Ad ogni pulsante assegnamo un'azione che imposti la variabile di Output a seconda dell'operazione corrispondente.
che possono essere verificate corrispondono a confronti tra espressioni (generalmente contenenti variabili). I confronti vengono eseguiti tramite opportuni operatori. Gli operatori di confronto sono: == Uguali!= Diversi < Minore di <= Minore o uguale > Maggiore <= Maggiore o uguale All'interno di un comando if si specifica una condizione. Se il confronto specificato dalla condizione è vero, il blocco di istruzioni successivo viene eseguito...... altrimenti lo script prosegue ignorando tali icomandi. Nella versione if... else, qualora la condizione sia falsa, vengono eseguite le istruzioni contenute nel blocco dopo else.
possono essere combinate tramite opportuni connettori. In questo caso si possono ottenere condizioni complesse a partire da confronti semplici. Si può chiedere che due condizioni siano verificate contemporaneamente (AND) combinandole con il simbolo &&. Si può chiedere che almeno una di due condizioni sia verificata (OR) combinandole con il simbolo. Si può chiedere che una condizione non sia verificata (NOT) attraverso il simbolo!. Esempio: accesso con password Esempio: accesso con password In molti casi è utile limitare la visione di un filmato ad una ristretta classe di utenti dotati di ID e password. Vediamo come realizzare un controllo di accesso in Flash. Costruiamo la scena iniziale con due campi di Input (di cui uno di tipo password) ed un pulsante.
Esempio: accesso con password Esempio: accesso con password Aggiungiamo quindi una scena a cui mandare in caso di dati errati ed un'altra che rappresenti l'inizio del filmato. Al pulsante associamo un'azione che mediante una IF verifichi la correttezza di ID e password. Esempio: accesso con password In caso affermativo saltiamo alla scena che rappresenta l'inizio del filmato. Altrimenti visualizziamo la scena per i dati errati.