Seguir el puntero del ratón en Actionscript 3.0 |
Etiquetas: MouseEvent MOUSE_MOVE Point localToGlobal mouseX mouseY |
Este tutorial es muy sencillo, pero cuando empecé a aprender flash hace 5 o 6 años, estaban "de moda" los tutoriales de este tipo.
Se solía hacer para que una serie de letras siguieran al puntero, con diferentes movimientos y tipos de easing. Para crear un elemento que siga al puntero, sólo hay que seguir los siguientes pasos:
1/ Creamos el Símbolo (en este caso una mosca) y lo linkamos a una clase (en este caso "Seguidor")
2/En la clase Seguidor, añadimos un evento que detecte el movimiento del ratón:
-
- stage.addEventListener(MouseEvent.MOUSE_MOVE,mover);
-
3/En la función mover, recogemos las coordenadas del ratón (que son las locales del objeto) y las convertimos en globales:
-
- var punto:Point = localToGlobal(new Point(mouseX,mouseY));
-
4/Colocamos el objeto en el nuevo punto:
-
- x = punto.x;
- y = punto.y;
-
package{ import flash.display.Sprite; import flash.events.MouseEvent; import flash.geom.Point; public class Seguidor extends Sprite{ public function Seguidor():void{ stage.addEventListener(MouseEvent.MOUSE_MOVE,mover); } public function mover(e:MouseEvent):void{ var punto:Point = localToGlobal(new Point(mouseX,mouseY)); x = punto.x; y = punto.y;; } } }
@bg16: El código que ves más arriba es de una clase. Seguramente lo estás poniendo en linea de tiempo y por eso te dá ese error. Dudo que puedas hacer lo mismo, utilizando una clase en AS3, con menos código. @andresxx1: Gracias por tu comentario |
@Ariell1: Puedes encontrar un par de artículos sobre creación de clases en AS3 aqui: http://www.esedeerre.com/portada/09/flash-ejemplos-y-tutoriales-de-actionscript-3.0-basico |
|
|