Creación de aplicación de ejemplo con Flash Lite

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    Creación de aplicación de ejemplo con Flash Lite - Presentation Transcript

    1. Creación de aplicaciones para celulares con flash lite  Introducción  Tomado de: http://mosaic.uoc.edu/articulos/ctardaguila1205.html  “Flash Lite: estado actual y per spectivas de futur o  6.12.05  César Tardáguila  Actualmente es raro encontrar a alguien que no tenga teléfono móvil, en concreto de los  considerados \"multimedia\". La expansión de la telefonía móvil ha puesto terminales con  capacidades de proceso más que suficientes para ejecutar aplicaciones complejas al alcance de casi  cualquier bolsillo, lo que ha su vez ha generado una demanda creciente de aplicaciones y servicios  específicos para esa plataforma. Pero, ¿cómo se puede convertir esa omnipresencia de terminales en  una fuente de negocio?, ¿con qué herramientas contamos para desarrollar aplicaciones para  dispositivos móviles? Y sobre todo, ¿qué tiene que ver Flash con todo esto? Veámoslo.  Actualmente, el desarrollo de aplicaciones para dispositivos móviles, olvidándonos del mundo  Windows Mobile, está basado en tres grandes plataformas: C++, J2ME, y Flash Lite. Obviamente,  cada una de ellas tiene sus ventajas e inconvenientes, que, resumidos, son los siguientes:  C++  El lenguaje de programación por excelencia para aplicaciones que necesitan extraer el máximo del  terminal, tanto en capacidad de procesamiento y por lo tanto en velocidad de ejecución, como en  utilizar las posibilidades de hardware que ofrezca el dispositivo. El ejemplo más claro de aplicación  candidata a ser realizada en C++ sería un juego de conducción, con capacidades multiusuario a  través de bluetooth.  Sus inconvenientes vienen dados por el propio lenguaje, que probablemente sea el más potente pero  el más complicado para casi cualquier programador. Hacen falta, por tanto, programadores de un  perfil muy especializado o muy alto, y el lenguaje en sí no hace posible el desarrollo de aplicaciones  con gran rapidez, con lo que los proyectos desarrollados en C++ suelen ser caros.  J2ME  En términos generales, se puede decir que es el gallo del corral. El número de aplicaciones  desarrolladas en J2ME es enorme, el lenguaje cuenta con el respaldo incondicional de SUN, y se ha  convertido en el estándar de facto en el desarrollo de aplicaciones para móviles. Básicamente, es un  subconjunto de J2EE, por lo que casi cualquier desarrollador Java puede ponerse a programar para  móviles tras un breve periodo de adaptación al medio.
    2. Sin embargo, como sucede en general con todas las tecnologías basadas en Java, no es oro todo lo  que reluce. Es casi imposible escribir un programa en J2ME con unas garantías mínimas de que  vaya a poder funcionar en un amplio abanico de dispositivos, sobre todo cuando se intenta utilizar  alguna de las APIs que permiten acceder al hardware del teléfono (bluetooth, 3D, etc), tal es la  jungla de perfiles y configuraciones disponibles. Además, el proceso de desarrollo replica alguno de  los vicios del desarrollo J2EE, como la tendencia a excederse en la arquitectura, o a complicar  algunos procesos.  Flash Lite 1.1  El recién llegado, el vecino nuevo. Sin lugar a dudas FlashLite es la plataforma con menor  funcionalidad de todas las enumeradas. No se puede acceder al bluetooth, no se puede implementar  ningún mecanismo de persistencia de datos, no es que se ejecute a velocidades de vértigo, y  además, el lenguaje de programación es el ActionScript que se empaquetó con Flash 4, lo que  convierte el proceso de desarrollo de aplicaciones de tamaño medio, por decirlo suavemente, en un  infierno.  Pero precisamente, sus limitaciones son su gran arma. El proceso de desarrollo es mucho más  sencillo y rápido que para cualquiera de las otras plataformas, de forma que se pueden construir  aplicaciones sencillas en tiempos realmente cortos, y con resultados gráficos difícilmente  alcanzables por sus competidores. Además, no hay que preocuparse de perfiles o configuraciones.  Lo que se desarrolla una vez sirve para todos los dispositivos que soporten Flash Lite (con la única  precaución de prever que no todas las pantallas tienen el mismo tamaño).  No basta con querer desarrollar aplicaciones para dispositivos móviles. No es suficiente porque hay  que tener en cuenta que un teléfono móvil no es un ordenador, aunque pueda funcionar como tal. Y  no es un ordenador sobre todo por dos aspectos, que son precisamente las limitaciones  fundamentales a tener en cuenta cuando se desarrollan aplicaciones para estos dispositivos: la  memoria y la capacidad de proceso limitadas.  La memoria de los dispositivos móviles suele ser bastante escasa. Aunque los terminales  multimedia de gama alta, como los teléfonos Nokia que corren el sistema operativo Symbian Series  60 Second Edition, pueden implementar de serie hasta 16 MB de RAM, lo normal es que haya  teléfonos con tan sólo 4Kb de memoria. En lo que al desarrollo en Flash Lite se refiere,  probablemente ésta sea la limitación menos importante, ya que es el player de Flash el que se  encarga de manejar el uso de la memoria por parte de los swf que se ejecutan en él, pero en todo  caso es algo que debe tenerse en cuenta.  La potencia de proceso, o mejor dicho, la escasa capacidad de proceso de estos dispositivos sí puede  resultar un problema de complicada solución. Lo que en un PC funciona sin ningún problema,  puede resultar totalmente inutilizable en un teléfono. Por tanto, hay que ser muy cuidadoso con la  cantidad de elementos a presentar en pantalla a la vez, y hay que ser muy cuidadoso con la forma en  que se maneja la presentación de dichos elementos, instanciando sólo lo que sea estrictamente  necesario.
    3. Pero también hay otras limitaciones que se deben tener en cuenta, y que ya no vienen motivadas por  la \"fuerza bruta\" con la que procese el teléfono, sino que vienen dadas por las condiciones de  utilización de la propia plataforma. Dicho de otra forma, los botones son pequeños, la pantalla es  pequeña, y por si fuera poco, intentamos utilizarlo con una sola mano, bajo la luz solar directa, y en  movimiento. Por tanto, el interfaz tiene que ser muy sencillo, a ser posible limitando al mínimo  imprescindible las entradas de datos alfanuméricas, y con elementos grandes y visibles. Casi nada.  Por si fuera poco, el precio de las conexiones GPRS es desorbitado, más aún el de las conexiones  3G, por lo que hay que ser muy cautos a la hora de utilizar la conectividad del teléfono.  Aún así, pese a todas las limitaciones, se han visto ya algunas aplicaciones para Flash Lite  francamente ingeniosas. Probablemente, en el caso de los móviles, más que en ningún otro, lo que  más falta hace es tener una buena idea. Eso sí, a la hora de llevarla a la práctica está bien conocer  las herramientas con las que se cuenta.  En principio, la herramienta principal para el desarrollo de aplicaciones para Flash Lite es el propio  Macromedia Flash, que en su última versión, que hace ya la número 8, incluye un emulador que  permite testear el contenido desarrollado contra una amplia variedad de dispositivos (en realidad,  contra todos los dispositivos que soportan Flash Lite). Además, el emulador permite filtrar los  dispositivos según el tipo de aplicación a desarrollar, es decir, que si se está implementando, por  ejemplo, un salvapantallas, dicho salvapantallas se puede probar sólo en los teléfonos que soporten  dicha funcionalidad. También, el nuevo Fireworks 8 incluye elementos de interfaz que pueden ser  directamente utilizados en aplicaciones Flash Lite, así como procesos de optimización específicos  para dispositivos móviles.  Mobile Emulator de Flash  Lamentablemente, el disponer de un potente emulador no es suficiente para compensar el hecho de  que Flash Lite soporta ActionScript 1.0 con la sintaxis y las limitaciones de Flash 4. Por tanto, antes  de ponerse a programar, hay que hacer un doloroso ejercicio de vuelta atrás en el tiempo, y  recuperar una sintaxis que casi cualquier desarrollador ActionScript debería haber abandonado hace  tiempo, así como unas metodologías de desarrollo que tampoco deberían ser muy utilizadas en la  actualidad.  Por tanto, volverá el código en botones, el uso masivo de código en movieclips, la descentralización  del código, prácticas todas ellas que no son malas por sí mismas, ya que en parte permiten hacer que  el tiempo de desarrollo sea mucho menor, pero que, a la vez, impiden construir aplicaciones  grandes.  No hay que olvidar que la explosión de Flash como plataforma de desarrollo se ha producido entre  las versiones 6 y 7 del mismo, por lo que un gran porcentaje de los programadores que trabajan con  ActionScript en la actualidad nunca trabajaron con Flash 4, por lo que el cambio de mentalidad que  tienen que realizar puede resultar traumático para ellos. Pero es que, además, no se puede  aprovechar todo lo bueno que trae consigo la programación orientada a objetos (reusabilidad de  código, y organización del mismo en entidades de funcionalidad concreta, sobre todo), por lo que
    4. cualquier proyecto de un tamaño medio se puede convertir en algo muy difícil de desarrollar y  mantener.  Bueno, pero si todo es malo (no se puede programar orientado a objetos, el lenguaje es obsoleto, la  performance no es muy buena, y hay un \"factor vudú\" considerable) ¿por qué estamos hablando de  Flash Lite? Sencillo, porque para muchas cosas sigue siendo la solución más rápida, con los  tiempos de desarrollo más cortos, y con el mejor resultado visual, como ya comenté con  anterioridad. Por eso, Flash Lite es la herramienta perfecta para aplicaciones con funcionalidades  sencillas como por ejemplo relojes, salvapantallas, o microjuegos. ...”  Siempre que se desarrolla para celulares se debe tener presente las siguientes restricciones y  consideraciones, este analisis se realiza teniendo en cuenta el desarrollo en flash lite:  Caracteristicas técnicas del celular y de la herramienta de programación:  Display/pantalla: Flash ofrece diferentes configuraciones según el tamaño de la pantalla del  ●  usuario, esto varia dependiendo del modelo y de la marca. Por tanto, no hay forma de  realizar una versión de una aplicación generica que se adapte a todos los modelos de  celulares o dispositivos móviles que soportan flash lite, por tanto es necesario crear varias  versiones de la aplicación para cada modelo. Adaptar una aplicación creada para una  resolución de tamaño x, puede ser rápido. Si la aplicación no realiza operaciones teniendo en  cuenta las coordenadas de la pantalla por ejemplo los microjuegos, en otro caso sólo se  requiere de una optimización de la interfaz gráfica para que se adapte a una resolución  diferente, siendo muy recomendable manejar los gráficos vectoriales dibujados directamente  en flash para facilitar la creación de nuevas versiones.  Programación: Se recomienda al crear la aplicación utilizar las primeras versiones de flash  ●  lite por ejemplo la 1.1, ya que esta versión es soportada por un número mayor de equipos.  Pero eso implica limitaciones adicionales en el lenguaje, porque se limitan las herramientas  de programación, por ejemplo la versión 1.1 no puede crear funciones, no tiene  programación orientada a objetos, no cuenta con herramientas para leer archivos xml, entre  otros. Sabemos que una programación sin funciones es muy primitiva, pero flash lite  dispone de varios ejemplos para lograr comportamientos similares por ejemplo el uso de la  función nativa call, para ejecutar el código de un frame específico sin desplazar la línea de  tiempo, además con el uso de la función gotoAndPlay se logra construir ciclos que  funcionan similar a los métodos setInterval o onEnterFrame de actionscript 2.0. Hay muchas  funciones que o estan disponibles, por ejemplo la función hitTest para detectar colisiones, se  debe construir por medio de operaciones matemáticas utilizando la fórmula de la distancia.  La construción de funciones es un paso adicional que se debe tener en cuenta e influye  directamente en las posibilidades de crear nuevas características para las aplicaciones,  porque interviene otro factor importante que por lo general no se controla en las aplicaciones  de flash, este factor es el funcionamiento óptimo de los algoritmos y las operaciones  realizadas, es decir si no se logra códificar correctamente un procedimiento la aplicación  puede tener fallos dificiles de controlar.
    5. Instalación de la aplicación: Generalmente los celulares que soportan flash lite 1.1, tienen  ●  como características adicionales por lo menos uno de los siguientes servicios bluetooth,  puertos usb o puerto inflarojo. De tal forma que las aplicaciones son fáciles de instalar en  estos equipos desde un computador personal, o recibido de otro celular o dispositivo vía  bluetooth (teniendo en cuenta, requerimientos  y especificaciones técnicas). Hay modelos de  celulares que aunque tienen precargados juegos de fabrica, es muy complicado instalarles  nuevas aplicaciones porque en algunos casos no soportan instalaciones adicionales por  espacio de disco y también en ocasiones es complicado enviar datos al celular porque los  cables necesarios para esto no vienen con el celular o son dificiles de conseguir.  Una ventaja de los celulares de gamma alta, es que permiten la difusión viral de las  aplicaciones cosa muy importante cuando se desea crear campañas de marketing,  lanzamiento de productos, entre otras.  Interfaz de usuario: Una aplicación móvil, debe ser muy facíl de manejar. El usuario sólo  ●  dispone de las teclas del celular para operar la aplicación, por tanto se debe ofrecer  mecanismos con los cuales el esta familiarizado, por ejemplo controlar el juego con las  teclas 2 arriba, 4 izquierda, 6 derecha, 8 abajo.  La siguiente imagen, muestra el uso frecuente de las principales teclas del celular, se  recomienda seguir este esquema para que los usuarios no se sientan frustrados al usar la  aplicación.  Para más consejos en la implementación de la interfaz gráfica y la usabilidad de aplicaciónes  flash lite consultar:  http://www.adobe.com/devnet/devices/articles/ten_tips_flash_lite_games.html
    6. Usuarios: Los móviles que soportan flash lite son equipos de gama media/alta, que disponen  ●  de funcionalidades extras para reproducir contenido multimedia, por lo general estos  equipos son usados por adultos y algunos jovenes que pueden adquirirlos ya que en  Colombia por lo general son costosos. A continuación vamos a ver los modelos disponibles  para la versión flash lite 1.1 y sus características técnicas más importantes:  Nota: PDC Celular digital personal: Es un telefono celular de estandar 2G desarrollado y usado exclusivamente en Japon.
    7. Nota: Sistema Universal de Telecomunicaciones móviles (Universal Mobile Telecommunications System ­ UMTS) es una de las  tecnologías usadas por los móviles de tercera generación (3G, también llamado W­CDMA), sucesora de GSM.Aunque inicialmente esté  pensada para su uso en teléfonos móviles, la red UMTS no esta limitada a estos dispositivos, pudiendo ser utilizada por otros.  Sus tres grandes características son las capacidades multimedia, una velocidad de acceso a Internet elevada, la cual además le permite  transmitir audio y video en tiempo real; y una transmisión de voz con calidad equiparable a la de las redes fijas. Pero dispone de una  variedad de servicios muy extensa
    8. La multiplexión por división de código, acceso múltiple por división de código o CDMA (del inglés Code Division Multiple Access) es un  término genérico para varios métodos de multiplexión o control de acceso al medio basados en la tecnología de espectro expandido.La  traducción del inglés spread spectrum se hace con distintos adjetivos según las fuentes; pueden emplearse indistintamente espectro  ensanchado, expandido, difuso o disperso para referirse en todos los casos al mismo concepto.  Habitualmente se emplea en comunicaciones inalámbricas (por radiofrecuencia), aunque también puede usarse en sistemas de fibra óptica  o de cable.
    9. Precio en Colombia desde $320.000
    10. Precio en Colombia desde $450.000
    11. Precio en colombia desde $690.000  Los precios fueron tomados de: http://www.tuespaciodigital.com/docs/principal_nokia.htm
    12. Precio en colombia $410.000
    13. En el mercado colombiano se pueden encontrar marcas como sony­ericsson, nokia y motorola, las  demás marcas como sanyo, panasonic, sharp y fujitsu son poco comerciales en latinoamerica por  tanto son marcas que se pueden descartar a la hora de segmentar el mercado para lanzar un producto  para celular hecho con flash lite. También este análisis sugiere que una campaña de juegos u otras  actividades debe ser para un grupo de usuarios muy exclusivo.
    14. Manual para la creación de un microjuego en flashlite  Abrimos flash y en la ventana principal pulsamos en la columna de “Crear plantilla” el botón de  “Más...”  Luego en la siguiente ventana, pulsamos la opción “Archivo de Flash (móvil)”:
    15. Vemos una ventana nueva, la cual se llama el “adobe Device Central”, la cual nos permite  configurar según varios parámetros el archivo flash que vamos a crear,  El principal parámetro que debemos seleccionar es la versión del reproductor de flash lite, para este  ejemplo vamos a usar la 1.1, ya que como comentamos anteriormente esta se “adapta” y es  compatible con un número más grande de marcas y modelos.
    16. Luego debemos seleccionar el modelo del equipo donde vamos a probar, es decir flash para probar  las aplicaciones para móviles dispone de un emulador de todos los teléfonos soportados hasta el  momento, cuando presionamos CTRL+ ENTER para probar la película, se abre nuevamente el  adobe device center con la versión simulada del equipo seleccionado.  Para este ejemplo vamos a probar con el nokia 5200, se selecciona en el panel izquierdo así:  Es importante notar, que al lado de cada referencia  de teléfono se muestra la resolución de pantalla  determinada, por ejemplo para el nokia 5200, se crea un  archivo swf de dimensiones 128 x 160 pixeles.  Podemos ver como existen varias resoluciones según el  modelo, por tanto si queremos ofrecer una aplicación  para todos los usuarios de nokia soportados, es necesario  crear las siguientes versiones del archivo flash, con los  ajustes en la programación o en el disñeo que requieran:  176x 208  128x160  240x320  208x208  352x416  320x240  Es decir necesitariamos ofrecer 6 versiones diferentes de  la aplicación.  Al lado derecho, podemos ver las especificaciones técnicas del equipo, el dato más  importante es respecto a la pantalla y la version del player que soporta el equipo.
    17. Este teléfono soporta flash lite 2.0, quiere decir que soporta también las versiones anteriores,  como la versión 1.1 que es la que estamos utilizando. Y tiene una resolución de  display/pantalla de 128x160px.
    18. Una vez realizada la selección del modelo del equipo donde vamos a probar y de haber  seleccionado la versión de flash lite 1.1, pulsamos el botón probar para empezar con el proyecto.  Luego vemos el área de trabajo tradicional de flash, lo importante este tener presente que debemos  usar actionscript 1.0 y las funciones nativas de flash lite 1.1  El fondo del archivo mide 128 px de ancho por 160 px de alto, que son las dimensiones de la  pantalla del nokia 5200.
    19. Se va a crear un juego, que tenga las siguientes caracteríticas:  Completar una palabra desconocida adivinando todas las letras, con la ayuda de un pista de  ●  la palabra.  Para completar la palabra, se debe ingresar cada letra utilizando las teclas de números 2, 3,  ●  4, 5, 6, 7, 8, 9.  Para cambiar de posición el cursor de ingreso de tecla, se debe utilizar las deteclas de  ●  desplazamiento, derecha, izquierda, * y #.  Para verificar que la palabra ingresada es correcta, se presiona enter, o el botón del centro  ●  del cursor del celular.  Lo primero antes de agregar elementos al escenario se verifica que el emulador de flash lite  funciona, pulsamos CTRL + ENTER, para probar la película.
    20. Como ya se comentó, flash lite 1.1 no tiene soporte de funciones, por tanto se debe utilizar la  función call, para ejecutar el código actionsript en un frame marcado con un nombre determinado.  Ej: call(“hola”); Ejecuta todo el código que se encuentre en el frame marcado con el label hola.  Lo primero que hacemos es enumerar las funciones que necesitamos, y las diferentes capas que se  van a utilizar para ubicar los diferentes elementos de la interfaz del usuario.  Nota. Es muy importante seguir un orden estricto, para facilitar la programación y el mantenimiento a la aplicación.  En el segundo frame, va la introducción del juego es decir el nombre y los creditos del autor, y las  instrucciones de la metodología de como jugar.  La línea de tiempo se ve como un movieclip tradicional, utilizando animación por línea de tiempo y  navegación por botones utilizando nextFrame y prevFrame.
    21. Después de la animación o cortina de entrada con los créditos, empiezan las intrucciones, estas se  navegan con botones de flechas, que se manejan con el cursor del celular.  on(keyPress \"<Right>\"){  nextFrame();  }  on (keyPress \"#\"){  nextFrame();  }  on(keyPress \"<Left>\")  {  prevFrame();  }  on (keyPress \"*\"){  prevFrame()  }  on(keyPress \"<Right>\")  {  nextFrame();  }  on (keyPress \"#\")  {  nextFrame();  }  El botón jugar, tiene el código:  on(keyPress \"<enter>\")  {  gotoAndStop(3);  }  Es decir ir a el frame que inicializa el juego.
    22. El frame que inicializa el juego tiene la siguiente acción:  call(“init”)  Es decir ejecuta el código que hay en el frame init. También en este frame comienzan a existir en la  línea de tiempo los elementos de la interfaz como lo describe la siguiente imagen.  En este momento la cabeza lectora de la línea de tiempo se ubica en el frame init, este llama y  ejecuta el código que se encuentra en el frame init.  myNum = random(5)+1;  La variable myNum, guarda un valor aleatorio entre 1 y 5, el cual se va a utilizar para realizar la  selección de la palabra aleatoria que se va a adivinar, la pista de la palabra y el número de letras que  contiene la palabra.  Error = 1;  Variable que permite referenciar el frame de error que se va a mostrar cuando el usuario se  equivoque.  Tiene relación con el score actual.
    23. Intentos = 7;  Contador de las oportunidades que tiene el jugador para equivocarse antes de adivinar la palabra.  Tecla = ­1;  Variable que se utiliza para conocer la tecla actual que el jugador es pulsando.  cc = 1;  Variable que indica el movieclip actual para ingresar una letra de la palabra.  switch (myNum) {  case 1:                    w = \"halloween\";  p = \"Epoca del año\";  tope = 9;  break;  case 2:  w = \"murcielago\";  p = \"Animal\";  tope = 10;  break;  case 3:  w = \"superman\";  p = \"personaje de tv\";  tope = 8;  break;  case 4:  w = \"celular\";  p = \"Tecnologia\";  tope = 7;  break;  case 5:                    w = \"andres\";  p = \"Nombre de persona\";  tope = 6;  break;  default:                   w = \"semaforo\";  p = \"Esta en la calle\";  tope = 8;  }  La sentencia switch anterior, se utiliza para determinar la palabra que se va a usar para que el  usuario la adivine, esto se hace con la ayuda del valor aleatorio guardado en la variable myNum,  por medio de switch inicializamos las variables w: palabra completa, p: pista para que el usuario  adivine la palabra, tope:número de letras de la palabra.
    24. for (i = 1; i <= 10; i++) {  if(i<=tope)  {  //Inicializando campos de las letras  tellTarget(\"l\" add i)  {  gotoAndStop(1);  }  //Inicializando blinks  }  else  {  tellTarget(\"l\" add i)  {  gotoAndStop(28);  }  }  tellTarget(\"b\" add i)  {  gotoAndStop(1);  }  }  El ciclo for, se encarga de inicializar dinámicamente los movieclips del escenario, según la  información obtenida de la sentencia switch.  Cuando la cabeza lectora de la línea de tiempo esta en init, ya es posible comenzar a jugar y  adivinar palabras, por medio del teclado del celular. Para controlar estos eventos se emplea la  detección de teclas mediante el botón invisible que hay ubicado en el escenario.
    25. Para controlar las teclas del celular, se hace por medio de los números de 0 al 9.  Para las letras sólo  utilizamos las teclas del 2­9, el código anterior se ejecuta cada vez que el usuario pulsa la tecla 2.  Y se encarga de ubicar el movieclip de letra en el frame determinado por la tecla actual, a  continuación vemos una imagen que nos ubica dentro del movieclip de tipo _mcopt, para entender  el comportamiento.  El movieclip, esta compuesto por 28 fotogramas, en la capa1, se ubican las letras del abecedario y  en la capa2 se ubica la línea base de la letra.  En la capa 1, en el frame 1 no hay letra, pero si hay línea base, este es el estado inicial del  movieclip. Mientras en en el frame 28, hay un frame vacío, se utiliza para determinar que el  movieclip no va a ser visible en el escenario.  Volviendo al botón invisible, encontramos, varios bloques con código parecido a:  on (keyPress \"2\") {  Detecta cada vez que se presiona la tecla 2  if(tecla!=2)  {  Condicional que determina si la tecla actual es el 2, esto es necesario porque cada que se pulsa una  tecla cambia el comportamiento cada vez que se presiona.  tecla = 2;  Si la tecla es diferente a 2, se guarda el estado de la tecla presionada 2  call(\"reset\");  Se llama a la pseudofunción reset para volver a cero el contador de letra, count. Este contador  determina el valor que representa la tecla actual, por ejemplo:  La tecla 2, tiene los siguientes valores de letra A:count=0, B:count=1 , C: count=2.
    26. }  if(count==2)  {  Primero se verifica el valor del contador de mayor a menor, para evitar que al incrementar el  contador se cumplan todas las condiciones en el mismo tiempo. Esta condición es en reaklidad la  última en ejecutarse y muestra el valor de la letra C en el frame 4 del movieclip l+cc actual.  count++;  tellTarget((\"l\" add cc))  {  gotoAndStop(4);  }  }  if(count==1)  {  Segunda condición que se tiene en cuenta al pulsar la tecla 2.  count++;  tellTarget((\"l\" add cc))  {  gotoAndStop(3);  }  }  if(count==0)  {  La primera vez que se pulsa 2, el contador se asigna a cero y muestra el movieclip l+cc (cc valor  actual del movieclip de letra) en el frame 2, es decir el de la letra A y incrementa el contador.  count++;  tellTarget((\"l\" add cc))  {  gotoAndStop(2);  }  }  if(count==3)  {  count=0;  }  }  Este es el mismo comportamiento para las teclas del 3­9.  Por último tenemos las operaciones de navegación, las cuales permiten desplazar el cursor por los  diferentes campos de tecla y otras funciones que tendra disponible el usuario.
    27. Las siguientes funciones permiten mover el cursor entre los movieclips de letra, de izquierda a  derecha con las teclas * del teclado e izquierda del cursor del celular.  on(keyPress \"<Left>\"){  if(cc­1>0) {  call(\"reset\");  cc­­;  tellTarget((\"b\" add cc))  {  gotoAndPlay(2);  }  }  }  on (keyPress \"*\"){  if(cc­1>0){  call(\"reset\");  cc­­;  tellTarget((\"b\" add cc))  {  gotoAndPlay(2);  }  }  }  on(keyPress \"<Right>\"){  if(cc+1<(tope+1)){  call(\"reset\");  cc++;  tellTarget((\"b\" add cc))  {  gotoAndPlay(2);  }  }  }  on (keyPress \"#\"){  if(cc+1<(tope+1)){  call(\"reset\");  cc++;  tellTarget((\"b\" add cc))  {  gotoAndPlay(2);  }  }  }
    28. Para ver las instrucciones del juego, se asocia a la tecla 0.  on(keyPress \"0\"){  gotoAndStop(\"intrucciones\");  }  Para verificar si las letras ingresadas son correctas se presiona la tecla enter es decir el centro del  cursor.  on (keyPress \"<enter>\") {  //call(\"init\");  call(\"wfinal\");  }  Al llamar al código del frame wfinal, se realiza la comprobación de la palabra ingresada y se toman  decisiones del estado actual del juego.  p1=­1; p2=­1; p3=­1; p4=­1; p5=­1; p6=­1; p7=­1;p8=­1; p9=­1; p10=­1;  step1 = \"uno\";step2 = \"dos\";step3 = \"tres\";step4 = \"cuatro\";step5 = \"cinco\";step6 = \"seis\";  Necesitamos tener una estructura que nos permita,  crear una palabra dividida por letras, como en  flash lite 1.1 no tenemos arrays, es necesario crear una funcionalidad parecida, para esto declaramos  un conjunto de variables que tienen parte de su nombre común. Para luego poder hacer referencia a  ellas de una forma dinámica por medio de la composición de su nombre.  El siguiente código se encarga de recorrer los 10 movieclips de letras que hay en el escenario y de  saber el frame actual, si se encuentra en un frame entre 2­27 significa que hay una letra, en este caso  guarda el valor de la letra en el pseudoarray que creamos. Este analisis continua hasta que se analice  toda la palabra.  for(i=1;i<11;i++){  tellTarget((\"l\" add i)){  cu = _currentframe;  switch(cu)  {  case 2: eval(\"/:p\" add /:i) = \"a\";  break;  .  .  .  case 27: eval(\"/:p\" add /:i) = \"z\";  break;  }  }
    29. }  Al realizar el análisis de las letras de la palabra, es necesario crear la representación de la palabra  actual, en un tipo de dato que podamos comparar, en este caso creamos un string.  wt = \"\";  for (i = 1; i <= 10; i++) {  if(eval(\"p\" add i)!=­1)  {  wt = wt add eval(\"p\" add i);  }  }  Recorremos el pseudoarray p, y concatenamos sus valores en el string wt.  Comparamos que la palabra del usuario sea igual a la que el sistema seleccionó  if(wt eq W){  Si es igual se muestra el frame de felicitación al usuario.  gotoAndStop(\"gano\");  }  else  {  Si la palabra no es igual, verificamos los intentos del usuario,  if(intentos­1>=0)  {
    30. Si el usuario tiene intentos, se disminuye el contador de intentos, se muestra un mensaje de error al  usuario actualizado con el contador de errores.  intentos­­;  gotoAndStop(\"ups\");  step = eval(\"step\" add error);  error++;  }  else  Si el usuario no tiene más intentos, se muestra el mensaje de juego perdido con la opción de volver  a jugar.  gotoAndStop(\"perdio\");  }
    31. A continuación algunos pantallazos del juego funcionando con el emulador de flash.  Introducción del juego, con el botón de jugar para saltar intro.  Pantalla con las instrucciones del juego.
    32. Pantallazo inicial del juego, luego que el sistema seleccioné  aleatoriamente una palabra, en este caso la palabra es celular.  Pista: tecnología.  Interacción del usuario con el juego. Desplazamiento del cursor e  ingreso de letras.
    33. Si el usuario digita una palabra incorrecta, se presenta un  mensaje de error y se decrementan los intentos.  Cuando el jugador acierta la palabra gana y ve esta pantalla.
    34. Si el usuario pierde tiene la opción de volver a jugar o de salir  del juego.
    35. Documento creado por:  Andrés Bedoya Tobón  www.lasmovies.com/blog  and1res@hotmail.com  Referencias en internet:  http://www.adobe.com/devnet/devices/  ●  http://www.blocketpc.com/  ●  http://foros.cristalab.com/telefonos­celulares­y­dispositivos­moviles­f45/  ●  http://www.softonic.com/s/flash­lite­1.1:movil  ●  http://www.ludicroussoftware.com/  ●  http://www.republicofcode.com/tutorials/flash/litebattery/  ●  http://www.flashlite.es/  ●  http://www.forum.nokia.com/ ● 

    + lasmovieslasmovies, 6 months ago

    custom

    1943 views, 1 favs, 1 embeds more stats

    Manual que explica la creación de un juego de ahor more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 1943
      • 1941 on SlideShare
      • 2 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 43
    Most viewed embeds
    • 2 views on http://static.slidesharecdn.com

    more

    All embeds
    • 2 views on http://static.slidesharecdn.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories