Hosting & Domini

 
HOME DOMINI HOSTING SERVER SUPPORTO

Introduzione ad ActionScript > Analisi di uno script di esempio

Analisi di uno script di esempio


In questo filmato di esempio, quando l'utente trascina l'insetto nell'ammazzainsetti, l'insetto diventa nero e cade mentre l'ammazzainsetti lampeggia. Il filmato è composto da un fotogramma e contiene due oggetti, l'istanza del clip filmato dell'insetto e l'istanza del clip filmato dell'ammazzainsetti. Ogni clip filmato contiene un fotogramma.

Le istanze dei clip filmato dell'insetto e dell'ammazzainsetti sullo stage nel fotogramma 1.
 

Il filmato contiene solo uno script, che è associato all'istanza bug, come illustrato nel pannello Azioni oggetto sottostante.

Il pannello Azioni oggetto con lo script associato all'istanza bug.
 

Entrambi gli oggetti devono essere clip filmato in modo che sia possibile assegnare loro nomi di istanze nel pannello Istanza e controllarli tramite ActionScript. Il nome dell'istanza dell'insetto è bug, mentre il nome dell'istanza dell'ammazzainsetti è zapper. Nello script si fa riferimento all'insetto con this in quanto lo script è associato all'insetto e la parola riservata this si riferisce all'oggetto che la invoca.

Lo script include due gestori onClipEvent con due eventi diversi: load e enterFrame. Le azioni nell'istruzione onClipEvent(load) vengono eseguite solo una volta, al caricamento del filmato. Le azioni nell'istruzione onClipEvent(enterFrame) vengono eseguite ogni volta che l'indicatore di riproduzione entra in un fotogramma. Anche nei filmati composti da un solo fotogramma, l'indicatore di riproduzione entra nel fotogramma più volte e lo script viene eseguito ripetutamente. Di seguito sono descritte le azioni che si verificano all'interno di ciascun gestore onClipEvent.

onClipEvent(load) Un'azione startDrag rende il clip filmato dell'insetto trascinabile. Viene creata un'istanza dell'oggetto Color tramite l'operatore new e la funzione di costruzione Color, Color, quindi tale istanza viene assegnata alla variabile zap:

onClipEvent (load) {
	startDrag (this, true);
	zap = new Color(this);
}

onClipEvent(enterFrame) Un'istruzione condizionale if valuta un'azione hitTest per verificare se l'istanza dell'insetto (this) tocca l'istanza dell'ammazzainsetti (_root.zapper). La valutazione può produrre due risultati: true o false:

onClipEvent (enterFrame) {
	if (hitTest(_target, _root.zapper)) {
		zap.setRGB(0);
		setProperty (_target, _y, _y+50);
		setProperty (_root.zapper, _alpha, 50);
		stopDrag ();
	} else {
		setProperty (_root.zapper, _alpha, 100);
	}
}

Se l'azione hitTest restituisce true, l'oggetto zap creato dall'evento load verrà usato per impostare il colore dell'insetto su nero. La proprietà y dell'insetto (_y) è impostata su un valore pari a quello corrente più 50, in modo che l'insetto cada. La trasparenza dell'ammazzainsetti (_alpha) è impostata su 50 in modo che diventi opaco. L'azione stopDrag impedisce l'ulteriore trascinamento dell'insetto.

Se l'azione hitTest restituisce false, verrà eseguita l'azione dopo l'istruzione else e il valore _alpha dell'ammazzainsetti verrà impostato su 100. In tal modo l'ammazzainsetti lampeggia mentre il valore _alpha passa dallo stato iniziale (100) allo stato "ammazzato" (50) e quindi di nuovo allo stato iniziale. L'azione hitTest restituisce false e le istruzioni else vengono eseguite dopo che l'insetto è stato ammazzato ed è caduto.



Home | Mappa del sito | Condizioni di utilizzo | Privacy
 
Copyright © Hostek Srl. P.Iva 05434210489