Capita in alcuni siti di fare delle piccole animazioni flash consistenti in una serie di immagini / testi fissi e qualche elemento nel fondo che si muove lentamente, su vari livelli.
Mi è giusto capitata l’occasione ed ho fatto questo veloce action script per regolare il movimento e soprattutto la ricomparsa dell’oggetto nello Stage.
Il codice è:
function fnStartMove(oggetto:MovieClip,speed:Number,pX:Number,pY:Number,mX:Number,mY:Number){
/*
speed: ogni quanti ms fa uno spostamento
mX: pixel di spostamento orizzontale
mY: pixel di spostamento verticale
*/
oggetto._x = pX;
oggetto._y = pY;
intervallo = setInterval(fnMove,speed,oggetto,mX,mY);
//fnMove(oggetto,mX,mY);
}
function fnMove(oggetto:MovieClip,mX:Number,mY:Number){
oggetto._x += mX;
oggetto._y += mY;
//trace("mX:" + mX + " – mY:" + mY + " – oggettoX:" + oggetto._x + " – oggettoY:" + oggetto._y);
if (oggetto._x > Stage.width)
oggetto._x = 0 – oggetto._width;
if (oggetto._x < -oggetto._width)
oggetto._x = Stage.width;
if (oggetto._y > Stage.height)
oggetto._y = 0 – oggetto._height;
if (oggetto._y < -oggetto._height)
oggetto._y = Stage.height;
updateAfterEvent();
}
//test
fnStartMove(mcOggetto,50,0,0,15,5);
fnStartMove(mcOggetto2,50,0,100,10,-5);
Dovete quindi crearvi un oggetto, fare un linkage con un nome, e richiamare la funzione fnStartMove().
Certamente non è uno script completo e finito, ma può essere una buona base di partenza per divertenti auto-animazioni.
Nell’esempio riportato (codice dopo //test) muovo due oggetti (mcOggetto, mcOggetto2) precreati per lo Stage.
Due righe di dettaglio.
La funzione fnStartMove() si occupa di posizionare l’oggetto nella posizione di partenza (pX,pY) e di lanciare il loop del movimento con una velocità pari al parametro passato (speed).
La funzione fnMove() si occupa di spostare l’oggetto e verificare se è completamente uscito dallo stage. Nel caso in cui lo fosse, lo riporta all’inizio dello stage.
Se trovi questo articolo su un blog diverso da “blog.merlinox.com” si tratta probabilmente di una copia non autorizzata. L’indirizzo originale di questo articolo è: FLA – Auto movimento scritto da Merlinox.
