Tutorial 6 - Animación con ActionScript 3.0
Paso 7 de 19
Un evento de ratón similar es MouseEvent.CLICK
. La diferencia es que con CLICK
se detecta si se ha pulsado y soltado el ratón, es decir, si se ha hecho clic. Más adelante veremos que en nuestro caso vamos a ejecutar acciones diferentes para las acciones de pulsar y soltar el ratón, y es por ello por lo que hemos elegido el evento MOUSE_DOWN
(y después utilizaremos MOUSE_UP
).
Ahora pasaremos a definir nuestra función drag
. Una función es un bloque de instrucciones agrupadas, y que se ejecuta al ser llamada desde otra función o método.
Al escribir el código, las funciones y métodos se diferencian de las propiedades porque tras el nombre de los primeros hay un paréntesis. El paréntesis puede estar vacío, o bien puede recibir uno o varios parámetros separados por comas. Por ejemplo, alpha
es una propiedad, mientras que addEventListener
es un método con dos parámetros (evento y función).
Para crear una función tenemos que comenzar con la palabra clave function
. Tras ella, escribimos el nombre que queremos dar a nuestra función. En este caso le damos el nombre drag
. Tras el nombre, escribimos los paréntesis:
function drag()
Las funciones que vayan a ser llamadas desde un addEventListener
, como es nuestro caso, reciben un parámetro. Este parámetro es un objeto del tipo de evento que ha desencadenado la función, en este caso MouseEvent
.
Entre los paréntesis escribiremos el nombre del objeto (el nombre que queramos), dos puntos (:
), y el tipo de objeto.
Por lo tanto, de momento nuestra función comenzará asi:
function drag(e:MouseEvent)
Le hemos dado al parámetro el nombre e
por evento, pero podríamos haberle dado otro nombre. Generalmente se suele dar a este parámetro el nombre e
o event
.
Tras el nombre de la función es conveniente especificar el tipo de datos que devolverá. En nuestro caso, la función no va a devolver ningún resultado, sino que simplemente va a ejecutar una acción. En estos casos, como tipo de datos se asigna void
(vacío).
Nuestra función queda como sigue:
function drag(e:MouseEvent):void