as3 funciona a punta de listener y funciones no como en as2 que se podía programa directamente sobre un botón o usar onPress e inmediatamente la función, mira para hacer algo con un boton en as3 seria algo asi
Código ActionScript :
boton.addEventListener (MouseEvent.ROLL_OVER, acionaboton); //boton es la clase del objeto o es la instancia del boton y acionboton es la funcion a la que llevara
function acionaboton (e:MouseEvent) {
//aqui va la funcion que quiere que realice el boton
}
y pues bueno a qui te dejo ese ejemplo que dejaste todo en as3 dudas comentas si algo
Código ActionScript :
var botones:Array = new Array(boton1,boton2,boton3);//este array contiene las instancias de los botones
var posicion:Number = 1;//este le indicara a la flechita que posicion debe tomar
addEventListener (Event.ENTER_FRAME,iniciar);//este es el listener que inicia el codigo cuando se increse al fotograma remplaza a onEnterframe de as2
function iniciar (e:Event) {//la funcion
if (posicion == 1) {
if (indicador.x >= 80.5) {
indicador.x = indicador.x - 10;//mueve el objeto para que se ubique
}
}
if (posicion == 2) {
if (indicador.x <= 205) {
indicador.x = indicador.x + 10;
}
if (indicador.x >= 205) {
indicador.x = indicador.x - 10;
}
}
if (posicion == 3) {
if (indicador.x <= 330.4) {
indicador.x = indicador.x + 10;
}
}
for (var i:int=0; i<3; i++) {// este for es el que ejecuta los listener de los botones que estan dentro del array
botones[i].addEventListener (MouseEvent.ROLL_OVER,calposicion);//listener que detecta cual boton se acciona
}
}
function calposicion (e:MouseEvent) {
posicion = e.target.name.substr(5);//este toma el ultimo caracter de la instancio y lo mete en una variable para indicarle en que poscicion se ubica el objeto
}
asi lo aria yo
a adjunto el .fla por si lo dea ver como quedo, el archivo esta en cs4
ejemplo