carico un swf esterno chiamato home.swf con il metodo addchild()
Non è esatto: Con il metodo addChild(nomeOggetto) aggiungi allo stage il filmato caricato precedentemente con il metodo .load della classe Loader.

Codice PHP:
pulsante.addEventListener(MouseEvent.CLICKcarica);

function 
carica(evento:MouseEvent):void
{
    var 
loader:Loader = new Loader  ;
    
loader.load(new URLRequest ("prova.swf"));
    
loader.contentLoaderInfo.addEventListener(Event.COMPLETEavvia)
    
addChild(loader);

}
function 
avvia(evento:Event):void
{
    
//var mioClip:MovieClip = evento.target.content as MovieClip
    
evento.target.content.gotoAndPlay(2);

Nota che in questo esempio ho commentato la definizione di una variabile di tipo MovieClip a cui ho assegnato il valore del contenuto del loader perchè in questo caso è sufficente fare riferimento a ciò che ha provocato l'evento (il caricamento completo del file).

Se ti serve utilizzare l'.swf caricato in altre funzioni, devi istanziare una variabile di tipo MovieClip a livello globale, cioè visibile in tutto il codice e nella funzione di caricamento completato gli assegni il valore del contenuto del Loader in questo modo:

Codice PHP:
var mioClip:MovieClip;

pulsante.addEventListener(MouseEvent.CLICKcarica);

function 
carica(evento:MouseEvent):void
{
    var 
loader:Loader = new Loader  ;
    
loader.load(new URLRequest ("prova.swf"));
    
loader.contentLoaderInfo.addEventListener(Event.COMPLETEavvia)
    
addChild(loader);

}
function 
avvia(evento:Event):void
{
    
mioClip evento.target.content as MovieClip
    mioClip
.gotoAndPlay(2);

Con questo secondo esempio, dalla funzione "avvia" in poi puoi utilizzare la variabile "mioClip" come se fosse un MovieClip e di conseguenza assegnargli metodi e proprietà riservate a questa classe.


ciao