Ciao a tutti.
Ho realizzato un filmato flash che al fotogramma x carichi in un movieClip di tipo swf.
Prima di postare il codice relativo al caricamento del file, vi descrivo il file swf caricato:

  • Il file "ospite" si chiama loop.swf
  • nella libreria è stato importato un file mp3 di nome loop.mp3, con opzione "esporta per actionScript" selezionata e id suono
  • loop.swf è formato da un singolo fotogramma contenente il seguente codice:

    codice:
    var sottofondo:Sound = new Sound();
    sottofondo.attachSound("suono");


Ora vi descrivo il file swf che andrà ad aprire il filmato sopra descritto: al fotogramma x (non è rilevante) ho posizionato un movieClip sound, senza nome istanza; allo stesso fotogramma è stato associato un semplice stop.

Vi descrivo il movieclip sound:
3 fotogrammi

Fotogramma 1:

  • del testo statico e del testo dinamico, che mostrano la percentuale di caricamento del file swf che deve caricare (funziona, quindi non lo descrivo)
  • un movieclip vuoto con nome istanza loopx, nel quale andrà a finire il file swf esterno (il livello che lo contiene è esteso a tutti e tre i fotogrammi)
  • il seguente codice associato al fotogramma
    codice:
    stop();
    var soundLoader:MovieClipLoader = new MovieClipLoader();
    var soundListener:Object = new Object();
    
    function impostaProgresso(byteCaricati:Number, byteTotali:Number) {
    	var perc:Number = Math.floor(byteCaricati/byteTotali*100);
    	percentuale.text = perc;
    }
    
    soundListener.onLoadProgress = function(mc:MovieClip, numBytesLoaded:Number, numBytesTotal:Number) {
        impostaProgresso(numBytesLoaded, numBytesTotal);
    };
    
    soundListener.onLoadComplete = function(mc:MovieClip) {
    	gotoAndStop(2);
    	loopx.sottofondo.start(0,0);
    };
    
    soundLoader.addListener(soundListener);
    
    soundLoader.loadClip("suoni/loop.swf", loopx);


Fotogramma 2:

  • un pulsante che mostra il testo "sound on", nome di istanza offBtn
  • codice associato al fotogramma:
    codice:
    stop();
    offBtn.onRelease = function() {
    	loopx.sottofondo.stop()
    	gotoAndStop(3);
    }


Fotogramma 3:

  • un pulsante che mostra il testo "sound off", nome di istanza onBtn
  • codice associato al fotogramma:
    codice:
    stop();
    onBtn.onRelease = function() {
    	loopx.sottofondo.start(0,0);
    	gotoAndStop(2);
    }


Risultato: al test del filmato principale, il caricamento procede bene: ho fatto dei test con trace e altri metodi spartani... una cosa è certa il file loop.swf è stato caricato nel movieClip loopx.
Il suono invece... nulla.

Cosa mi consigliate? Qualcosa che non mi faccia rifare daccapo tutto quanto

Grazie per la pazienza!!!

PS. Il codice è in ActionScript 2.0, anche se ve ne sarete già accorti