Hasta ahora en flash siempre utilizaba un metodo muy sencillo pero para mi efectivo a la hora de crear botones de menús, botones en mc, etc...
El resultado era esté:
link resultado
Lo que hago es un mc que dentro tiene un boton falso, etiquetas de in out y activo, una zona sensible con la programación y luego le doy el texto desde el mc, luego duplico el mc, ya sea dinámicamente o duplicándolo en el escenario manualmente y dándole la programación a cada mc, al final sólo tengo un mc, si modifico su interior se modifican todos.
En la zona activa del boton le doy esta programación:
Código :
on(rollOver){ gotoAndPlay('in') } on(rollOut){ gotoAndPlay('out') } on(release){ _root.boton_activo.gotoAndPlay('out') _root.boton_activo=eval(this) _root.boton_activo.gotoAndStop('activo') }
Con esta programación tan simple tenia solucionados muchos dolores de cabeza, y la he usado para mil cosas, galerias, duplicados, menus, etc...
Ahora me gustaría trasladar está programación a AS3 y me está mareando un poco el tema, lo que me gustaría es tener alguna clase parecida, para poder hacer un mc con una animación dentro, etiquetas, etc...
El primer problema con el que me encuentro es el siguiente, he intentado hacer primero una función en la línea de tiempo sólo para un boton, luego en teoria haría que esa función fuera para todos, pero bueno, ya no me va ni la primera
le he puesto este código en el primer frame
Código :
this.boton_mc.txt_boton.text='uno'; this.boton_mc.boton.addEventListener(MouseEvent.MOUSE_OVER,over); this.boton_mc.boton.addEventListener(MouseEvent.MOUSE_OUT,out); this.boton_mc.boton.addEventListener(MouseEvent.CLICK,pulsado); function over(e:MouseEvent):void{ boton_mc.gotoAndPlay('in') //Texto_txt.text = ("Has hecho over"); } function out(e:MouseEvent):void{ boton_mc.gotoAndPlay('out') //Texto_txt.text = ("Has hecho out"); } function pulsado(e:MouseEvent):void{ //Texto_txt.text = ("Has pulsado"); boton_mc.gotoAndStop('activo') boton_mc.boton.enabled=false; trace("Has pulsado"); }
Sin pulsar siquiera ya no funciona, en el momento que hace el out, como la linea de tiempo sigue avanzando y luego vuelve al primer frame es como si la zona sensible hubiera desaparecido, ejemplo :
link resultado cutre
y eso que todavía no he intentado hacer el eval para que se guarde en una variable su ruta y luego se desmonte o se monte según a que boton cliques.
ALguien puede ayudarme a hacer una clase reutilizable para este tipo de código.
Aqui les dejo el fla por si sirve de algo
descargar fla
Mil gracias