Bueno, estas ahi?
mira, para ver cual es el problema, intenta usar "trace" para ver si se estan ejecutando las sentencias de codigo que quieres que se ejecuten. y tambien intenta hacer algo asi:
Código ActionScript :
var xm:XML = new XML();
xm.ignoreWhite = true;
var spacer:Number = 25;
var bot:MovieClip;
var urls:Array = new Array();
var nombre:Array = new Array();
xm.onLoad = function( ok:Boolean )
{
if( ok ) init( this.firstchild );
};
function init( aux:XMLNode ):Void
{
trace("ESTE CODIGO SI SE EJECUTA: INIT")
var photos:Array = aux.childNodes;
for( var i:Number = 0; i < photos.length; i++)
{
urls.push(photos[i].attributes.url);
nombre.push(photos[i].attributes.nombre);
var newY:Number = i*(holder._height+20+spacer);
var dupTc:MovieClip = tc.duplicateMovieClip("tc"+i, 10+i, {_y:newY});
holder.duplicateMovieClip("holder"+i,300+i,{_y:newY+15});
loadMovie("./imgs/"+urls[i], "holder"+i);
dupTc.n.text = nombre[i];
tc._visible = false;
holder._visible = false;
//Crear clip
var clip_mc:MovieClip = this.bot.duplicateMovieClip("bot"+i,500+i);
//OJO NUEVAS LINEAS
clip_mc.index = i;
clip_mc.owner = _root;
clip_mc.onPress = function( Void ):Void
{
trace("ESTE CODIGO SI SE EJECUTA: PRESS - " + this);
this.owner.varnum = this.index;
this.owner.gotoAndPlay( 3 );
};
}
var aleatorio:Number = Math.round(Math.random()*20000-30000);
//Con la siguiente linea funcionara de manera local(para quitar el texto en forma de comentario quilate los dos //)
//xm.load("./xml/invs.xml?"+aleatorio);
xm.load("./xml/invs.xml");
_root._root ?? si analisas esa instruccion notaras que es redundante. el root del root, es el mismo root.