Hola, me es muy grato ingresar a este foro.
Tengo un inconveniente menor con un proyecto.

El proyecto hace lo siguiente:
1. Carga el listado de imagenes contenido en un XML
2. Crea dinamicamente 35 MC en los cuales cargan dinamicamente imagenes (del XML) mediante loads (y listeners), y escucha los eventos de cuando se le acerca y aleja el raton haciendo que aparezca y desaparezca el MC seleccionado usando Tweens.

En la biblioteca se creo un MC que a su ves contiene otro con el nombre img_mc, donde se carga la imagen.

La parte que no he logrado que funcione es que cuando el MC ha sido seleccionado y termina de desaparecer cargue en ese mismo MC otra imagen al azar, usando el Listener y el load que previamente se le fue asignado.

He aqui el código:


Código ActionScript :

import mx.transitions.Tween;
import mx.transitions.easing.*;
   
/* El XMl */
var Mi_XML:XML = new XML();
Mi_XML.ignoreWhite = true;
Mi_XML.onLoad = function(success:Boolean) {
   if (success) {
      elXMlMenu();
   } else {
      trace("no Jalo la onda jiñor");
   }
};
var  menuDat:Array = new Array();
function elXMlMenu():Void{
   var datos:Array = Mi_XML.firstChild.childNodes   
   for(var i=0; i<datos.length;i++) menuDat.push(datos[i].attributes.src);
   
   creaMenu();
}

Mi_XML.load("imagenes/galeria.xml");
/* fin del XML */


/*El menu */
// Contenedor Menu
this.createEmptyMovieClip("contMenu_mc", 1);

// Cuadros menu
creaMenu = function():Void {
   var cuadro_mc:MovieClip;
   var numC:Number = 35;
   var multiplo:Number;
   var spciox:Number = 0;
   var spcioy:Number = 0;
   var cont:Number;
   var imgCarga:String;
   var cuantascol:Number = 7;

   for(var i:Number = 0; i < numC; i++){
      contMenu_mc.attachMovie("imgc", "imgc" + i + "_mc", i);
      cuadro_mc = contMenu_mc["imgc" + i + "_mc"];
      
      cuadro_mc._x = spciox * 144;
      cuadro_mc._y = spcioy;
      
      spciox += 1;
      cont = i + 1;
      multiplo = cont % cuantascol;
      
      if(multiplo == 0){
         spciox = 0;
         spcioy += 144;
      }
      
      cuadro_mc.onRollOver = turnOn; 

      cuadro_mc.onRollOut = cuadro_mc.onReleaseOutside = turnOff; 
      
      this["mi_mcl" + i] = new MovieClipLoader();
      this["mi_mclL" + i] = new Object();

      this["mi_mclL"+ i].onLoadInit = function(el_mc:MovieClip){
         //trace("se cargo:" + el_mc);
         picSlideTween = new Tween(el_mc, "_alpha", Regular.easeIn, 0, 100, 0.8, true);
         picSlideTween.onMotionFinished = function() {
               new Tween(el_mc, "_alpha", Regular.easeIn, 100, 0, 0.8, true);
         }
      }
      
      this["mi_mclL"+ i].onLoadStart = function(mc:MovieClip){
         //trace("ahora si mi chavo yia se esta cargando:" + mc);
         mc._alpha = 0;
      }

      this["mi_mcl"+ i].addListener(this["mi_mclL"+ i]);
      this["mi_mcl"+ i].loadClip(menuDat[i], cuadro_mc.img_mc);
   }

   reacomoda();
}

/* Redimencionar */
var stageL:Object = new Object();
stageL.onResize = function(){
      reacomoda();
}
Stage.addListener(stageL);

reacomoda = function():Void
{
   contMenu_mc._x = (Stage.width - contMenu_mc._width) / 2;
   contMenu_mc._y = (Stage.height - contMenu_mc._height) / 2;
}

function ruleta(min:Number, max:Number):Number {
    var randomNum:Number = Math.floor(Math.random() * (max - min + 1)) + min;
    return randomNum;
}

function turnOn() {
      new Tween(this.img_mc, "_alpha", Regular.easeIn, 0, 100, 0.8, true);
}

function turnOff(){
   imgAzar = ruleta(0, menuDat.length -1);
   este = this.img_mc;
   apagar = new Tween(this.img_mc, "_alpha", Regular.easeOut, 100, 0, 0.8, true);
   apagar.onMotionFinished = function() {
      this["mi_mcl"].loadClip(menuDat[imgAzar], este)
   }
}


Cada MC imgc0_mc ... imgc34_mc tiene su MovieClipLoader mi_mcl0 .... mi_mcl34, así que en la función turnOff() al terminar el Tween invoco el siguiente código this["mi_mcl"].loadClip(menuDat[imgAzar], este), como saber cual MovieClipLoader le corresponde al MC que es invocado y como cargar en este mismo una nueva imagen?

Salu2 y Gracias =D