DUDO! que este codigo sea tan bueno como parece, pero te funcionara mientras te piensas un mejor modo
te lo explico antes:
tienes tres objetos
left y right son botones
circle es lo que piensas mover
la primer parte es una funcion llamada mover que recibe direccion y velocidad
segun la direccion suma o resta la cantidad en la variable vel (velocidad) a el valor X de circle (mueve a izq o der, una "vel" cantidad, cada que circle entra en un fotograma (onEnterFrame)
eso para al estar el boton presionado
al ser liberado se activa la funcion detener que lo unico que hace es eliminar el onEnterFrame por lo que se "detiene" el circle
Código ActionScript :
function mover (dir, vel){
switch(dir){
case "left" :
circle.onEnterFrame = function () {
circle._x=circle._x - vel;
}
break;
case "right" :
circle.onEnterFrame = function () {
circle._x=circle._x + vel;
}
break;
default:
trace("error");
}
}
function detener () {
delete circle.onEnterFrame;
}
left.onPress = function () {
mover("left", 5);
}
right.onPress = function () {
mover("right", 5);
}
left.onRelease = function () {
detener();
}
right.onRelease = function () {
detener();
}