Hola gente tengo este codigo en un archivo del Mx 2004 y funciona pero lo quiero hacer en el Mx y no me dibuja la linea, 
¿que es lo que marca la diferencia?
 
// Creamos las líneas de los puntos de ancla
_root.createEmptyMovieClip("linIni", 33333);
//Ponemos la curva inicial
var cp:Array = new Array(p0, p1, p2, p3);
n = 0;
numberOfPoints = 20;
t = 0;
dt = 1/(numberOfPoints-1);
// Creamos la curva
for (i=0; i<numberOfPoints; i++) {
	t += dt;
	pointOnCubicBezier(cp, t);
}
// Eventos
for (i=0; i<4; i++) {
	_root["p"+i].onPress = function() {
		startDrag(this, true);
		pulsado = true;
	};
	_root["p"+i].onRelease = function() {
		stopDrag();
		pulsado = false;
	};
}
function pointOnCubicBezier(cp, t) {
	// Calcular los coeficientes polinomiales (o algo así XD)
	cx = 3*(cp[1]._x-cp[0]._x);
	bx = 3*(cp[2]._x-cp[1]._x)-cx;
	ax = cp[3]._x-cp[0]._x-cx-bx;
	cy = 3*(cp[1]._y-cp[0]._y);
	by = 3*(cp[2]._y-cp[1]._y)-cy;
	ay = cp[3]._y-cp[0]._y-cy-by;
	// Calcular el punto de curva para el parámetro con valor t
	tSquared = t*t;
	tCubed = tSquared*t;
	attachMovie("puntos", "puntos"+n, n);
	_root["puntos"+n]._x = (ax*tCubed)+(bx*tSquared)+(cx*t)+cp[0]._x;
	_root["puntos"+n]._y = (ay*tCubed)+(by*tSquared)+(cy*t)+cp[0]._y;
	n++;
}
// Cuando movemos el ratón actualizamos la línea
alMover = new Object();
alMover.onMouseMove = function() {
	if (pulsado == true) {
		// Declaramos variables
		// var cp:Array = new Array(p0, p1, p2, p3);
		n = 0;
		numberOfPoints = 20;
		t = 0;
		dt = 1/(numberOfPoints-1);
		// Creamos la curva
		for (i=0; i<numberOfPoints; i++) {
			t += dt;
			pointOnCubicBezier(cp, t);
		}
	}
}
Mouse.addListener(alMover);
 
Gracias 
  
 
