Hola, voy a ver si puedo explicar mi problema ke me trae de cabeza!!!!

me he creado una clase para ejecutar un tipo de arboles, los 2-3-4. Hasta ahi todo bien, funciona...
El problema viene xk me gustaria crear un movie clip en la clase nodo de un tipo "bola(bolita para que dibujase en el fla cada nodo)" para ello necesito duplicar el bola xk con attachMovieClip tendria que crear una bola diferente para cada nodo en la biblioteca y pasa olimpicamente de mi...

vamos en resumidas cuentas... no se como duplicar un MC dentro de una clase y hacer que salga en el fla principal. os paso un ejemplo:

en el fla va esto:
import movimiento;//importo la clase

Object.registerClass("bola0", Movimiento);//le paso el objeto de la biblio
var bola:Movimiento= new Movimiento(100,100);//creo una bola, esto funciona
var bola1:MovieClip;
bola1=bola.Movimiento2(200,200,"bola1");//esta es una de las multiples pruebas para duplicarlo
//llamo al proc que se supone que duplica

en la clase irira:

class Movimiento extends MovieClip{
var bola:MovieClip;//este seria el objeto bola

function Movimiento(x0,y0){//constructor
var initObjeto = new Object();
initObjeto._y = y0;
initObjeto._x = x0;
var vari = "bola";
bola = _root.attachMovie("bola0", vari, this.getNextHighestDepth(), initObjeto);}
// este attach funciona

//el problema viene aqui
function Movimiento2(x0,y0,bola1):Movimiento{
_root.duplicateMovieClip("bola1",1);//he probado todo this,_parent...
bola1._x=x0;
bola1._y=y0;
return bola1;}

he conseguido que me cree dos bolas... pero pierdo el control sobre una!!!
Supongo que estare haciendo alguna burrada pero...
Gracias por adelantado.