Juan carlos scrip

46
Action Scrip 3,0

description

 

Transcript of Juan carlos scrip

Page 1: Juan carlos scrip

Action Scrip 3,0

Page 2: Juan carlos scrip

El ActionScript es el lenguaje de programación que ha utilizado Flash desde sus comienzos, y que por supuesto, emplea Flash CS5. A grandes rasgos, podemos decir que el ActionScript nos permitirá realizar con Flash CS5 todo lo que nos propongamos, ya que nos da el control absoluto de todo lo que rodea a una película Flash. Absolutamente de todo.

Introducción es el ActionScript

Page 3: Juan carlos scrip

el ActionScript es el lenguaje de programación propio de Flash.

ActionScript es, como su nombre indica, un lenguaje de script.

ActionScript 3 es un lenguaje de programación orientado a objetos.

La sintaxis ActionScript presenta muchísimos parecidos con el Java scrip o PHP.

Flash CS5 pone a nuestra disposición una biblioteca de funciones, clases y métodos 

Características generales

Page 4: Juan carlos scrip

En Flash CS5, el Panel Acciones sirve para programar scripts con ActionScript, por tanto lo aquí introduzcamos le afectará de menor o mayor medida. Por ejemplo, en la imagen inferior, se puede distinguir que el Panel Acciones hace referencia al Fotograma 1 de la Capa 1  (en el nombre de la pestaña de la zona de la derecha y en la zona izquierda en el apartado Selección actual).

El panel Acciones

Page 5: Juan carlos scrip
Page 6: Juan carlos scrip

El Panel Acciones de Flash CS5, no tiene únicamente un modo de edición. Podemos utilizar el , en el que en vez de escribir directamente, seleccionamos los distintos elementos desde listas. Puede resultar útil al principio, cuando aún no estamos familiarizados, pero nos limita mucho al escribir.

En la parte superior encontramos herramientas que nos ayudarán. Veamos las más útiles:

 Buscar: Busca un texto en el código. Útil, por ejemplo, si queremos buscar en todos los sitios que empleamos un objeto.

 Revisar sintaxis. Comprobará errores en la sintaxis, normalmente que hayamos olvidado cerrar paréntesis o corchetes. Si encuentra alguno, nos mostrará un mensaje como el siguiente:

Page 7: Juan carlos scrip

En el panel Errores de compilador se mostrarán los errores indicando la capa, fotograma y línea. Podemos ir al lugar del error haciendo doble clic.

 Formato automático. Al escribir en cualquier lenguaje, es muy importante hacerlo ordenadamente y con el formato adecuado. Este botón lo hace automáticamente, siempre que no haya errores de sintaxis.

 Cuando tenemos mucho código, nos resultará más cómodo si contraemos ciertas partes. Con estos botones, podemos, de izquierda a derecha, contraer el espacio entre llaves, contraer la selección o expandir todo.

 Cuando estamos programando, es frecuente que queramos comentar un fragmento de código para que no se ejecute o que queramos añadir comentarios descriptivos. Con estos botones, podemos comentar el texto seleccionado, o descomentarlo.

Page 8: Juan carlos scrip

Aunque la sintaxis sea correcta, puede que al probar nuestra película se sigan produciendo errores (errores de compilación). Por ejemplo porque accedemos a una propiedad de un objeto que no existe, o nos hemos equivocado al escribir el nombre de una variable. Estos errores también nos aparecerán en el panel Errores de compilador. En este caso, fíjate en el número de línea del error, ya que al hacer doble clic, a veces no va al lugar correcto si el código tiene comentarios.

Page 9: Juan carlos scrip

En Flash CS5 se ha creado un nuevo panel para ayudarnos a generar el código ActionScript: el panel Fragmentos de código.

El panel Fragmentos de código

Page 10: Juan carlos scrip

Lo más destacado es que podemos crear nuestros propios fragmentos de código, con intruscciones que usemos habitualmente.

Además podemos exportarlas e importarlas a otras instalaciones del programa.

Page 11: Juan carlos scrip

Un operador es un tipo de carácter que realiza una acción especial dentro de una expresión de ActionScript. Una expresión no es más que un conjunto de operadores, variables y constantes relacionados entre sí de un cierto modo.

Por ejemplo: x = 3 ; --> Es una expresión cuyo resultado será asignarle a la variable

' x ' el valor 3 (que es una constante). A partir de este punto, la variable x vale 3.

y = 5 + x ; --> Es una expresión cuyo resultado será asignarle a la variable ' y ' la suma de la constante 5 y la variable ' x ' que sabemos que vale 3 (porque le hemos asignado este valor antes). Por tanto, el resultado de esta expresión es asignarle 8 a y. También se puede considerar como asignar a y el valor de la expresión 5 + x

Flash nos permite usar multitud de operadores, vamos a comentar los más comunes. El lector puede acceder a los demás (y a estos) desde el Panel Acciones en la carpeta Elementos de lenguaje → Operadores. Vamos a clasificar los operadores tal y cómo lo hace Flash.

Los operadores y expresiones

Page 12: Juan carlos scrip

Son los operadores empleados en operaciones matemáticas.

 Operadores Aritméticos

Operador Descripción Ejemplo

+ Suma 5 + 5 = 10

- Resta 5 - 5 = 0

* Multiplicación 5 * 5 = 25

/ División 5 / 5 = 1

% Resto o Módulo 10%8 = 2

++ Incremento. Suma 1 al valor

valor++ equivaldría a valor = valor + 1

-- Decremento. Resta 1 al valor

valor-- equivaldría a valor = valor - 1

Page 13: Juan carlos scrip

Asigna el valor de una variable.

 Operadores de Asignación

Operador Descripción Ejemplo

=Asigna a la variable de la izquierda el valor de la derecha

variable vale 3;variable = 5;variable vale 5;

+=Suma con asignación. Le añade a la variable el valor de la derecha.

variable vale 3;variable += 5;variable vale 8;

-=Resta con asignación. Le resta el valor de la derecha.

variable vale 3;variable -= 5;variable vale -2;

*=Multiplicación con asignación.

variable vale 3;variable *= 5;variable vale 15;

/= División con asignaciónvariable vale 15;variable /= 5;variable vale 3;

Page 14: Juan carlos scrip

Empleados en expresiones condicionales, devuelven un valor lógico, verdadero (TRUE o 1) si la comparación es cierta, o falso (FALSE o 0) si no lo es.

Operadores de Comparación

Operador Descripción Ejemplo

> Mayor que 6 > 5 da verdadero.

< Menor que 6 < 5 da falso.

>= Mayor o igual que 6 >= 5 da verdadero.

<= Menor o igual que

6 >= 6 da verdadero.

== Igual 'hola' == 'hola' da verdadero.

!= Distinto 'hola' != 'hola' da falso.

Page 15: Juan carlos scrip

Evalúan valores lógicos. Normalmente se emplean para comparar dos expresiones con operadores relacionales, y devuelve verdadero o falso.

Operadores lógicos.

Operador Descripción Ejemplo

&&And (Y) Devuelve verdadero si los dos valores son verdaderos

(6 > 5) && (1==1) devuelve verdadero(6 > 5) && (1==0) devuelve falso

||Or (O) Devuelve verdadero si alguno de los valores es verdadero

(6 > 5) || (1==1) devuelve verdadero(6 > 5) || (1==0) devuelve verdadero(6 > 6) || (1==0) devuelve falso

!Not (Negado) Devuelve verdadero si el valor era falso, y al revés.

!(9 > 2) devuelve falso!(9 ==9) devuelve falso

Page 16: Juan carlos scrip

Pondremos un ejemplo; imaginemos que le pedimos a un usuario que introduzca su edad en un campo de texto de nuestra película flash. A ese campo le llamamos edad usuario. Le hacemos pulsar un botón Continuar y en ese momento comprobamos su edad, si tiene menor de edad, le decimos una cosa, de lo contrario, le decimos otra. Bastaría con hacer algo así:

12345

if (edad usuario<18) {    dar_mensaje_1(); } else {    dar_mensaje_2(); }

Page 17: Juan carlos scrip

En la siguiente tabla, vemos el orden de precedencia, de mayor a menor, se ejecutan primero los de mayor orden.

 Orden de precedencia

Orden de precedencia

Negación (!) / Incremento (++) / Decremento (--)

Multiplicación (*) / División (/) / Resto (%)

Suma (+) / Resta (-)

Relacionales mayor - menor (>, <, >=, <=)

Igualdad (==) / Desigualdad (!=)

And lógico (&&)

Or lógico (||)

Asignación (=, +=, -=...)

Page 18: Juan carlos scrip

( ) : Paréntesis. Sirven, como es de esperar, para agrupar términos y dar preferencias en las operaciones (al igual que en matemáticas). También se usa, como ya vimos, para pasar parámetros a funciones o acciones.

" " : Comillas. En ActionScript, todo lo que va entre comillas, pasa a considerarse una cadena de caracteres. Así por ejemplo, mientras que x representa una variable con un valor determinado, si escribimos "x", estamos escribiendo en realidad el carácter o la letra "x". Por tanto, podremos añadirlo a una palabra, compararlo con otras letras, escribirlo por pantalla etc.. pero ya no será una variable.

//: Comentario de línea. Indica que el texto a partir de ahí, y en esa línea, es un comentario, y no se ejecutará como código.

/* ....... */: Comentario de bloque. Cualquier texto de una o más líneas encerrado entre estos caracteres es un comentario, y no se ejecutará como código.

 Otros Elementos del lenguaje

Page 19: Juan carlos scrip

Los Objetos, como ya hemos visto en el tema básico, los objetos son instancias de una determinada clase. Esto es, son representantes de una clase ya definida. Cada objeto tiene las propiedades y métodos propios de la clase, y normalmente son independientes unos de otros. Así, son objetos, por ejemplo, un botón, un clip de película, un gráfico o un sonido... es decir, que prácticamente todo es un objeto en Flash CS5.

Vamos a ver los objetos más usados en Flash y una breve descripción de cada uno de ellos. Como ya se ha explicado en el tema básico, cada objeto tiene una serie dePropiedades (que veremos después), unos Métodos y eventos, que dan funcionalidad a los objetos. Cuando un componente de Flash pasa a ser un objeto, automáticamente pasa a tener todas las propiedades definidas por Flash para ese objeto y pasa a reaccionar ante los Métodos y eventos que tiene definidos. Podemos encontrar una lista con todas las propiedades, métodos y Acciones.

Los objetos

Page 20: Juan carlos scrip

Los objetos de tipo Botón es un tipo de MovieClip especialmente pensado para que el usuario interactúe con él, permitiéndonos diferenciar entre sus estados, y crear una apariencia para cada uno.Cuando nos interese que una imagen que hayamos diseñado se comporte como un botón, bastará convertirla a botón (del modo visto en el capítulo correspondiente) y ya podremos usar los eventos típicos de un botón.

 Objeto "Button" (Botón)

Page 21: Juan carlos scrip

Cuando necesitemos crear una película Flash dentro de otra película, pero no queramos tener 2 ficheros separados ni molestarnos en cargar una película u otra, deberemos crear un objeto movieclip. Entre sus propiedades especiales destaca que los objetos "clip de película" tienen, internamente, una línea de tiempos que corre independiente de la línea de tiempos de la película principal de Flash, lo que nos permite crear animaciones tan complejas e independientes como queramos (podemos crear tantos clips de película dentro de otros como queramos, por ejemplo). Realmente, toda nuestra película es un MovieClip.

 Objeto "MovieClip" (Clip de Película)

Page 22: Juan carlos scrip

Esta clase engloba a todos los objetos que podemos ver en nuestra película, como los Clips de película y botones, y define las propiedades y métodos comunes para todos ellos.

 Objeto "DisplayObject Objeto de visualización

Page 23: Juan carlos scrip

Los objetos sonidos no son visuales, y por tanto, no podremos ver como quedan en los fotogramas, al igual que haríamos con un botón o un clip de película. Deberemos controlarlos, por tanto, desde el Panel Acciones y usando ActionScript. Tienen multitud de métodos especiales, muy potentes y útiles, podemos parar un sonido, crear un bucle, darle efectos sonoros etc... Utilizando el canal de sonido, podremos pararlo, ajustar el volumen, etc.Podríamos, por ejemplo, crear un objeto de tipo sonido y después hacer que al pulsar un botón suene. (Más adelante se verá algún ejemplo de uso de sonidos).

Objeto "Sound" (Sonido) y SoundChanel (Canal de sonido)

Page 24: Juan carlos scrip

El objeto mouse es uno de los objetos de Flash que ya está definido por Flash, pues hace referencia al ratón de Windows (al que manejará el usuario que vea nuestra película). Si lo usamos, podremos acceder a las propiedades del ratón de Windows, tipo de cursos, efectos asociados, detección de su posición etc...Vale la pena insistir en que su manejo no es análogo al de otros objetos como el botón, pues podemos crear tantos botones como queramos y hacer con ellos lo que decidamos, pero el objeto Mouse es único y actúa sobre el ratón del PC del usuario que vea nuestra película. Se puede decir que es un objeto "externo" que permite que otras partes del Sistema Operativo interactúen con nuestra película Flash. Por tanto, es muy potente.

Objeto "Mouse" (Ratón)

Page 25: Juan carlos scrip

Es uno de los múltiples objetos "abstractos" de Flash, ni es visual, ni parece que corresponda a nada existente en el sistema (como el objeto "Mouse"). Su función es muy importante, pues nos permite usar fórmulas matemáticas de modo muy sencillo. En el tema siguiente veremos algún ejemplo de su uso.

Objeto "Match" (Matemáticas)

Page 26: Juan carlos scrip

Es otro objeto peculiar, pues corresponde a un tipo de datos. Los strings o cadenas son secuencias de caracteres. Si definimos una secuencia de caracteres como objeto de tipo String, podremos usar los métodos que Flash implementa sobre ellas: Seleccionar subcadenas de letras, buscar una determinada letra en una palabra, convertir la palabra a letras mayúsculas y un largo etc

 Objeto "String" (Cadena)

Page 27: Juan carlos scrip

Los objetos Loader nos permitirán cargar archivos para mostrarlos (imágenes, archivos swf, etc...) en nuestra película, mientras que los objetos URLLoader nos permitirán cargar información de archivos (archivos de texto, XML, páginas web...).

Objeto "Loader" (Cargador) y Objeto "URLLoader" (Cargador de información)

Page 28: Juan carlos scrip

Flash CS5 llama acciones a lo referente al código ActionScript, lo que nos permite dar comportamientos a los objetos.

Estas acciones son funciones predefinidas de ActionScript, es decir: Flash CS5 las crea, y nosotros sólo tenemos que usarlas de la manera que se nos indica. No tenemos que definir las funciones ni nada por el estilo, ni siquiera necesitamos saber cómo están hechas... Lo importante es que están listas para usar, lo que facilita el uso de este lenguaje de programación y sobre todo, haga muy rápido comenzar a programar.

Por supuesto, cuando tengamos más conocimientos, veremos que no es difícil completar estas acciones ya creadas con las nuestras propias.

Explicaremos las Acciones más importantes, y a medida que avancemos en el curso, añadiremos algunas más. Para una referencia más completa, recomendamos mirar la ayuda del programa.

Las acciones son métodos de los objetos (funciones internas a estos), por lo que no todas están disponibles para todos los objetos.

Definiremos las acciones escribiendo su cabecera (nombre + parámetros con un nombre genérico) para después explicar qué es cada parámetro.

 Las acciones - métodos comunes

Page 29: Juan carlos scrip

Estas acciones se emplean, como su nombre indica, para controlar el flujo de nuestra película, esto es, para indicar a Flash en todo momento qué fotograma tiene que mostrar, cuándo tiene que parar, dónde seguir etc...

Estas acciones son métodos de la clase MovieClip. Podemos aplicarlas a cualquier MovieClip de nuestra película, siguiendo el siguiente formato:nombreMovieClip.accion();. Si escribimos la función directamente, es decir, si no indicamos el objeto, estamos haciendo referencia a la película general.

 Acciones Control de película

Page 30: Juan carlos scrip

gotoAndPlay: Esta acción será, probablemente la que más usemos durante la realización de nuestras películas. La acción que realiza consiste en mover la cabeza lectora al fotograma que le indiquemos. La cabeza lectora es lo que determina qué fotograma de nuestra película se está reproduciendo en cada momento. Si, por ejemplo, lo movemos del fotograma 1 al 25, lo que veremos instantáneamente será el fotograma 25 y la película continuará reproduciéndose a partir de ahí.Sintaxis: gotoAndPlay(escena, fotograma):◦ escena: Nombre de la escena a la que queremos enviar la cabeza

lectora. Debe ir entre comillas dobles.◦ fotograma: Número o nombre del fotograma al que queremos

enviar la cabeza lectora. Si es un nombre (una etiqueta), debe ir entre comillas dobles, si es un número, no.

Veamos las más importantes para entenderlas mejor:

Page 31: Juan carlos scrip

Ejemplo: miClip.gotoAndPlay("Escena2", 7); → Esta acción lleva la cabeza lectora al fotograma 7 de la escena llamada "Escena2" del MovieClip con el nombre de instanciamiClip.play: Da comienzo a la reproducción de la película o la continúa desde el punto detenido.Sintaxis:play();  No tiene Parámetros.Ejemplo:this.play(); → Inicia la reproducción del objeto actual.stop: Detiene la reproducción de la película. Se puede usar en un fotograma, cuando queramos detenernos en él (porque es un menú, por ejemplo), en un botón, (para que detenga la película), etc..Sintaxis:stop();   No tiene Parámetros.

Page 32: Juan carlos scrip

fscommand: Esta acción, es capaz de ejecutar ciertos comandos muy potentes. Lo más cómodo es pasar a Asistente de Script (sino estábamos ya) e insertarla, nos aparecerá una pestaña con los posibles comandos que admite. Sirve para interactuar con la aplicación que reproduce la película, por ejemplo Flash Player o el navegador web, como IE o Firefox. Veamos esos comandos:fullscreen (true o false): Si se activa pone nuestra película a pantalla completa. Muy útil para presentaciones en CD-Rom, por ejemplo.

allowscale (true o false): Controla el redimensionamiento de los objetos insertados en la película cuando el usuario estira los bordes de la misma (o de la página web en la que se encuentre) ¿Queremos mantener las proporciones? Este comando nos permite controlarlo.

showmenu (true o false): Si has visto el menú que aparece al pulsar el botón derecho del ratón sobre una película Flash, seguro que has pensado en hacerlo desaparecer ... puede que no interese que los usuarios puedan moverse a sus anchas por nuestra película. Ejecutando esta sentencia del modo adecuado (false), podremos ocultarlo.

Acciones - Navegador / Red

Page 33: Juan carlos scrip

trepallkeys (true o false): Sirve para detectar las pulsaciones de todas las teclas durante la reproducción de nuestras películas.

exec (ruta de la aplicación): Ejecuta una aplicación desde el reproductor.

quit (ninguno): Cierra el reproductor Flash. Todas estas alternativas, comparten modo de uso,

veámoslo:Sintaxis:fscommand(comando, [argumentos])comando: El comando a ejecutar (fullscreen, allowscale, etc...)

argumentos: En la mayoría de los casos debemos escribir true o false, según queramos desactivar la opción o activarla. Por ejemplo, en el caso del comando quit lo dejaremos vacío.

Ejemplo:fscommand("fullscreen", "true"); -> Activa la pantalla completa.navigateToURL() : Esta acción se emplea para abrir el navegador web e ir a la página i

Page 34: Juan carlos scrip

navigateToURL() : Esta acción se emplea para abrir el navegador web e ir a la página indicada.Sintaxis:navigateToURL(url , [ventana]);url: Dirección web a la que queremos acceder (se abrirá una ventana). Este parámetro es un objeto del tipo URLRequest. Si queremos utilizar una dirección como cadena de texto, podemos hacerlo escribiendo new URLRequest("http://www.direccion.coms").

ventana: Parámetro OPCIONAL. Modo en el que queremos abrir la ventana (en la ventana actual (_self) en otra nueva (_blank) etc...).

Estas acciones sirven para controlar la lógica de la película. Se puede decir que nos permiten "hablar" con Flash para indicarle lo que debe hacer ante distintas situaciones. Por ejemplo, ahora que conocemos algunas Acciones, ¿Cómo indicarle a Flash que "si la variable x = 3, entonces vaya al fotograma 5, y si no, vaya al fotograma 10"?. Sabemos comparar, sabemos ir a los fotogramas, pero no sabemos decirle a Flash "Si pasa esto, haz una cosa, y si no, haz la otra...". Veamos cómo decírselo:

if ... else: Si partimos de que la traducción literal de if es "si..." y la de else es "si no ...", nos encontramos de repente con todas las herramientas para decirle a Flash: "si (pasa una condición) {haz esto} si no {haz lo otro}"Veamos antes que nada su sintaxis para comprenderlo mejor:Sintaxis:if (condición) {sentencia_si_se_cumple; } else {sentencias_si_no; }if: Indica que acción que viene a continuación entre paréntesis es una condición.

Page 35: Juan carlos scrip

Ejemplo: navigateToURL(new URLRequest("http://www.aulaclic.es"), "_blank"); --> Abre la web de aulaClic en una ventana nueva.load(): Este método nos permite cargar nuevas películas Flash o imágenes en nuestra película de forma dinámica (la película se cargará cuando se lo indiquemos, y no antes), en un objeto de la clase Loader, o cargar información en un objeto URLLoader. Para utilizarlo, primero tenemos que crear un objeto de este tipo.Sintaxis:objetoCargador.load(direccion:URLRequest, [contexto]);direccion: Dirección absoluta o relativa donde está situada la película SWF o la imagen a cargar. Es un objeto URLRequest, como en el caso de navigateToURL().

contexto: Es un parámetro opcional, en el que se indica algunas propiedades más avanzadas que no veremos en este curso.

Ejemplo:var cargadorPeli:Loader = new Loader(); -> Creamos un objeto Loader donde cargar el archivo.cargadorPeli:Loader.load(new URLRequest("archivo.swf"));-> LLamamos al método load() para que cargue el archivo indicado.Nota: Cargamos el archivo en nuestra película, pero no lo mostramos. Para verlo, tenemos que añadir el cargador a la lista de visualización, como ya veremos, por ejemplo conaddChild(cargadorPeli);. Acciones - Condiciones

Page 36: Juan carlos scrip

condicion: Indica una condición que debe cumplirse, es decir, debe tener como resultado true, o lo que es lo mismo, verdadero, o lo que es lo mismo, 1. De ahí la importancia de los operadores de comparación y el valor que devuelven. La condición siempre debe de ir entre paréntesis.

sentencia_si_se_cumple;: Conjunto de acciones que sucederán si la condición se evalúa como verdadera. Estas sentencias deben de ir entre llaves. Podemos poner el bloque de código que queramos: varias líneas, objetos, otros if...

else: Especifica la alternativa si condición se evalúa a falsa. Es optativo. Si no existe, y no se cumple la condición, no se hará nada, pues no lo hemos especificado.

sentencias_si_no; Conjunto de acciones que sucederán si la condición se evalúa como falsa. Deben incluirse entre llaves.

Ejemplo: if (x == 2) {miClip.gotoAndPlay(6); } --> Si la variable x vale 2,

entonces saltamos al fotograma 6 de miClip, si no, no hacemos nada.

if (y > 7) { stop(); } else {gotoAndPlay(1); } --> si la variable y es mayor que 7, paramos la película, sino, volvemos al fotograma 1.

 

Page 37: Juan carlos scrip

Los Métodos y Propiedades suelen ser específicos de cada objeto, y su estudio requeriría un nuevo curso completo, (recomendamos consultar la ayuda incorporada en el Flash CS5 cuando surjan dudas), pero hay bastantes propiedades de los objetos que son comunes a muchos de ellos. Vamos a ver las más utilizadas, que afectan a los objetos de visualización, que son con los que trabajaremos habitualmente.

Hay que entender que las clases se heredan. Es decir, una clase genérica, tiene subclases más concretas. Las sublaceses, tienen todos los métodos y propiedades de la clase de la que heredan, y además agregan sus propios métodos y funciones.

Propiedades de los objetos de visualización

Page 38: Juan carlos scrip

 alphaHace referencia a la opacidad del objeto al que afecte. La opacidad se puede definir como la no-transparencia. De modo que un 100% de transparencia equivale a un 0 de opacidad, o a un 0 de alpha. heightDevuelve o establece la altura del objeto en píxeles. Por ejemplo, si tenemos un clip de película llamado "Clip1" y escribimos "Clip1.height" obtendremos la altura de Clip1. Del mismo modo, podemos cambiarla sin más que hacer: Clip1.height = 100; (la altura del Clip1 pasaría a ser de 100 píxeles) widthPropiedad idéntica a la anterior, pero devuelve o establece la anchura.

 DisplayObject

Page 39: Juan carlos scrip

. visibleDetermina si el objeto está o no visible en nuestra película. Cuando vale 1 o True, lo está, cuando vale 0 o False, pasa a ser invisible. Es muy útil para hacer desaparecer partes de una película en un momento determinado. Por ejemplo, si queremos que al pulsar un botón desaparezca el clip de película llamado "Clip2", haremos esto: .... ... Clip2.visible = 0; ... .... xCon esta propiedad obtenemos o establecemos las coordenadas del objeto respecto del eje de las X (horizontal). Sirve para averiguar la posición o para asignarla de forma dinámica (durante la ejecución de nuestra película Flash) yCon esta propiedad obtenemos las coordenadas del objeto respecto del eje de las Y (vertical). Sirve para averiguar la posición o para asignarla de forma dinámica (durante la ejecución de nuestra película Flash). rotationCon esta propiedad obtenemos o establecemos el giro del objeto, su rotación, expresado en grados. nameCon esta propiedad obtenemos o establecemos el nombre de la instancia.

Page 40: Juan carlos scrip

Vamos a mostrar los usos más característicos de código ActionScript en los diferentes objetos existentes en Flash CS5. De este modo lo comprenderemos mejor y porqué no, nos ahorraremos trabajo al tener ya hechos aquí muchos de los códigos que usaremos en nuestras películas. Mostraremos el código y a continuación, una explicación del mismo.

Algunas cosas que debemos de tener en cuenta si estamos familiarizados con la programación en ActionScript 2, es que con ActionScript 3.0 no podemos utilizar:

alert() La forma de tratar eventos, como on (event){}, onClipEvent(event){},

object.onEvent = function(){} , addListener , etc. La forma de tratarlos ahora es agregando un escuchador al objeto, con el método addEventListener, indicando el evento, y una única función de escucha.

Guiones bajos ( _ ) antes del nombre de las propiedades. Variables globales (_global). _root y _parent para acceder a elementos superiores.  

Ejemplos de ActionScript 3.0

Page 41: Juan carlos scrip

Los Botones (objeto Button para Flash CS5) tienen mucha utilidad siempre que queramos que nuestra película interactúe con el usuario. Dado que esto va a ser prácticamente siempre, es conveniente estudiar y entender bien algunos códigos típicos que tendremos que usar para conseguir nuestros propósitos.

En realidad, los botones se comportan como cualquier símbolo. A todos les podemos aplicar eventos, ya que lo que hacemos es asociarlos normalmente al clic del ratón. Los botones tienen la ventaja de que nos permiten representar distintos estados, mejorando la percepción de interactividad.

Código ActionScript para botones

Page 42: Juan carlos scrip

Las primeras líneas son las comentadas anteriormente.

Partimos de una película con 2 fotogramas distintos. En el primer fotograma están el botón y el clip de

película (r1) correspondientes. El clip de película tiene en su línea de tiempos una animación, inicialmente detenida. Veamos que pasa si se accede a su fotograma 2.

En el segundo fotograma no nos importa lo que haya porque la acción situada a la izquierda no nos llevará hasta allí. La cabeza lectora de la película principal es independiente.

Código ActionScript para Clips de película

Page 43: Juan carlos scrip

? 1 2 3 // Código 2   canal.stop(); Este código detiene el sonido que se esté reproduciendo por el canal de sonido canal. ? 1 2 3 4 // Código 3           canal.stop(); canal = musica.play(0,99); La primera línea detiene el sonido, como hemos visto antes. La segunda, provoca que el sonido musica comience a reproducirse (play) a partir de su posición inicial (el 0 indica los segundos

transcurridos desde el comienzo) y lo haga 99 veces (esto se llama loop o bucle). Si ponemos sólo musica.play();, se reproducirá desde el principio y sólo una vez, como vemos en el siguiente código:

? 1 2 3 4 //  Código 4   canal.stop(); canal = musica.play(); Ahora que ya sabemos controlar los sonidos mediante ActionScript, veamos un ejemplo que reúne todo lo visto anteriormente.

Sonidos con ActionScript 3

Page 44: Juan carlos scrip

Aunque la idea de objeto no suele llevarnos a pensar en un sonido, en Flash CS5 los sonidos también son objetos y podemos manejarlos usando adecuadamente ActionScript. Veamos unos cuantos códigos muy comunes y un completo ejemplo de cómo usarlos:

? 1 2 3 4 5 //Código 1   var req:URLRequest = new URLRequest("sonido.mp3"); var musica:Sound = new Sound(req); var canal:SoundChannel = new SoundChannel(); sonido.mp3 es el nombre del archivo de sonido que se va a cargar, seria aquí donde

deberíamos sustituir éste y poner el nombre del sonido que queramos nosotros, y deberá encontrarse en el mismo directorio que se encuentre el archivo Flash que estamos creando, o indicar la ruta completa.

En musica, que es un objeto Sound, almacenamos el sonido. Para controlarlo, utilizaremos canal, un objeto SoundChanel.

Page 45: Juan carlos scrip

canal.stop(); canal = musica.play(); Ahora que ya sabemos controlar los sonidos

mediante ActionScript, veamos un ejemplo que reúne todo lo visto anteriormente.

Page 46: Juan carlos scrip

1 2 3 // Código 2   canal.stop(); Este código detiene el sonido que se esté reproduciendo por el canal de

sonido canal. ? 1 2 3 4 // Código 3           canal.stop(); canal = musica.play(0,99); La primera línea detiene el sonido, como hemos visto antes. La segunda, provoca que el sonido musica comience a reproducirse (play) a partir

de su posición inicial (el 0 indica los segundos transcurridos desde el comienzo) y lo haga 99 veces (esto se llama loop o bucle). Si ponemos sólo musica.play();, se reproducirá desde el principio y sólo una vez, como vemos en el siguiente código: