Sto tribolando come un assassino, su un fatto a cui no riesco a dare una spiegazione razionale, prima che raziocinante:

Ho scritto un semplice script di caricamento di un filmato esterno che si chiama down.swf collegato all'istanza di un clip:


onClipEvent (load) {
this.loadMovie("files_esterni/down.swf);
_root.stop();
}
onClipEvent (data) {
if (this.getBytesLoaded() == this.getBytesTotal()) {
_root.gotoAndPlay(3);
}
}


Al frame 3 faccio scomparire un livello con il preloader e avvio il movieclip caricato.

Ora viene il bello:
Se down.swf è prodotto con il flash2004, funziona tutto perfettamente , il preloader scompare e si attiva il movieclip.
Se down.swf è prodotto con Fireworks2004 o Swish2, incredibilmente il preloader rimane visibile (ovvero non funziona più lo script _root.gotoAndPlay(3). Signori questo è davvero paranormale

Da prove e prove e prove fatte con debug alla mano ho potuto solo notare che il this.getBytesLoaded() ed anche il this.getBytesTotal()nel caso di file swf prodotto con il fireworks2004, rimane a NaN.
In questo caso (e questo è inspiegabile) anche se verifica la condizione (loaded=total) NON ESEGUE (MANCO A COLPI DI LEGNO) IL COMANDO _root.gotoAndPlay(3).

Ho provato a mettere un trace prima del salto condizionato e mi stampa il messaggio, quindi lo script li dentro ci passa. Ma poi non salta al frame successivo

Se qualcuno ha un miracolo, un suggerimento, che magari fosse una stronz...a, mi fa un grosso favore.
ciauz.