Ciao
Non serve che definisci il livello (root) a cui ti riferisci.
E' sufficente che nel livello sia presente l'oggetto su cui vuoi interagire.
Ti faccio un esempio pratico:
Sei nel primo fotogramma della timeline principale dove è presente un tuo MovieClip con bottone annidato al suo interno e nominato con nome istanza "bottone" e vuoi interagire su un altro MovieClip presente nello stesso fotogramma della timeline principale (nome istanza:"pippo"), spostando la sua timeline a un determinato fotogramma .
Codice PHP:
mc_clip.bottone.addEventListener(MouseEvent.CLICK, funzione);
function funzione(evento:MouseEvent):void{
pippo.gotoAndPlay(5);
}
In questo caso il Listener è applicato al "bottone" annidato in "mc_clip" e "pippo" è presente con il suo nome istanza nello stesso fotogramma.
Nel caso vuoi applicarlo a "mc_clip" ti basta questo:
Codice PHP:
mc_clip.addEventListener(MouseEvent.CLICK, funzione);
function funzione(evento:MouseEvent):void{
pippo.gotoAndPlay(5);
}
E' importante considerare che lo stage principale VEDE e interagisce con eventuali timeline di MovieClip posizionati sullo stage stesso.
Più problematico ma comunque fattibile fare in modo che una funzione inserita in una timeline secondaria di un clip annidato possa interagire sullo stage principale.
In altre parole il "padre" controlla facilmente il figlio ma per fare in modo che il "figlio" controlli il "padre" occorre adottare un "trucco" particolare e in questo caso ritorniamo a utilizzare il .parent.
Se ti interessa approfondire la questione possiamo riparlarne in un topic più specifico (ovviamente, se tempo e voglia ce lo permettono).
Alla prossima !
ciao