Estoy tratando de hacer que un clip se mueva desde un punto a otro cuando el puntero pasa por encima de un boton y vuelva a su sitio cuando este salga del boton, y todo va bien hasta que paso por segunda ves el puntero sobre el boton entonces el clip se queda a mitad de camino. No logro entender el porque, tambien soy bastante nuevo en esto asi que agradeceria la ayuda. Gracias.

Aqui les dejo el archivo para que lo vean:
[url=]http://uploadbox.com/files/deece498e6[/url]

De todas formas les dejo el codigo aqui:

var pieza1:MovieClip = new pieza();
addChild(pieza1);

pieza1.width = 30;
pieza1.height = 30;
pieza1.x = 500;
pieza1.y = 100;
pieza1.freno = 2+Math.random()*6;

var boton1 = new boton;
addChild(boton1);

boton1.width = 45;
boton1.height = 45;
boton1.x = 100;
boton1.y = 300;

boton1.addEventListener(MouseEvent.MOUSE_OVER,sobreBoton);

function sobreBoton(event:MouseEvent) {
pieza1.addEventListener(Event.ENTER_FRAME,moverPieza);
function moverPieza(event:Event) {
pieza1.x = (boton1.x-event.currentTarget.x)/pieza1.freno+pieza1.x;
pieza1.y = (boton1.y-event.currentTarget.y)/pieza1.freno+pieza1.y;
}
}

boton1.addEventListener(MouseEvent.MOUSE_OUT,sacarBoton);

function sacarBoton(event:MouseEvent) {
pieza1.addEventListener(Event.ENTER_FRAME,removerPieza);
function removerPieza(event:Event) {
var posX1 = 500;
var posY1 = 100;
pieza1.x = (posX1-boton1.x)/pieza1.freno+pieza1.x;
pieza1.y = (posY1-boton1.y)/pieza1.freno+pieza1.y;
}
}