Io ho trovato questo codice in AS 2 qualcuno riesce a convertirlo in AS 3?
Non controlla il numero di foto che sono nella cartella ma fa uno slide a seconda del numero massimo di foto che si vedono, e se non ce ne sono più ricomincia da capo...
codice:
intervalm = 7000;//Time interval in milliseconds
mainstotry = 10;//Maximum images to be shown at once by the slideshow.
//This is also the ammount of images that flash will try to look for, in the folder.
//
//INIT VARIABLES, NOT TO BE CHANGED.
imgnumber = 2;//First image to be created by duplicating "photo1"
faddingnow = 0;//Image to be faded out
fadeback = 1;//Background of fadding pair
fadedbefore = mainstotal;//Init of previous faded image, to be hid and 100alphaed
mainstotal = mainstotal;//Init of total of valid loaded images
//
aqui = this; //Tells the functions where this slideshow is located
//this is the main fader
fader = function(who, shade, frames) {
alphastart = who._alpha;
shadedif = shade - who._alpha;
who.onEnterFrame = function() {
//who._alpha -= 10;
who._alpha = who._alpha + shadedif / frames;
if (Math.abs(who._alpha - shade) < Math.abs(shadedif / frames)) {
who._alpha = shade;
delete who.onEnterFrame;
}
};
};
//This actions calls the fader()
function justFades(aqui) {
mainpInterval_inited =true;
whatToFade(aqui);
this = aqui;
this["photo"+fadedbefore]._visible = false;
trace("hidden: "+this["photo"+fadedbefore]);
this["photo"+fadedbefore]._alpha = 100;
this["photo"+fadeback]._visible = true;
fader(this["photo"+faddingnow], 0, 20);
fadedbefore = faddingnow;
}
//
function whatToFade() {
this = aqui;
fadeback++;
faddingnow++;
//if the last image has already been faded out…
if (fadedbefore == mainstotal) {
this.photo1._visible = true;
this.photo2._visible = true;
this["photo"+(mainstotal+1)]._visible = false;
fadeback = 2;
faddingnow = 1;
//if next pair's background image is smaller than 1px, sets total loaded…
} else if (this["photo"+fadeback]._width<1) {
mainstotal = faddingnow;
//…duplicates first foto below the last loaded image.
loadMovie("mainpictures/Photo1.jpg", this["photo"+fadeback]);
//…and batch deletes the rest of empty movieclips.
do {
fadeback++;
removeMovieClip(this["photo"+fadeback]);
} while (fadeback<mainstotry);
}
}
//This tries to load the maximum ammount of images to be shown at once in the slideshow
for (i=1; i<=mainstotry; i++) {
this.createEmptyMovieClip("photo"+i, 1000-i);
this["photo"+i]._visible = false;
loadMovie("mainpictures/Photo"+i+".jpg", this["photo"+i]);
}
//This makes sure the interval is loaded just once or cleared before another one is called.
if (mainpInterval_inited !=true) {
var mainpInterval:Number = new setInterval(justFades, intervalm, aqui);
this.onUnload = function() {
clearInterval(mainpInterval);
};
}