Tengo un problema con Arrays, tengo un Sliding hecho con Arrays pero declarados desde el mismo SWF, al rato que quise hacerlo para que ese Array se construya leido un Xml y esos valores pasarlos al Array, el array se construye pero el sliding ya no funciona, me podrian ayudar con esto...les mando mi código para que lo revisen

//Array de la descripcion de las imagenes
info = new LoadVars();
info.load("imagenes/descripcion_es.txt");
info.onLoad = function(leido) {
if (leido) {
descrip = new Array();
for (j=1; j<=info.total; j++) {
descrip[j] = this["info"+j];
}
}
};
/**********************************************************************************/
/**********************************************************************************/
/*BASE DE DATOS PARA CARGA DE IMAGENES
/*Los nombres son los mismos para los thumbnails y para las fotos grandes*/
//////////////////*********************************//////////////////////***********/////////////////////
****************************///////////////////////**************///////////////////////////////***********//////////////////////////*//////////////////////**************///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//declarando este array el sliding funciona
var picnames:Array = ["01.jpg", "02.jpg", "03.jpg", "04.jpg", "05.jpg", "06.jpg", "07.jpg", "08.jpg", "09.jpg", "10.jpg", "11.jpg", "12.jpg", "13.jpg", "14.jpg"];
var dirreccion:String;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////En Cambio cuando le hago de esta forma no me sirve
XML.prototype.ignoreWhite = true;
var dataproyectos:XML=new XML();
dataproyectos.load("variedades.xml");
dataproyectos.onLoad=function(leido){
if(leido){
var datos=this.firstChild;
var total = this.firstChild.childNodes.length;
for(h=0;h<total;h++){
direccion=datos.childNodes[h].attributes.thumb;
picnames.push(direccion);
trace(picnames);
}
}
}
/**********************************************************************************/
// folder donde estan las imagenes grandes
var PICPATH:String = "imagenes/proyectos/";
// folder donde estan los thumbnails
var PICPATH2:String = "imagenes/proyectos/thumbs/";
// numero de imagenes en la bbd
var NPICS:Number = picnames.length;
// numero de imagenes a cargarse
var PICX:Number = 0;
// posicion de las imagenes grandes en X
var PICY:Number = 65;
// posicion de las imagenes grandes en X
var THUMBHOLDERX:Number = 0;
// posicion de las imagenes grandes en X
var THUMBHOLDERY:Number = 595;
// ancho de los thumbnails
var THUMBW:Number = 60;
// alto de los thumnails
var THUMBH:Number = 45;
// margen entre cada thumbnail
var MARGIN:Number = 10;
// suma aproximada de bytes de todos las thumnails (x2)
var TOTALBYTES:Number = 212000;
// numero maximo de pixels para mover el slider (en frames)
var MAXPIXELS:Number = 12;
// posicion x de la mascara
var MASKX:Number = 0;
// ancho de la mascara
var MASKW:Number = 950;
// posicion y de la mascara
var MASKY:Number = 560;
// alto de la mascara
var MASKH:Number = 300;
// variable para ir comprobando cuantas imagenes se van cargando
var totalloaded:Number = 0;
// index en el array de las imagenes, usado para la carga
var ipic:Number;
// set up loader, an instance of MovieClipLoader
var loader:MovieClipLoader = new MovieClipLoader();
// use the main timeline to listen to and respond to loader's broadcast events
loader.addListener(this);
/********* Funciones definidas, incluye funcion inicial **********/
// handler para el rollover en thumbnail
function grow() {
this.onEnterFrame = function() {
if (this._width<THUMBW*1.2) {
this._x -= this._width*.025;
this._y -= this._height*.025;
this._width *= 1.05;
this._height *= 1.05;
//pct_txt.text = ":: "+descrip[this.i+1]+" ::";
} else {
delete this.onEnterFrame;
}
};
}
// handler para el rollout en el thumbnail
function shrink() {
this.onEnterFrame = function() {
if (this._width>THUMBW) {
this._width /= 1.05;
this._height /= 1.05;
this._x += this._width*.025;
this._y += this._height*.025;
} else {
delete this.onEnterFrame;
}
};
}
// funcion para mover el thumbnail en el slider ("this" = thumbs_mc)
function sliderControl() {
var w:Number = this._width/2;
var hw:Number = mask_mc._width/2;
var npixels:Number;
// solo cuando el mouse esta sobre la mascara del slider
if (_ymouse>mask_mc._y && _ymouse<mask_mc._y+mask_mc._height) {
// cuando el mouse esta sobre la mitad izquierda del slider
if (_xmouse>mask_mc._x && _xmouse<mask_mc._x+hw) {
npixels = (hw-_xmouse)/hw*MAXPIXELS;
this._x += npixels;
if (this._x>=0) {
this._x = this._x-w;
}
// cuando el mouse esta sobre la mitad izquierda del slider
} else if (_xmouse>mask_mc._x+hw && _xmouse<mask_mc._x+mask_mc._width) {
npixels = (_xmouse-hw)/hw*MAXPIXELS;
this._x -= npixels;
if (this._x<=-w) {
this._x = this._x+w;
}
}
}
}
// movie de caja con esquinas redondeadas para mostrar texto de descripcion
attachMovie("case_texto", "case_texto", 998);
// posicion del movie
case_texto._x = 964/2;
case_texto._y = 558;
// cuando se hace release en el thumbnail
function openPic() {
//carga de la imagen
pic_mc.loadMovie(PICPATH+picnames[this.i]);
//aparece movie loading
cargador._visible = true;
//carga la descripcion de la imagen a cargar
pct_txt.text = ":: "+descrip[this.i+1]+" ::";
//ancho del la descripcion
ancho = pct_txt._width;
//posicion del txt que carga la descripcion y se centra en el Stage
pct_txt._x=(964/2)-(ancho/2);
// hace que el movie cresca a lo largo con movimiento suave
case_texto.onEnterFrame=function(){
case_texto._width+=((ancho+50)-case_texto._width)/4;
}
}
// asignacion de eventos a handlers (llama a todos los jpg cuando estan cargados)
function setupHandlers() {
thumbs_mc.onEnterFrame = sliderControl;
for (var i:Number = 0; i<NPICS*2; i++) {
thumbs_mc["mc"+i].onRollOver = grow;
thumbs_mc["mc"+i].onRollOut = shrink;
thumbs_mc["mc"+i].onRelease = openPic;
}
}
// funcion listener para broadcast mensaje 'hecho' (for each pic)
// el onLoadInit es ejecutado cuando el movieclip ha sido cargado en _mc Y
// sus datos de altura y anchura están disponibles.
// (_mc = el movieclip cargado)
// esta rutina pone el tamaño y la posición de cada clip como este jpg
// is loaded and starts the next one loading. When all have been loaded,
function onLoadInit(_mc:MovieClip) {
// le da estas caracteristicas cuando la imagen se ha cargado:
_mc._width = THUMBW;
_mc._height = THUMBH;
// para claridad de la imagen
_mc._alpha = 99;
// (usado por openPic para saber que imagen se va a abrir)
_mc.i = (ipic>=NPICS ? ipic-NPICS : ipic);
// incluye el tamanio (b) en la variable totalloaded
totalloaded += loader.getProgress(_mc).bytesTotal;
// ahora carga el proximo (si hay mas) o le incluye los handlers si esta completo
ipic++;
if (ipic == NPICS*2) {
// carga una foto aleatoria
dir=Math.floor(Math.random()*NPICS)
pic_mc.loadMovie(PICPATH+picnames[dir]);
//pone la descripcion de la foto que se cargo aleatoriamente
pct_txt.text = ":: "+descrip[dir+1]+" ::";
//crea el nuevo ancho del texto
ancho = pct_txt._width;
//lo centra en el Stage
pct_txt._x=(964/2)-(ancho/2);
//hace crecer el movie donde se posa el txt
case_texto.onEnterFrame=function(){
case_texto._width+=((ancho+50)-case_texto._width)/4;
}
//carga de las imagenes
onEnterFrame = function () {
this.pic_mc.percent = (this.pic_mc.getBytesLoaded()/this.pic_mc.getBytesTotal())*100;
if (this.pic_mc.percent == 100) {
cuenta = 0;
onEnterFrame = function () {
//trace(_root.texto_proyectos._alpha);
cuenta++;
_root.texto_proyectos._alpha += 5;
if (cuenta>=100) {
_root.texto_proyectos._alpha = 100;
delete this.onEnterFrame;
}
};
}
};
// carga la funcion para asignarles las demas funciones
setupHandlers();
} else if (ipic>=NPICS) {
// carga un jpg en el thumbnail repetido (cuando esta en el cache)
loader.loadClip(PICPATH2+picnames[ipic-NPICS], thumbs_mc["mc"+ipic]);
} else {
// load jpg en el thumbnail
loader.loadClip(PICPATH2+picnames[ipic], thumbs_mc["mc"+ipic]);
}
}
function onLoadProgress(_mc:MovieClip, loaded:Number) {
var loadedsofar:Number = totalloaded+loaded;
//muestra el progreso de carga
//pct_txt.text = Math.floor(loadedsofar/TOTALBYTES*100)+"% pocentaje";
cargador._visible = true;
}
function init() {
// crea el sonstén para las imagenes
createEmptyMovieClip("pic_mc", 1);
pic_mc._x = PICX;
pic_mc._y = PICY;
// crea (y dibuja) el sosten para los thumnails
createEmptyMovieClip("thumbs_mc", 2);
thumbs_mc.beginFill(0, 100);
// black
thumbs_mc.moveTo(0, 0);
thumbs_mc.lineTo(2*(MARGIN+THUMBW)*NPICS, 0);
thumbs_mc.lineTo(2*(MARGIN+THUMBW)*NPICS, THUMBH);
thumbs_mc.lineTo(0, THUMBH);
thumbs_mc.endFill();
// dibuja el sosten del thumb en 0, 0 y lueo lo mueve para hacerlo un punto de registro
thumbs_mc._x = THUMBHOLDERX;
thumbs_mc._y = THUMBHOLDERY;
createEmptyMovieClip("mask_mc", 3);
mask_mc.beginFill(0, 100);
mask_mc.moveTo(0, 0);
mask_mc.lineTo(MASKW, 0);
mask_mc.lineTo(MASKW, MASKH);
mask_mc.lineTo(0, MASKH);
mask_mc.endFill();
mask_mc._x = MASKX;
mask_mc._y = MASKY;
thumbs_mc.setMask(mask_mc);
// crea el texto para poner la descripcion
createTextField("pct_txt", 999, 0, 560, 0, 20);
var tf:TextFormat = new TextFormat();
tf.align = "center";
tf.size = 14;
tf.bold = true;
tf.font = "Century Gothic";
tf.color = 0xffffff;
pct_txt.setNewTextFormat(tf);
pct_txt.autoSize = true;
pct_txt.selectable = false;
pct_txt._x = (964/2);
// crea movieclips vacios para cargar los thumbnails en cada uno de ellos
// Hace el doble de numero de las imagenes para que el slider sea continuo
for (var i:Number = 0; i<NPICS*2; i++) {
var mc:MovieClip = thumbs_mc.createEmptyMovieClip("mc"+i, i+1);
mc._x = i*(MARGIN+THUMBW);
mc._y = 0;
}
// el primer elemento en el array de las imagenes
ipic=0;
// empieza a cargar las imagenes (ipic es inicializado en 0)
loader.loadClip(PICPATH2+picnames[ipic], thumbs_mc["mc"+ipic]);
}
/*********Llama a la funcion init para empezar la pelicula *****************/
init();










Si me pueden ayudar con esto, porque he probado de diferentes maneras y me doy cuenta que el Array tiene que ver con el problema que tengo