Sto un pò fuori fase, anche perchè è da un pò che non lavoro in Flash, e quindi inevitabilmente qualcosa si dimentica...
Cmq, questo è il problema.
Ho un mc, chiamiamolo main, con dentro un altro mc, che chiamiamo secondary; all'interno di main c'è un pulsante, cliccando il quale viene effettuato uno zoom centrato su secondary, che quindi viene quasi a riempire lo schermo.
Ovviamente, secondary è normalmente ridotto in scala, in modo tale che, effettuato lo zoom, si trova al 100%.
All'interno di secondary, si trova un ulteriore mc, film, in cui ho questo codice:
Codice PHP:
var interceptMovieClip:Function = function (target_mc:MovieClip):MovieClip {
var temp:MovieClip = (target_mc._name == "firstMC") ? secondMC : firstMC;
return temp;
};
var slideShow:Function = function (target:MovieClip, index:Number, shifting:Number) {
var other = interceptMovieClip(target);
var int_index = index;
var mclo:MovieClipLoader = new MovieClipLoader();
var mcli:Object = new Object();
mcli.onLoadError = function(target:MovieClip, errorCode:String) {
if (errorCode == "URLNotFound") {
slideShow(target, index, shifting);
}
};
mcli.onLoadInit = function(target:MovieClip):Void {
trace("pit/pit"+int_index+".jpg");
int_index += 2;
var t:Object = new mx.transitions.Tween(target, "_alpha", mx.transitions.easing.None.easeNone, 0, 100, .5, true);
t.onMotionFinished = function() {
var a = setInterval(function () {
clearInterval(a);
var t:Object = new mx.transitions.Tween(target, "_alpha", mx.transitions.easing.None.easeNone, 100, 0, .5, true);
t.onMotionFinished = function() {
mclo.loadClip("pit/pit"+int_index+".jpg", target);
target.swapDepths(other);
};
}, shifting*1000);
};
};
mclo.addListener(mcli);
mclo.loadClip("pit/pit"+int_index+".jpg", target);
};
//
var time_to_slide:Number = 5;
var firstMC:MovieClip = _level0.createEmptyMovieClip("firstMC", 1);
var index1:Number = 1;
var secondMC:MovieClip = _level0.createEmptyMovieClip("secondMC", 2);
var index2:Number = 2;
slideShow(firstMC, index1, time_to_slide*2);
setTimeout(slideShow, 5000, secondMC, index2, time_to_slide*2);
I problemi che riscontro sono due:
1) le immagini caricate sono sempre fuori centro; il centro dell'immagine, infatti, si viene a trovare esattamente nell'angolo in alto a sinistra rispetto al mc secondary. Questo indipendentemente dal fatto che il mc film abbia il centro in alto a sx o centrato, ed indipendentemente dalla posizione che ha rispetto al mc secondary.
2) vengono caricate soltanto le immagini con numerazione dispari (pit1.jpg, pit3.jpg, pit5.jpg etc), come se il mc secondMC, quello che dovrebbe caricare le immagini con numerazione pari, non venisse creato, o comunque non funzionasse.
Dove sto sbagliando?
Grazie per qualsiasi aiuto!