Ciao ciao,
ho trovato questo AS per ottenere un effetto nevicata su un banner di auguri natalizi.
Funziona benone, e la cosa è piaciuta a tutti. Unico neo: la nevicata inizia verso la fine di tutta l'animazione (e così dev'essere), e continua per un tot di secondi. Quando provo a fare "riproduci" durante la nevicata, l'animazione riparte, ma la nevicata continua. Posso fare in modo che quando si clicca "riproduci", anche la nevicata s'interrompa all'istante?
Di seguito il codice:
Codice PHP:
baslama_suresi = 50;
kar_seyrekligi = 1;
kar_hiz = 1;
kar_boyut = 0;
bitis_suresi = 2000;
a = 0;
i = -1;
mc._y = -mc._height;
function cogalt() {
a++;
if (a>bitis_suresi) {
clearInterval(z);
}
i++;
_root.mc.duplicateMovieClip("mc"+i, i);
_root["mc"+i].hiz = kar_hiz+random(6);
_root["mc"+i].boyut = kar_boyut+random(10);
_root["mc"+i]._x = random(Stage.width);
_root["mc"+i].rasgele = random(2);
_root["mc"+i].cacheAsBitmap(true);
if (_root["mc"+i].rasgele == 0) {
_root["mc"+i].konum = -(random(3));
} else {
_root["mc"+i].konum = +(random(3));
}
_root["mc"+i].onEnterFrame = function() {
this._y += this.hiz;
this._x += this.konum;
this._width = this._height=this.boyut;
if (this._x>Stage.width or this._x<0 or this._y>Stage.height) {
delete this.onEnterFrame;
removeMovieClip(this);
}
if (_root.engel.hitTest(this._x, this._y, true)) {
delete this.onEnterFrame;
}
};
}
s = 0;
function sure() {
s++;
if (s>baslama_suresi) {
z = setInterval(cogalt, kar_seyrekligi);
clearInterval(zamanla);
}
}
zamanla = setInterval(sure, 1);