Creación de juegos Flash. Programación en Flash

No asuma que ha aprendido a programar estudiando el capítulo Introducción a ActionScript y el capítulo Elementos ActionScript para crear juegos. Existe una diferencia entre poder escribir código ActionScript y tener experiencia en programación.

La programación es difícil para la mayoría de las personas, pero fácil para mí. Pero soy licenciado en informática y llevo 18 años programando. Sin experiencia similar, no debes esperar resultados rápidos.

A continuación se presentan algunos principios que le ayudarán a aprender a programar. Como cualquier habilidad, la programación requiere tiempo para aprender. Descubrirá que cuanto más programe, más fácil le resultará.

Análisis de tareas

La programación es un proceso. Un programa grande se puede dividir en partes. Estas partes se pueden dividir en partes aún más pequeñas, etc. Para escribir un programa, debe considerar el problema que se le presenta y resolverlo parte por parte.

Digamos que quieres crear un juego. Invasores espaciales(Invasores del espacio). Ésta es una tarea difícil. Sin embargo, una vez que lo descompongas en partes pequeñas, te darás cuenta de que resolverlo es bastante sencillo.

En primer lugar, piensa en qué elementos constará tu juego: la nave del jugador, los invasores, los proyectiles que dispara la nave y los proyectiles que disparan los invasores.

Ahora toma uno de estos elementos y piensa qué acciones sucederán con él. La nave del jugador se moverá horizontalmente a lo largo de la pantalla usando las teclas de flecha. Ésta ya es una tarea más factible.

Continúe su razonamiento más allá. ¿Cómo sabes que el usuario ha presionado la tecla de flecha izquierda? ¿Cómo mueves el barco hacia la izquierda? ¿Qué pasa con la tecla de flecha derecha y mover el barco hacia la derecha? Resolviendo estos pequeños problemas, solucionarás el gran problema de mover el barco. Después de esto, puedes pasar a la siguiente parte del programa. Este proceso requiere paciencia, que es un aspecto esencial de la programación. También debes tener paciencia contigo mismo. Hasta que se convierta en un experto en ActionScript, deberá tomarse un tiempo de la programación de vez en cuando para buscar algún comando que aún no conozca o aprender material nuevo. No puedes escribir programas complejos sin llenar algunos vacíos en tu conocimiento.

Es importante darse cuenta de que si una tarea parece demasiado grande para manejarla, probablemente lo sea. Divídalo en tareas más pequeñas y encontrará una solución.

Reglas de programación

Mientras aprende a programar, existen algunas reglas a seguir que facilitarán su trabajo. Los programadores de todo el mundo siguen estas reglas y utilizan todos los lenguajes de programación:

  • comentarios- Deberías acostumbrarte a añadir comentarios a tu código. Incluso las líneas que parecen claras en este momento pueden volverse confusas si regresa a ellas un mes después;
  • nombres de variables- utilizar nombres de variables que reflejen su propósito. Complementarán los comentarios y le ayudarán a comprender el código cuando vuelva a consultarlo más tarde;
  • nombres de funciones- todo lo anterior se aplica a los nombres de funciones. Deben describir las acciones que realizan;
  • cuanto más corto mejor- Flash no tiene límite en la duración de una función. Sin embargo, si escribe una función de 100 líneas, le resultará difícil editarla más adelante. Es mejor dividir la función en tareas y poner cada tarea en una función separada;
  • incluir funciones reutilizables en su código- Mientras programa, no olvide pensar en cómo puede aplicar tal o cual función a una tarea similar o similar en otra parte de su programa. Digamos que necesitas una función que agregue un punto a la puntuación de un jugador. Intente utilizar un parámetro que le permita agregar no solo uno, sino también cualquier otro número de puntos a su puntuación;
  • Trate de evitar la codificación estricta- Codificación rígida significa incluir números específicos en su código. Digamos que su código usa el valor 550 para describir el lado derecho del espacio de trabajo, estará codificado en el programa. Si decide ampliar el área de trabajo a 600 píxeles, deberá cambiar cada uso del valor 550 en el código. Es mejor establecer una variable llamada screenRightSide en 550 desde el principio y usar esta variable durante todo el programa;
  • buena organización- Sin duda, un buen programador debe poder organizar los distintos elementos de un programa. Por ejemplo, las funciones no deben colocarse en fotogramas diferentes, sino en un fotograma de su vídeo. Además, intenta agrupar funciones según las tareas que realizan.

Depuración

Todos los programadores tienen que depurar los programas que crean. Es imposible conseguir que un programa funcione perfectamente la primera vez que lo inicias. Un buen especialista debería poder depurar un programa.

Además de usar el depurador script de acción, la depuración se puede realizar de varias formas. Cuando pruebas reproducir un vídeo en una ventana Producción Pueden aparecer mensajes de error. A veces esto es suficiente para que entiendas en qué parte del código tienes problemas.

La información sobre el programa también se puede colocar en la ventana. Producción usando el comando rastro. Le ayudará a rastrear ciertos momentos del programa y el valor de ciertas variables en esos momentos.

Si desea utilizar el depurador, le recomendamos leer el manual de Flash MX para obtener más información. El depurador es una herramienta sencilla que le permite mostrar valores variables mientras se reproduce una película Flash. Sin embargo, ella no es capaz de realizar milagros; El programa de depuración sólo puede ayudarle a comprender su propio proyecto.

Pruebas

El siguiente paso en la depuración es que otras personas prueben tus juegos. Las pruebas son un aspecto importante, especialmente si el juego lo desarrollas tú a nivel profesional. Como programador, no podrá evaluar objetivamente el trabajo de su creación y sus deficiencias.

Probablemente aprenderás mucho la primera vez que alguien juegue tu juego. Nunca imaginaste que haría clic en esos elementos. Puede arrastrar elementos fuera del área de trabajo o estorbar donde no deberían estar.

Normalmente, antes de la presentación oficial ante una amplia audiencia, el juego pasa por dos etapas de verificación. En la primera etapa (prueba alfa), tus colegas o amigos prueban el juego. Las pruebas beta las realizan personas ajenas a su empresa o red. Durante ambas fases, deberías recibir notificaciones sobre cualquier problema encontrado y publicar versiones actualizadas del juego a medida que se solucionen.

Desafortunadamente, cuando el código es sintácticamente correcto, el programa produce resultados inesperados. Por ejemplo, dado que Flash no necesita una declaración especial de variables, fácilmente comerá el nombre de un objeto inexistente (fácilmente podría ingresar el nombre incorrectamente) y realizará honestamente todas las acciones que se le asignen.

Los defectos del programa incluyen no sólo errores, sino también contenido de juego inadecuado y funciones faltantes. Intenta perfeccionar tu juego tanto como sea posible antes de declararlo terminado.

flash Tomilova Elena Anatolyevna

Conferencia 8 . Programación en Destello

Plan

Introducción

Para agregar interactividad a los videos, Destello tiene un lenguaje de scripting interno ActionScript.

script de acción es un lenguaje de programación a través del cual Destello Se envían comandos y solicitudes de dependencias horarias, videoclips, botones y otros objetos.

Lenguaje ActionScript creado sobre la base del estándar ECMA-262, que, a su vez, se basa en el lenguaje JavaScript. Esencialmente ActionScript es una variedad javascript , adaptado y optimizado para trabajar en el entorno Destello.

Muy a menudo con la ayuda script de acción Se pueden alcanzar fácilmente objetivos que de otro modo serían difíciles o incluso imposibles de alcanzar. Sin script de acción Sólo se puede implementar una pequeña parte de las capacidades de Flash. Por ejemplo, se requiere ActionScript para implementar cualquier tipo de interactividad, como la respuesta después de que el usuario hace clic en un botón del mouse o presiona una tecla en el teclado. Además, ActionScript es la única forma de saltar a un fotograma específico en la línea de tiempo o iniciar o detener la reproducción de un videoclip. Sin embargo, estos sencillos ejemplos no revelan la riqueza, la flexibilidad y las infinitas posibilidades que ActionScript ofrece a los desarrolladores que utilizan el marco. Destello . ActionScript es un lenguaje nativo para Flash, y sin al menos un mínimo dominio del mismo, serás como una persona que se encuentra en un país extranjero y se ve obligada a comunicarse mediante gestos. En este caso, tendrás que conformarte con menos de lo que realmente te gustaría recibir.

Normalmente, cuando se utiliza script de acción produce archivos SWF más pequeños con mejor calidad que la creación de pantallas intermedias. Otro beneficio es que se pueden realizar diversas tareas con mayor precisión, como mover un videoclip a una ubicación precisa en el espacio de trabajo.

Para usar acciones script de acción , no es necesario ser programador. Por supuesto, la experiencia en programación será útil a la hora de crear escenarios complejos. Sin embargo, no se requiere experiencia previa al escribir scripts ActionScript. Para seleccionar acciones y asociarlas con objetos de películas, los creadores de Flash han proporcionado una interfaz sencilla e intuitiva: el panel Acciones. Al utilizar este panel, tiene acceso a una biblioteca de comandos de ActionScript, lo que le permite ahorrar significativamente tiempo al ingresar código de script.

Por tanto, ActionScript es un lenguaje de programación orientado a objetos y nativo del entorno. Destello . En este contexto el términoorientado a objetosSignifica que los guiones están asociados a objetos o elementos de la película. Durante la reproducción de una película, si estos objetos reciben un mensaje sobre un determinado evento, se ejecutan sus scripts (o acciones). Por ejemplo:

encendido (presione) (

gotoAn d Play("nextStop")

En este escenario, cuando se produce el evento de prensa, el cabezal de reproducción se moverá al fotograma etiquetado como nextStop y la reproducción continuará desde ese punto. En otras palabras, un evento desencadena una acción que cambia el orden en que se reproduce la película.

La relación entre eventos y acciones es la característica principal de la programación orientada a objetos. Si no tienes experiencia escribiendo scripts o no estás familiarizado con la programación, este lenguaje puede resultar un poco confuso. Sin embargo, no se desanime. Una vez que te familiarices con las acciones, la sintaxis y la estructura del lenguaje. script de acción se volverá menos misterioso para ti.

Usando ActionScript puedes

  • controlar el progreso de la reproducción de películas;
  • crear animaciones mediante programación, sin utilizar una línea de tiempo;
  • recibir datos del usuario;
  • cargar datos de archivos;
  • controlar sonidos;
  • ...y mucho más.

En Adobe Flash versión 9.0 (CS3) El principal lenguaje de programación es ActionScript 3.0 , sin embargo, es bastante complicado de estudiar en la etapa inicial y no lo consideraremos.

Al mismo tiempo, la antigua versión "simple" también admite idiomas. ActionScript 2.0 , que usaremos.

Recuerda que al crear nuevos archivos FLA siempre debes seleccionar un tipo de documento Archivo Flash (ActionScript 2.0).

Un programa ActionScript se llama script. . Consta de bloques de código separados que se pueden asociar con ciertos elementos de la película:

  • fotogramas clave, el código se ejecuta cada vez que se reproduce este cuadro;
  • botones o clips , el código se ejecuta cuando ocurre algo

Utilizar actividades para escribir guiones de películas. Destello , primero debes estudiar el panel Comportamiento.

Conociendo el panel Acciones ( Comportamiento)

Panel de acciones (Acciones) Esta es una interfaz para crear scripts que se ejecutarán mientras se reproduce una película Flash. trabajar con el panel Comportamiento ) es posible en dos modos: Normal y experto (Experto). en modo Normal Algunas funciones de generación automática de códigos están disponibles para el usuario, por lo que este modo se recomienda para principiantes. Al trabajar en modo Normal, puede crear acciones y agregarlas a su película seleccionando elementos de menú apropiados y arrastrando elementos con el mouse. El modo experto es más adecuado para desarrolladores experimentados. En este modo, el panel Comportamiento (Acciones) se parece más a una ventana de editor de texto en la que el usuario introduce él mismo el código del script.

Para abrir o expandir un panel Comportamiento , realice una de las siguientes acciones:

  • desde el menú Ventana (Ventana) seleccione Comportamiento;
  • presione la tecla< F9>.

Después de esto, aparecerá un panel o se expandirá en la pantalla. Comportamiento (Comportamiento). Si este panel estaba abierto pero oculto por otra ventana, se moverá al frente.

contiene una lista desplegable de categorías que le permite acceder a la biblioteca de ActionScript. Una vez que seleccione la acción adecuada, puede usar el mouse para arrastrarla al área de visualización del script.

Área de visualización de guionessirve para mostrar todas las líneas de declaración del script actual.

te permite cambiar entre escenarios asociados con diferentes elementos de la película. Cuando selecciona un elemento en el alcance que puede ser controlado por un script, el panel Acciones cambia automáticamente para mostrar el script asociado con ese elemento.


Trabajar con acciones de objetos

En las películas Flash, las acciones se pueden asociar con dos tipos de objetos: botones y clips. La acción asociada se ejecuta cuando el objeto recibe un mensaje de ejecución de evento. En el caso de los botones, estos mensajes se presentan principalmente en forma de señales procedentes del ratón o del teclado. Los mensajes de eventos del clip se producen como resultado de cualquier cambio o interacción que se haya producido en el propio clip. Cuando asocia una acción con un objeto y crea un script, define un origen de evento para cada objeto. Las acciones están asociadas con botones y clips porque estos elementos son componentes interactivos de una película Flash. Como objetos, pueden recibir eventos del mouse, datos y otros tipos de información durante la reproducción de películas. La estructura creada a través de los objetos y sus acciones asociadas determinará la forma en que el público interactúa con la película.

Es importante recordar que los botones y clips se almacenan en la biblioteca Flash como personajes. Cada vez que se utilizan los símbolos en la película, en realidad se utiliza una copia separada del símbolo, o Copiar.

Se puede considerar una instancia como una copia de un símbolo. Cualquier cambio realizado en una instancia no afectará al símbolo principal ni a otras instancias de ese símbolo. El mismo principio se aplica al asociar acciones con una instancia de símbolo. Cualquier acción asociada con una instancia de símbolo solo se realizará cuando la instancia se use en la película. Esto significa que las acciones están asociadas sólo con una instancia de símbolo específica.

Sin embargo, cualquier acción se realiza sólo cuando ocurre cierto tipo de evento en la película. En ActionScript (y muchos otros lenguajes orientados a objetos), las acciones están controladas pormanejadores de eventos.

Usando acciones

Para utilizar acciones en una película Flash, debe asociarlas con un objeto o fotograma. El proceso es bastante simple e implica seleccionar un objeto o marco, seleccionar la acción deseada y definir los parámetros especiales que puedan ser necesarios para la acción. Todas las acciones afectan sólo a la instancia del símbolo del objeto asociado o al marco único que contiene las acciones.

Las acciones se utilizan para controlar el diseño de reproducción, las propiedades interactivas, el flujo y la dirección de la película. En resumen, se puede utilizar una acción para determinar con precisión el orden de reproducción, así como la respuesta de la película a la entrada del usuario. gracias a las acciones Destello menos como un programa de animación y más como un entorno para desarrollar aplicaciones multimedia interactivas.

Algunas de las capacidades que tiene Destello gracias al uso de acciones:

  • Cree esquemas de navegación complejos e interactivos.
  • Cambie la calidad de reproducción de la película.
  • Comunicarse con documentos HTML alojados en Internet e intercambiar datos con aplicaciones de servidor.
  • Intercambie datos con aplicaciones host u otras películas Flash.
  • Reproduzca otras películas dentro de la película principal.

Capacidad para controlar escenas utilizando scripts ActionScript

El uso de escenas facilita enormemente la organización general del contenido de la película; una determinada secuencia de reproducción de escenas conduce a la creación de películas lineales. Pero junto con una serie de ventajas (por ejemplo, no se pueden reproducir dos escenas simultáneamente), esto también tiene sus desventajas asociadas con la imposibilidad de cambiar el orden en que se reproducen las escenas. Este problema se puede resolver mediante el uso de secuencias de comandos ActionScript (en particular, acciones de fotograma), que permiten manipular y reordenar escenas.

Algunas acciones que se pueden utilizar para controlar escenas.

  • ir a AndPlay() . Llamar a la acción gotoAndPlay() hace que el cabezal de reproducción salte a una escena y un fotograma específicos. La película continúa desde este cuadro.
  • ir a AndStop(). Cuando se llama a esta acción, se mueve a una escena y fotograma específicos y detiene la reproducción de la película.
  • jugar() . Esta acción le permite continuar reproduciendo la película después de detenerla.
  • detener() . Esta acción le permite detener la reproducción de una película.

Eventos del mouse

Cuando vincula una acción a una instancia de botón, Flash asigna automáticamente un controlador de eventos del mouse a esa acción. Este controlador determina qué evento durante la reproducción de la película desencadenará la ejecución de la acción (o acciones) contenidas en el script. El controlador de eventos del mouse está definido por la acción en().

Para configurar o cambiar el controlador de eventos del mouse, siga estos pasos.

  1. Seleccione el botón al que desea asociar una acción o al que desea cambiar el controlador de eventos.
  2. Abra el panel Acciones y realice una de las siguientes acciones:
    1. Si desea configurar un controlador de eventos del mouse, seleccione la acción on() de la categoría Acciones Control de películas.
    2. Si desea cambiar el controlador de eventos del mouse para una acción existente, seleccione la línea del operador que contiene el nombre del evento y seleccione la casilla de verificación adecuada en el área de visualización de parámetros.
  3. El área de opciones muestra una lista de diferentes controladores de eventos del mouse. Marque la casilla junto al nombre del controlador apropiado y su secuencia de comandos se actualizará automáticamente. La figura muestra la apariencia del panel Acciones cuando se selecciona la línea de instrucción que contiene el controlador de eventos en el área de visualización del script.

Nombres y descripciones de eventos del mouse en el idioma. Código de acción:

  • Prensa. evento de prensa Inicia una acción cuando se hace clic en un botón mientras el puntero del mouse está sobre el objeto del botón.
  • Liberar. evento de lanzamiento Activa una acción cuando se suelta el botón mientras el puntero del mouse está sobre el objeto del botón. Este evento se acepta de forma predeterminada.
  • Suelte afuera. Lanzamiento Evento externo Activa una acción cuando se suelta el botón cuando el puntero del mouse no está sobre el objeto del botón.
  • Pulsación de tecla. Evento de pulsación de tecla no asociado con el mouse. Inicia una acción cuando se presiona en el teclado la tecla especificada en el campo a la izquierda de esta casilla de verificación.
  • Dese la vuelta. Evento de vuelco Inicia una acción cuando el puntero del mouse se coloca sobre un objeto de botón.
  • Desenrollar. evento de lanzamiento Activa una acción cuando el puntero del mouse se mueve fuera del objeto del botón.
  • Arrastrar. Arrastrar evento Puede parecer un poco complicado al principio. De hecho, implica una combinación de una serie de eventos diferentes. Para desencadenar una acción mediante un evento arrastrar , debe colocar el puntero del mouse sobre el objeto del botón y hacer clic, mover el puntero fuera del objeto y luego colocar el puntero nuevamente sobre el objeto.
  • Ir alargando . Para desencadenar una acción mediante un evento ir alargando , haga clic mientras el puntero del mouse está sobre el objeto del botón y luego mueva el puntero fuera del objeto.

Trabajo práctico nº 21. Trabajar con acciones marco.

  1. Crear un nuevo archivo Documento flash.
  2. En la Etapa 1, crea una animación.
  3. Agregue la Escena 2 y cree una animación para esta escena.
  4. Ve a la Escena 1, agrega una capa y pinta.transición de acción a la escena 2.

  1. En la Escena 2 o en la última escena de su proyecto, coloque un botón que, al hacer clic, abrirá la Escena 1.

  1. Guarde el archivo con el nombre Lastname_21.fla.
  2. Publicar en formato .swf
  3. Y enviarlo en un archivo.


Trabajo práctico nº 22. Varias acciones en un mismo escenario

  1. Crear un nuevo archivo Documento flash.
  2. En la Capa 1 en el primer cuadro escribiremos el comando detener() , para que la animación no comience, es decir. no se llevó a cabo ninguna acción.

  1. Cree la capa 2. Comenzando desde el cuadro 2 hasta el cuadro 31, cree una animación que se reproducirá cuando se presione el botón del mouse.

  1. En el fotograma 31, configure la animación para que se detenga para que no se produzca ninguna acción.
  2. Agregue la capa 3. Comenzando desde el cuadro 32 hasta el cuadro 62, cree una animación cuando suelte el botón.

  1. Agrega la Capa 4. Y coloca un botón sobre ella. Y anota las acciones:

en (presionar) (

Ir a AndPlay(2); // cuando presionas el botón, las acciones ocurrirán a partir del cuadro 2

en (liberar) (

ir a AndPlay(32); // Las acciones se producirán a partir del cuadro 32 cuando se suelte el botón.

  1. Pruebe el programa.
  2. Guarde el archivo con el nombre Lastname_22.fla.
  3. Publicar en formato .swf
  4. Y enviarlo en un archivo.

Uso de acciones para crear controles básicos de reproducción de películas

Ya hemos visto el proceso de asociar acciones con varios elementos de la película. En esta sección daremos una descripción general de las acciones más importantes y útiles del lenguaje ActionScript. Estas acciones básicas se enumeran en el orden en que aparecen dentro de sus subcategorías ( Adobe Flash CS 3 Profesional).

Subcategoría Control de clip de película

  • establecerPropiedad() . Configuración de atributos del clip: dimensiones, posición, etc.
  • enClipEvent() . Define el controlador de eventos de clip que desencadenará la acción.
  • en() . Define un controlador de eventos del mouse que desencadenará alguna acción.

Control de línea de tiempo de subcategoría

  • ir a AndPlay() . Se mueve al fotograma o escena especificado como parámetro y reproduce la película desde ese punto.
  • ir a AndStop() . Va al fotograma o escena especificado como parámetro y detiene la película.
  • jugar() . Reproduciendo una película.
  • detener() . Detén la película.
  • detenerTodosLosSonidos() . Apaga el sonido de la película.

Subcategoría Navegador/Red

  • fscomando() . Manejo de aplicaciones Flash Player.
  • obtenerURL() . Llame a una película con la URL especificada.
  • descargar película() . Subiendo otras películas Flash.

Enlace a URL

Usando acción obtenerURL() Puede vincular a una URL directamente desde una película Flash. Vincular a una URL le permite hacer dos cosas. En primer lugar, puede utilizar Flash para crear un enlace web y cargar información en la ventana de su navegador desde la fuente que coincida con la URL especificada. En segundo lugar, se puede utilizar una acción para pasar datos a un recurso ubicado en una URL específica.

Para vincular una acción obtenerURL() , debe hacer lo siguiente.

  1. Seleccione el botón, marco o instancia de clip con el que desea asociar la acción.
  2. Abra el panel Acciones.
  3. En el área de Elementos script de acción subcategoría abierta Navegador/Red y haga doble clic en el icono de acción obtenerURL(). acción getURL() tiene tres parámetros que deben especificarse: URL, (Variables). También existe la opción de utilizar una expresión que describa la ubicación de la URL. Para hacer esto, debe marcar la casilla Expresión (Expresión) a la derecha del campo URL.
  4. En el campo URL debes ingresar una ruta absoluta o relativa al recurso. La ruta absoluta incluye la URL completa, como http://www. eso - norte . ru . Una ruta relativa contiene información sobre la ubicación del archivo dentro de la estructura de archivos donde se almacena la película Flash, como esta: carpeta actual/carpeta/carpeta().
  5. Lista desplegable Ventana le permite determinar en qué ventana el navegador cargará el documento al que apunta la URL. Puede ingresar un marco o nombre de ventana específico, ingresar una expresión que describa la ubicación de la ventana o seleccionar uno de los siguientes elementos de la lista desplegable.
  • _ser . El documento se carga en la ventana actual donde se está reproduciendo la película.
  • _blanco . El documento se carga en una nueva ventana.
  • _padre . Este elemento apunta a la ventana actual y le permite reemplazar solo el fotograma donde se está reproduciendo la película actualmente.
  • _arriba . Este elemento es útil cuando la película se reproduce en un fotograma y el nuevo documento al que apunta la URL debe ocupar toda la ventana del navegador.
  1. La lista desplegable Variables se utiliza para pasar variables a la URL a la que está vinculando.
  • No enviar (no transferir). Este elemento se instala de forma predeterminada y se utiliza en los casos en que no es necesario el intercambio de datos.
  • Enviar usando GET (transferencia mediante el método GET). Este elemento de la lista se selecciona en los casos en que es necesario transferir varias variables y la cantidad de datos transferidos es pequeña.
  • Enviar mediante publicación (transferencia mediante el método POST). Este elemento de la lista se selecciona en los casos en que es necesario transmitir una gran cantidad de información.

Trabajo práctico nº 23. Poner enlaces a imágenes.

  1. Crear un nuevo archivo Documento flash.
  2. Importe todas las imágenes necesarias para futuros botones ( Ctrl+R).
  3. Seleccione la primera imagen y haga clic F8 . Conviértelo en un botón.

  1. Haga doble clic en el clip de la película.
  2. Ahora haga clic en el marco con el título Over y agregue un marco presionando F6.

  1. Cree una nueva capa y haga clic en el marco con el título Sobre y agregue un marco (F6). Luego usa la herramienta Rectángulo (R) para delinear la imagen.

  1. Regrese a la escena principal y use la herramienta de selección (V) para hacer clic en el botón, presione F9 e ingrese el siguiente código AS:

  1. Repita todos los pasos anteriores para otras imágenes.
  2. Pruebe el programa.
  3. Guarde el archivo con el nombre Lastname_23.fla.
  4. Publicar en formato .swf
  5. Y enviarlo en un archivo.

Ejercicio

Cree una presentación sobre un tema gratuito utilizando el material de la lección.

Literatura

  1. Hurwitz, Michael, McCabe,Laura. Utilizando Macromedia Flash MX. Edición especial.: Por. del ingles M.: Editorial "William", 2003. 704 p.: enfermo. Paralelo. teta. Inglés
  2. Watrall E., Gerber N. Trabajo eficaz: FlashMX . San Petersburgo: Peter; Kyiv: DHV, 2003. 720 págs.: enfermo.
  3. http://www.interface.ru/

PÁGINA 1

Área de elementos ActionScript

Lista desplegable de escenarios

Área de visualización de guiones

Un programa para crear juegos flash sin conocimientos de lenguajes de programación. Le permite crear juegos a partir de bloques lógicos e imágenes preparadas previamente.

Érase una vez, probablemente hace un par de años, apareció en nuestro sitio web el programa Game Maker, que te permitía crear juegos prácticamente sin conocimiento de ningún lenguaje de programación.

Hasta ahora, esta página es una de las más discutidas entre nosotros y, a menudo, en los comentarios hay quejas de que no se puede utilizar para crear juegos que se puedan jugar en línea. Hoy volveremos al tema del desarrollo de juegos y veremos un programa similar que puede crear juegos flash: plantilla!

Características del programa

Con Stencyl, puedes crear juegos 2D de cualquier género, pero sobre todo, el motor del programa está "adaptado" para varios juegos de acción y disparos. Estructuralmente, el programa es un conjunto completo de herramientas en las que puedes, si lo deseas, crear un juego desde cero sin utilizar aplicaciones de terceros.

Cerramos la ventana emergente con información sobre la nueva versión del programa con el botón “Cerrar” o “No volver a mostrar esto” (si no queremos ver esta ventana cada vez que iniciamos el programa) y en su lugar obtenemos la siguiente ventana:

Aquí se nos pide que creemos nuestra propia cuenta en la comunidad de desarrolladores de Stencyl. En principio, no es necesario crear una cuenta (para hacer esto, haga clic en el botón "Recordarme más tarde" en la parte inferior), pero el registro le brinda la oportunidad de descargar plantillas y acciones adicionales desde un almacenamiento en línea llamado StencylForge, por lo que no dolerá :). Para crear una cuenta, haga clic en el botón "Crear una cuenta" y vaya al formulario de registro:

Aquí completamos los campos estándar con su nombre de usuario, contraseña (dos veces) y dirección de correo electrónico, y luego hacemos clic en el botón "Registrarse". Si todo va bien, finalmente se abrirá ante usted la interfaz de la ventana de inicio del programa.

Interfaz de la ventana de inicio

Externamente, el espacio de trabajo de la ventana de inicio de Stencyl está dividido en varias zonas:

En la parte superior suele haber una barra de menú y una barra de herramientas. Todas las configuraciones principales y botones de control se recopilan aquí. Debajo de la barra de herramientas tenemos una pequeña franja gris estrecha. Contiene pestañas (sí, la interfaz de Stencyl tiene varias pestañas, lo cual es muy conveniente) y botones para cambiar rápidamente entre ellas (a la derecha).

El área de trabajo principal se divide en dos partes: a la izquierda hay un panel de navegación para las secciones del programa, y ​​a la derecha está el contenido principal (en la pantalla principal hay una lista de juegos), que cambia según el modo de funcionamiento actualmente activo. Hay algunos botones adicionales más en la parte inferior que le permiten:

  1. Abra la carpeta en la que Stencyl almacena todos los recursos de los juegos creados y los juegos mismos (el botón "Ver carpeta de juegos" en la esquina inferior izquierda).
  2. Inicie un curso de capacitación sobre cómo trabajar con el programa (“Iniciar curso intensivo” en el panel verde en la esquina inferior derecha). Por cierto, al lado hay un botón para ocultar la oferta de formación (“No volver a mostrar esto”).
  3. Abra el juego actualmente seleccionado de la lista, lo cual es similar a hacer doble clic en la imagen del juego (“Abrir juego” en la esquina inferior derecha).

Para estudiar de forma independiente las capacidades de Stencyl, puedes realizar un curso de formación (y sería recomendable completarlo), así como abrir uno de los juegos ya preparados que mejor se adapte a tu idea y ver cómo funciona todo allí. Y propongo estudiar el trabajo del programa usando el ejemplo de la creación de un juego sobre las aventuras del símbolo de nuestro sitio y su residente virtual: ¡Frida Best!

Dónde empezar a crear un juego en Stencyl

Si, antes de decidirse a crear su juego, miró ejemplos estándar de juegos en Stencyl, habrá notado que básicamente todos son bastante simples, de una sola pantalla y tienen una vista lateral. ¡Haremos un shooter dinámico con vista superior y disparando con el mouse! Todo es como en los juegos “grandes” :).

Para su proyecto, puede cambiar la lógica de una de las plantillas ya preparadas, pero no buscamos formas simples y, por lo tanto, solo "desde cero", solo "hardcore" :). Para hacer esto, haga clic en el botón "Crear un juego nuevo" en la barra de herramientas del espacio de trabajo (o en el menú "Archivo" - "Crear nuevo") y acceda a la siguiente ventana:

Aquí podemos elegir una plantilla de juego por género con un conjunto preseleccionado de funciones y acciones para tu proyecto. Sin embargo, crearemos un juego desde cero, así que seleccione "Juego en blanco" y haga clic en el botón "Siguiente".

En el siguiente paso necesitaremos realizar algunas configuraciones básicas:

En el campo "Nombre" debemos indicar el nombre de nuestro juego, y en la sección "Tamaño de pantalla" debemos establecer las dimensiones del campo de juego, indicando su ancho (Ancho) y alto (Alto) en píxeles. Después de eso, haz clic en el botón "Crear" y ve directamente a la interfaz del editor del juego:

De forma predeterminada, frente a nosotros se abre la pestaña "Panel de control", en la que se recopila todo el árbol de recursos del juego a la izquierda y el área de trabajo en sí se encuentra a la derecha. Creo que aquí sería apropiado hacer algunas explicaciones sobre la estructura del “árbol”.

Consta de cuatro ramas, las dos primeras contienen conjuntos estándar de recursos (RECURSOS) y lógica (LÓGICA), y las dos últimas pueden almacenar opcionalmente paquetes de recursos descargados manualmente (PAQUETES DE RECURSOS) y extensiones (EXTENSIONES).

La rama principal aquí es la rama de RECURSOS. Contiene las siguientes secciones:

  1. Tipos de actores: aquí se almacenan los sprites de todos los personajes del juego y se configuran las acciones de su animación y la interacción entre ellos.
  2. Fondos: en esta sección podemos almacenar todos los fondos necesarios para el juego. Además, el fondo puede ser tanto para el fondo (fondo) como para el primer plano (primer plano), lo que le permite superponer fondos uno encima del otro, logrando así, por ejemplo, un efecto de paralaje.
  3. Fuentes es una sección donde podemos subir varias fuentes bonitas para crear originales inscripciones. Sin embargo, vale la pena considerar que Stencyl solo puede funcionar con el juego de caracteres en inglés, por lo que para agregar letras rusas al archivo de fuente, debemos reemplazar algunos de los caracteres latinos con ellos.
  4. Escenas es un lugar para crear y editar niveles de juego. Es aquí donde podemos configurar la apariencia de cualquier escenario y colocar todos los personajes, bonificaciones y otros elementos del juego.
  5. Sonidos: respectivamente, un depósito de todos los sonidos utilizados en el juego.
  6. Tilesets es una rama especial en la que se almacenan mosaicos: sprites especiales que podemos usar para construir niveles de juego.

Crear y personalizar mosaicos

No hay una opinión clara sobre el orden en el que se implementará tal o cual juego. Depende de lo que te convenga, pero yo recomendaría el siguiente algoritmo:

Creamos la primera escena - creamos un personaje - creamos enemigos - creamos bonificaciones - creamos las etapas restantes

Para crear una escena en Stencyl necesitas dibujar su apariencia en la rama Escenas. Sin embargo, para poder dibujar, primero necesitamos tener bloques con los que “dibujar”. Estos bloques en el programa se llaman mosaicos y se almacenan en la sección Conjunto de mosaicos:

Un conjunto de mosaicos es una matriz simple que consta de imágenes que se cargan en ella. Puede cargar una matriz ya preparada (una imagen que consta de varias imágenes del mismo tamaño en una o varias filas) o complementar los conjuntos existentes con imágenes separadas.

Primero, necesitamos crear un nuevo conjunto de mosaicos (el botón "Crear nuevo" en la sección Conjuntos de mosaicos), después de lo cual veremos una ventana como en la captura de pantalla anterior. Para cargar una imagen, debemos hacer clic en el botón "Elegir imagen" y seleccionar un archivo preparado previamente con las imágenes deseadas en la ventana del Explorador que se abre.

Cuando se carga la imagen, estableceremos sus parámetros de diseño y dimensiones en ancho y alto, después de lo cual (si todo se muestra correctamente) podrá agregar la imagen al conjunto haciendo clic en el botón "Agregar".

Para cada imagen (mosaico) en la matriz, puedes configurar los parámetros de interacción con los personajes y objetos del juego. Para ello es necesario seleccionar el mosaico deseado y acceder a la siguiente ventana:

La sección Límites de colisión se abrirá en la parte superior del panel derecho. Aquí podemos elegir una forma arbitraria para indicar los límites de interacción entre nuestro objeto y los personajes del juego. De forma predeterminada, todos los mosaicos tienen el parámetro "Cuadrado", lo que hace que el mosaico sea completamente intransitable y sólido. Si necesita hacer que el mosaico sea "transparente" para los personajes (por ejemplo, género), simplemente configure el parámetro "Sin colisiones".

Además de los bordes, puede configurar la animación para cada mosaico agregando marcos usando el botón "Insertar marcos" en el panel inferior. De forma predeterminada, la velocidad de la animación es de 100 milisegundos, pero este número se puede cambiar arbitrariamente para cada cuadro.

Para ello basta con hacer doble clic en el fotograma deseado con el botón izquierdo del ratón y en la ventana que se abre cambiar los indicadores de retardo según necesitemos. También es posible corregir el marco seleccionado utilizando el editor gráfico incorporado, que se abre con el botón "Editar marco".

Representar una escena en Stencyl

Una vez que se ha formado el conjunto de mosaicos, es lógico pasar al siguiente paso: formar un espacio de juego terminado a partir de las imágenes agregadas. Esto se puede hacer haciendo clic en el botón "Crear nuevo" en la sección Escenas. Después de hacer clic en el botón, accederemos a la ventana de configuración de la escena:

Aquí definitivamente necesitamos establecer un nombre único para nuestra escena en el campo "Nombre", especificar las dimensiones (ancho y alto en mosaicos (por defecto) o píxeles) y también, opcionalmente (es decir, según nuestro propio deseo), establecer el color de fondo de la nueva escena. Haga clic en "Aceptar" y acceda al editor de niveles:

En apariencia se parece a un editor gráfico. En el centro hay una zona de trabajo donde dibujamos nuestro nivel. A la izquierda y arriba hay pequeñas barras de herramientas. A la derecha están los paneles para la paleta, seleccionando conjuntos de mosaicos y administrando capas. Ahora como funciona todo...

En primer lugar, dibujamos el fondo de nuestra zona de trabajo. Para hacer esto, en el panel derecho, active la pestaña "Paleta" y en ella la pestaña "Mosaicos" y seleccione el mosaico deseado de la lista presentada. Luego, en el panel izquierdo, seleccione la herramienta Lápiz y dibuje las áreas deseadas con el mosaico seleccionado.

Debido al soporte de capas, los mosaicos pueden superponerse entre sí, por lo que lo más lógico es organizar el nivel teniendo en cuenta que, por ejemplo, en la capa "Capa 0" tendremos una capa de fondo, encima de ella habrá Sea una capa con obstáculos y personajes, y aún más, una capa con varios contadores e indicadores del juego.

Puede administrar capas usando los botones debajo del panel "Capas". Hay botones para crear, eliminar, mover y cambiar el nombre de capas. Además, cualquier capa se puede ocultar o mostrar haciendo clic en el botón del ojo a la derecha del nombre de la capa.

Creación de personajes

Después de haber creado la primera escena, es hora de “poblarla” con varios personajes del juego. En Stencyl se denominan "actores" y, en consecuencia, se almacenan en la sección "Tipos de actores". Los actores se crean de acuerdo con el mismo principio, por lo que veremos este proceso usando el ejemplo de la creación del personaje principal de nuestro juego, Frida.

Para agregar un nuevo actor, simplemente vaya a la sección Tipos de actores mencionada anteriormente y haga clic en el botón "Crear nuevo" allí. Como es habitual, se nos preguntará nuevamente cómo queremos nombrar el nuevo objeto del juego, después de lo cual aparecerá frente a nosotros la ventana de edición de animación del personaje:

Aquí, en el lado izquierdo, se muestra una lista de animaciones de actores agregadas (por defecto, un marco vacío “Animación 0”), y en el lado derecho hay herramientas para agregar y personalizar estas mismas animaciones.

Seleccione una animación vacía (o agregue una nueva haciendo clic en el botón más a continuación) y haga clic en el campo "Haga clic aquí para agregar un marco" en el lado derecho. Después de esto, se abrirá una ventana para agregar imágenes, que es similar a una ventana similar para agregar nuevos mosaicos a un conjunto. Haga clic en el botón "Elegir imagen", seleccione la imagen deseada y ajuste su diseño y dimensiones (si es necesario).

Cuando todo esté configurado, haga clic en el botón "Agregar" en la parte inferior derecha de la ventana de adición; la animación debería aparecer como una vista previa en la sección izquierda:

Ahora todo lo que tenemos que hacer es configurar la velocidad de fotogramas (doble clic en cualquier fotograma) y algunos parámetros adicionales, tipo, nombre de la animación (muy útil para proyectos complejos), bucle de reproducción (activo por defecto), sincronización y punto de origen básico. el origen del sprite (centro por defecto).

En la barra de herramientas inferior en la sección derecha encontraremos una fila de botones. Permiten:

  • agregar nuevos fotogramas a la animación (Importar fotogramas);
  • editar el marco seleccionado en un editor externo (Editar marco (externo));
  • crear un marco en un editor externo (Crear marco (externo));
  • editar un marco en el editor incorporado (Editar marco);
  • eliminar marco (eliminar marco);
  • copiar marco (copiar marco);
  • pegar marco (Pegar marco);
  • retroceder un fotograma (Move Back) o avanzar (Move Forward).

Personalizar las opciones y el comportamiento de los personajes.

Arriba, hicimos una animación de Frida corriendo, usando solo dos fotogramas, que son, en realidad, el mismo dibujo reflejado horizontalmente. Ahora debemos asegurarnos de que podemos controlar el movimiento de nuestra heroína usando el mouse y el teclado, y también que ella reaccione adecuadamente ante las colisiones con los obstáculos que hemos dibujado en el escenario.

En primer lugar, configuremos las colisiones. Para hacer esto, mire la línea debajo de la lista de pestañas abiertas y busque el botón "Colisión" allí.

De forma predeterminada, el área de colisión es un cuadrado delineado alrededor de todo el objeto de animación. Es decir, el evento de colisión ocurrirá en toda el área del objeto. Sin embargo, en la práctica, nuestra imagen suele contener elementos adicionales (el de Frida, por ejemplo, un desintegrador) que, en teoría, no deberían interactuar con nada. Es con la ayuda de esta sección que podemos configurar todas las áreas de colisión.

Primero, reduzcamos el área alrededor de Frida al tamaño de sólo su cuerpo. Aquí debemos tener en cuenta que no podemos mover el área con el mouse y para la configuración usamos cuatro parámetros numéricos en la sección "Forma actual". Primero, configuramos el desplazamiento horizontal del área (desde el borde izquierdo) y el desplazamiento vertical (desde arriba), y luego especificamos el nuevo ancho y alto del área de colisión.

A continuación hay varios parámetros más, combinados en la sección "Propiedades físicas". Aquí nos encontramos con la casilla de verificación "¿Es un sensor?" y el concepto de grupos.

Si activa la bandera "sensor", el área seleccionada dejará de ser un objeto físico: el personaje o parte de él se volverá, por así decirlo, "transparente" a varios obstáculos, pero al mismo tiempo conservará la capacidad de desencadenar cualquier acción bajo ciertas condiciones.

Un ejemplo de la vida real podrían ser los sistemas de alarma modernos que utilizan láser: no vemos el láser en sí, pero si lo tocamos, comienza el proceso de notificación de que hemos subido al lugar equivocado :).

Ahora, ¿para qué se necesitan los grupos? Supongamos que nuestro personaje no sostiene un desintegrador, sino una espada, con la que él (o más bien ella:)) corta a los enemigos en repollo (por cierto, en el código fuente Frida tiene una cuchilla láser;)).

La tarea es que cuando tocamos a un enemigo con una espada, el enemigo muere, pero si fallamos y el adversario golpea a Frida, entonces le quita algo de energía. Y el principal problema aquí es que nuestra animación de ataque es, de hecho, una imagen en la que Frida y la espada están presentes al mismo tiempo...

Si adjuntamos la acción de una espada a la imagen, quien toque a nuestra heroína mientras reproduce la animación morirá por el golpe. Y fue precisamente para dividir la imagen en varios objetos con diferentes capacidades y parámetros que se inventó el mecanismo de grupo.

Por defecto, solo tenemos un área que corresponde al personaje en sí (“Igual que el tipo de actor”). Sin embargo, usando las herramientas de dibujo sobre el área de trabajo principal, podemos crear nuevos objetos virtuales y establecer un grupo para ellos usando el botón "Editar grupos".

Probablemente esto sea todo lo que hay que hacer con las colisiones, pero ahora propongo abordar lo más básico: configurar el comportamiento del actor en el escenario. Para ello debemos ir al apartado “Comportamientos”:

De forma predeterminada, aquí no hay acciones al principio, pero podemos agregarlas haciendo clic en el botón “Agregar comportamiento” en la esquina inferior izquierda. Verás una lista de funciones listas para usar para controlar a tu personaje o interactuar con otros actores en el escenario.

Por ejemplo, elegí el comportamiento de “Movimiento en 8 direcciones”, que implica que el actor se mueva en círculo en cualquier dirección. Ahora seleccionamos la acción agregada en la lista de la izquierda y del lado derecho podemos configurar sus parámetros.

Agregar actores al escenario y probar el nivel

Si seguiste las instrucciones, entonces ya deberías tener los recursos mínimos necesarios para el juego. Todo lo que queda es aprender a agregar actores al escenario y probar la funcionalidad del espacio de juego.

Volvemos al editor de la escena creada anteriormente y activamos nuevamente la paleta (Paleta), pero ahora en lugar de mosaicos, activamos la pestaña "Actores". Veremos una lista de personajes creados previamente que podemos agregar a la escena usando la herramienta Lápiz:

Sólo tenemos un personaje principal, por lo que basta con un clic con el lápiz para añadirla a la escena. Y ahora ha llegado el momento de la verdad: ¡la primera prueba! Para comenzar la compilación preliminar del proyecto, simplemente haga clic en el botón "Probar escena" en la esquina superior derecha de la pestaña con nuestra escena. Después de un tiempo (la primera compilación siempre tarda más), podremos admirar nuestro trabajo en un reproductor flash:

Además del propio jugador con el juego, en el lateral mostramos una ventana con los registros de funcionamiento del juego. Con su ayuda, podemos encontrar rápidamente problemas operativos e intentar solucionarlos.

Como podemos ver, ya podemos mover a Frida en diferentes direcciones, pero la escena en sí permanece inmóvil y tan pronto como nuestra heroína va más allá del borde de la parte visible del escenario, desaparece... Desorden :). Puedes resolver el problema agregando el comportamiento "Seguimiento de cámara" a Frida o configurando los parámetros necesarios usando eventos.

Además, sería una buena idea sustituir el cursor estándar por algo más adecuado, por ejemplo una mira. Podemos implementar esto agregando un nuevo actor en forma de vista, eliminando su área de colisión y adjuntándolo a la escena usando el comportamiento estándar de "Cursor de mouse personalizado":

Sistema de eventos en Stencyl

Se pueden crear juegos simples en Stencyl usando solo comportamientos estándar (Behaviors), sin embargo, si necesitamos algo no estándar, entonces tendremos que pensar en usar eventos que estén configurados para actores y escenas en la sección "Eventos":

De hecho, los comportamientos también se construyen en base a eventos, pero también tienen una interfaz visual, lo que simplifica la edición. Aquí estamos tratando directamente con bloques funcionales que realizan determinadas acciones.

La ventana del evento se divide en tres secciones:

  1. La sección izquierda contiene una lista de eventos y botones para administrarlos (crearlos, eliminarlos o moverlos). Para agregar un evento, debemos hacer clic en el botón “Agregar evento”, luego seleccionar el grupo deseado en la lista desplegable e indicar la función específica que necesitamos. A la derecha del evento creado hay un checkbox que nos permite desactivarlo si es necesario.
  2. En el apartado derecho tenemos una lista de todas las acciones disponibles, agrupadas en 10 apartados, cada uno de los cuales se activa mediante el botón correspondiente. Para mayor comodidad, las acciones de cada sección están ordenadas en pestañas temáticas y tienen su propio color único. Hay tres pestañas más en la parte inferior aquí. De forma predeterminada, está activa la pestaña "Paleta", donde se encuentran las listas de acciones. La segunda pestaña, "Atributos", sirve para mostrar variables locales (más sobre ellas a continuación), y la tercera, "Favoritos", sirve para mostrar las acciones que ha elegido.
  3. La sección central es la zona de trabajo. Aquí formamos los ejemplos finales del comportamiento de los personajes utilizando varias combinaciones de bloques de acción y eventos en los que ocurren estas acciones. La combinación se produce simplemente arrastrando bloques al espacio de trabajo y luego editando los parámetros especificados en ellos. Vale la pena considerar que la función consta únicamente de aquellos bloques que se combinan entre sí y se incluyen en el bloque principal del evento. Por lo tanto, para eliminar temporalmente ciertas combinaciones actualmente innecesarias (pero útiles), solo necesitamos moverlas fuera de la estructura general al espacio libre. Si las acciones resultan completamente innecesarias con el tiempo, se pueden eliminar por completo moviéndolas a la papelera, que se encuentra en la parte superior derecha del área de trabajo.

En realidad, ya hemos descrito el algoritmo para crear eventos, pero, lamentablemente, no puedo dar ninguna recomendación universal: para cada juego los eventos serán diferentes y puede haber muchos de ellos... Como ejemplo, puedes mirar en el código fuente del juego sobre Frida, que encontrarás en el archivo con el programa, pero esto es sólo una guía, ya que trabajar en eventos es tu creatividad personal :).

Configuración de física y propiedades.

Ya hemos cubierto muchas cosas, pero no hemos tocado algunos temas adicionales que pueden ser muy importantes al crear juegos; me refiero a configurar todo tipo de propiedades de nuestros actores y escenas. Almacenamos estos parámetros en las dos últimas pestañas. Y el primero de ellos es “Física”:

La pestaña de configuración de física se ve diferente para escenas y actores. En la pestaña de configuración de física de la escena solo hay dos parámetros: configurar la gravedad horizontal y vertical. La apariencia de la sección para configurar los parámetros físicos de los actores se presenta en la captura de pantalla anterior y consta de cinco pestañas con varias opciones:

  1. Pestaña General Aquí tenemos tres parámetros: el tipo de actor (estacionario, plataforma (puede moverse según reglas dadas, pero no puede ser movido por otros actores) y en movimiento), la rotación del actor (puede girar o no) y el efecto de la gravedad. .
  2. Pestaña “Pesadez”. En esta pestaña puedes configurar la masa del objeto virtual y su inercia.
  3. La pestaña "Material" le permite establecer características para el actor que simulará el comportamiento de un objeto real hecho de un material en particular. Tenemos la oportunidad de seleccionar uno de los ajustes preestablecidos de la lista desplegable “Materiales preestablecidos” o configurar manualmente las características de fricción y elasticidad de nuestro actor.
  4. La pestaña "Amortiguación" nos brinda la oportunidad de ajustar con mayor precisión los parámetros de la interacción del actor con el entorno al introducir valores como la resistencia lineal (por ejemplo, al aire) y angular (durante la rotación).
  5. La pestaña "Avanzado" nos da acceso a diversas configuraciones adicionales no incluidas en los apartados anteriores. Aquí puedes habilitar un modelo de física simplificado (para optimizar el juego), la detección automática de áreas de colisión, eventos de nueva colisión y la capacidad de aplicar una pausa al actor.

Hemos resuelto la física y ahora veamos las propiedades que se activan presionando el botón "Propiedades":

Como en el caso anterior, las propiedades serán diferentes para escenas y actores. En las propiedades de la escena podemos especificar su nombre (“Nombre”), dimensiones (sección “Tamaño”) y color de fondo (“Color de fondo”).

En las propiedades del actor, además del nombre, puedes establecer una descripción (el campo “Descripción”) del objeto, el grupo al que pertenece el actor (la sección “Elegir grupo”) y una capa de animación para dispositivos móviles. dispositivos (no tienes que cambiar nada aquí, ya que la versión gratuita del programa no te permite exportar juegos a formatos para teléfonos móviles.

Pero estas no son todas las configuraciones que tenemos disponibles en Stencyl. La configuración general del juego está disponible para nosotros haciendo clic en el botón "Configuración" en la barra de herramientas principal:

En la ventana de configuración, a la izquierda hay una lista de grupos de parámetros y a la derecha está el área principal (a veces dividida en varias pestañas) que contiene todo tipo de opciones. Aquí nos interesan las siguientes secciones:

  1. "Ajustes" El primer grupo de configuraciones que te permite personalizar ligeramente nuestro juego. Este grupo contiene tres pestañas. En el primero de ellos (“Principal”) podremos darle al juego un nuevo nombre, una breve descripción, así como una imagen de vista previa y un icono. En la pestaña "Pantalla" puedes configurar el tamaño final del espacio del juego, y en la última ("Avanzado") puedes habilitar la física simplificada y establecer parámetros anti-aliasing.
  2. "Cargador" En este grupo podemos personalizar parcialmente (teniendo en cuenta algunas limitaciones de la versión gratuita) la apariencia del precargador (cargador), que se mostrará antes de que el juego esté completamente cargado. Ya hay cuatro pestañas aquí. En el primero ("General" - general) puedes especificar un enlace a tu sitio web, habilitar la protección contra copia del juego en otros recursos (separados por comas, enumeramos la lista de sitios permitidos en la segunda línea) y uno de los gestores de arranque. batería. En la pestaña Apariencia podemos configurar el color de la pantalla del gestor de arranque y la imagen de fondo. Usando la pestaña "Estilo de barra", puede especificar las dimensiones de la tira del gestor de arranque, y "Color de barra" le permite configurar sus colores en consecuencia.
  3. "Atributos" ¡Este grupo de configuraciones es uno de los más básicos! Aquí puedes gestionar las variables globales utilizadas en el juego (más información sobre las variables en la siguiente sección).
  4. "Controles" Como su nombre indica, en este grupo podremos reconfigurar y añadir botones del teclado que servirán para realizar determinadas acciones del juego.
  5. "Grupos" Ya hemos discutido el mecanismo de grupos un poco más arriba. Aquí tenemos la oportunidad de ver todos los grupos creados y editarlos.

En realidad, estas son todas las configuraciones que necesitaremos para crear juegos flash en la versión gratuita de Stencyl. Pero como esta sección trata sobre la configuración, sería una pena no mencionar los parámetros del programa en sí. Puedes acceder a ellos activando el elemento “Preferencias” en el menú “Archivo”:

El programa brinda soporte para una interfaz multilingüe, sin embargo, por el momento solo hay localización en inglés, por lo que pasamos directamente a la segunda pestaña: "Espacio de trabajo". El hecho es que la tercera versión de Stencyl introdujo una función para generar automáticamente imágenes adaptativas a partir de sprites descargados.

Y por defecto el sprite se duplica, lo que conlleva un deterioro en la calidad de los gráficos. Para evitar que esto suceda, le recomiendo que desactive el cambio de tamaño de la imagen seleccionando "Estándar (1x)" en el campo "Escala".

También te aconsejo que mires la tercera pestaña: "Editores". Aquí puede asociar acciones de procesamiento de gráficos, sonido y texto con editores externos, más avanzados (que el Stencyl integrado).

Un poco de variables

Hemos analizado casi todos los matices de trabajar en Stencyl, pero no hemos tocado una de las funciones más poderosas: trabajar con variables.

Las variables en cualquier lenguaje de programación permiten operar con diversos eventos, expresándolos a través de ciertos números (variables numéricas), condiciones (variables booleanas), textos (variables de cadena), etc. La característica principal de las variables es la capacidad de reemplazar cualquier valor dentro de un marco predeterminado. Un ejemplo simple de una variable: el monitor de clase. Hoy podría ser Ivanov, mañana Petrov y pasado mañana Sidorov :).

En nuestro caso, la variable "oficial de servicio" puede tomar uno de tres valores, que se sustituirán automáticamente según una condición determinada (por ejemplo, el orden de los nombres en la lista).

En Stencyl, las variables pueden ser locales o globales. Podemos declarar variables locales como parte de algún evento o comportamiento, y solo funcionarán para las acciones especificadas. Puede crear una variable local en el editor de eventos llamando a la sección "Atributos":

Aquí tenemos varias pestañas:

  1. La pestaña "Getters" le permite configurar variables que recibirán un valor de cualquier cálculo o instrucción directa.
  2. La pestaña "Establecedores" le permite establecer cualquier valor para las variables creadas previamente.
  3. La pestaña "Atributos del juego" almacena bloques de variables globales y, si lo deseas, te permite agregar otras nuevas (aunque veremos cómo hacerlo mejor a continuación).
  4. La pestaña "Listas" nos brinda la posibilidad de crear matrices de datos.
  5. La pestaña Funciones se utiliza para organizar las funciones creadas.

El algoritmo para crear una variable local es simple: primero, creamos un nuevo bloque en la pestaña "Getters", y luego buscamos la variable recién creada en la pestaña "Setters" y agregamos un bloque con ella al espacio de trabajo, equiparándola a algún parámetro del juego. Eso es todo: la variable ha sido declarada y recibió un conjunto de valores válidos.

Las variables globales (atributos del juego) en Stencyl se configuran para todo el juego y se pueden invocar en cualquier evento o comportamiento. Como se mencionó anteriormente, puedes crearlos en la sección "Atributos" de la pestaña "Atributos del juego":

Sin embargo, es mucho más conveniente ver y administrar todas las variables creadas usando la sección "Atributos" en la configuración (el botón "Configuración" en la barra de herramientas o "Mostrar atributos del juego" en la pestaña "Atributos del juego" en el editor de eventos) :

Aquí tenemos la lista completa de variables globales y la posibilidad de crear nuevas haciendo clic en el botón "Crear nuevo". Para una nueva variable, podemos establecer inmediatamente el tipo (numérico, texto, booleano o matriz) y el valor inicial sin salir de la ventana, lo cual es muy conveniente en mi opinión.

Usando variables globales, es muy conveniente implementar varios contadores, ya que los datos que contienen se guardan cuando el jugador pasa a nuevos niveles y se almacenan en la memoria mientras el juego está encendido. También recomiendo usar variables globales para rastrear la animación que se está reproduciendo.

Habiendo dado al actor un sprite específico en los eventos, podemos asignar un valor específico a este sprite en una variable a continuación (por ejemplo, un número de secuencia o nombre de animación). Así, al asociar una acción a una variable, podemos llamarla en cualquier momento estableciendo esta variable en el valor deseado.

Publicar, importar y exportar juegos.

Finalmente, nos familiarizamos, aunque brevemente, con los principios básicos para trabajar con Stencyl. Digamos que creamos un juego, lo probamos y todo resultó funcionar. Ahora todo lo que queda por hacer es convertir el juego de un proyecto en un archivo SWF real que pueda publicarse en Internet. Para ello, simplemente debemos abrir el menú “Publicar” y hacer clic en “Flash” en la lista “Web”.

Se iniciará la compilación del archivo del juego, después de lo cual se te preguntará dónde y con qué nombre guardar el archivo flash resultante. Guarda y listo, el juego está listo :).

El proceso inverso será importar el juego. Gracias a la función de importación, puedes abrir proyectos de juegos de otros usuarios, por ejemplo, para ver cómo implementaron tal o cual función;). También puedes importar el juego desde el menú "Archivo". Si la importación se realiza correctamente, el juego aparecerá en la pantalla principal en la lista de proyectos. Sin embargo, vale la pena hacer aquí una pequeña advertencia.

El problema es que el nuevo Stencyl 3.0 sólo tiene compatibilidad parcial con proyectos creados en versiones anteriores, por lo que la funcionalidad del proyecto de juego que importaste puede estar incompleta o, en el peor de los casos, el juego no se iniciará en absoluto, arrojando un error. Tendrás pocas opciones: buscar y corregir errores, o aceptarlo y dejar todo como está :).

Ventajas y desventajas del programa.

  • facilidad para crear juegos prácticamente sin conocimientos de programación;
  • la capacidad de crear juegos de casi cualquier género;
  • una gran colección de comportamientos y recursos de juego ya preparados;
  • la capacidad de intercambiar proyectos de juegos;
  • No existen restricciones al crear juegos flash.
  • intensidad de recursos bastante alta tanto del programa en sí como de los juegos creados;
  • número limitado de objetos en el escenario: cuantos más, más lento se ejecuta el juego (hasta el punto de negarse a comenzar);
  • no hay soporte para fuentes cirílicas (es necesario editar imágenes vectoriales del alfabeto latino reemplazándolas con las letras necesarias);
  • compatibilidad incompleta de la nueva versión del programa con proyectos de juegos creados en versiones anteriores.

Conclusiones

De todos los programas para crear juegos flash que existen hoy en día, Stencyl es el compromiso más razonable entre facilidad de uso y amplitud de capacidades. La buena noticia es que la funcionalidad del diseñador en la edición gratuita es prácticamente ilimitada, lo que permite realizar casi por completo cualquier idea.

Sin embargo, no te olvides de “casi”... El hecho es que Stencyl se ejecuta en una máquina JAVA, que, como sabes, requiere bastantes recursos. Si a esta carga le sumamos la carga que crea el juego, resulta que para un funcionamiento normal necesitamos una computadora moderna y potente.

Este es el primer “casi”. Y la segunda es la limitación implícita en el número de objetos en escena, que ya mencioné de pasada. Incluso si estos objetos son solo mosaicos, pero hay muchos, el juego puede generar un error durante la prueba y no comenzar hasta que reduzcas su número.

En resumen, podemos decir que Stencyl será un motor ideal para crear todo tipo de juegos flash casuales y juegos de disparos con vista lateral. Además, después de practicar la creación de juegos flash, puedes adquirir uno de los tipos de licencias y, cambiando ligeramente la mecánica, migrar tu juego a formatos compatibles con Android e iOS. ¡Y esta es una forma real de ganar dinero publicando un juego en Play Market o App Store!

Finalmente, solo queda desear mucha suerte a todos aquellos que decidan dedicarse seriamente al desarrollo de juegos. Deje que sus algoritmos funcionen la primera vez y deje que el compilador permanezca en silencio cuando inicie sus juegos :).

PD Se concede permiso para copiar y citar libremente este artículo, siempre que se indique un enlace activo abierto a la fuente y se conserve la autoría de Ruslan Tertyshny.

Una de las opciones para utilizar la tecnología Flash es la creación de pequeñas aplicaciones en el lado del cliente. Como ejemplo, el artículo analiza la creación de una calculadora en un sitio web para calcular el seguro de automóvil.

Macromedia () con su Flash capturó con éxito las expectativas del mercado y creó un producto excelente.

Sin embargo, la cuestión no está en un programa, ni siquiera en uno muy bueno. Hoy en día, la vida a menudo requiere que un profesional de la tecnología de la información elija herramientas dependiendo de la tarea en cuestión y, a veces, es necesario dominar un nuevo idioma o un nuevo producto de software en tan solo unos días. Los métodos propuestos a continuación para resolver algunos problemas en el campo de la creación de sitios web no requieren mucho estudio.

Un programador experimentado puede utilizar inmediatamente esta técnica en su desarrollo.

Alguien con menos experiencia en programación necesitará algo de tiempo para dominar los conceptos básicos, después de lo cual podrá aumentar gradualmente la complejidad de sus diseños a medida que adquiera experiencia.

Hay tres enfoques para resolver problemas de programación de red: o la aplicación se ejecuta completamente en la máquina del cliente sin acceder al servidor, o dicha aplicación realiza solo una parte de las operaciones, mientras que el resto se deja en manos del servidor, o casi todo el trabajo se realiza. realizado por programas de servidor.

Es preferible resolver algunos problemas en el lado del servidor y, a veces, simplemente no hay alternativa. Pero los programadores siempre se han esforzado por reducir la carga en el servidor...

Entonces, veremos cómo crear aplicaciones cliente usando Flash. Analicemos cuándo utilizar esta tecnología y cuándo es mejor recurrir a los métodos tradicionales de JavaScript, Java, VBScript.

En primer lugar, hay que tener claro que Flash no fue diseñado para programar aplicaciones de gran tamaño. La versión 4 de ActionScript es bastante torpe desde el punto de vista de cualquier persona con conocimientos de programación. Su objetivo principal es controlar la secuencia de reproducción de la película, descargar recursos del servidor y procesar la interacción entre la película y el usuario. Este lenguaje carece de herramientas para crear y trabajar con matrices y procesar funciones matemáticas; Los medios para trabajar con hilos son muy modestos. En la versión 5, el lenguaje ha cambiado drásticamente y se ha vuelto similar a la mayoría de los otros lenguajes de programación para Internet, pero por ahora veremos un ejemplo realizado en la versión 4 de ActionScript, ya que esta versión es más fácil para programadores novatos y diseñadores web. para entender. Al mismo tiempo, cambiar a la quinta versión después de adquirir algo de experiencia no causará problemas.

Así, el nicho principal en la programación de aplicaciones cliente, en el que la tecnología Flash no tiene competidores, se puede definir como pequeñas aplicaciones con cálculos matemáticos simples y análisis de texto, donde se requiere una interfaz única y el tiempo de desarrollo es limitado. Se trata de varias calculadoras que examinan sistemas, juegos, herramientas para trazar gráficos y dibujos sencillos (aquí no estamos hablando de aplicaciones que no pueden funcionar sin interactuar con el servidor).

El uso de Flash para este tipo de aplicaciones abre muchas posibilidades para el diseñador (limitadas sólo por su imaginación) a la hora de crear una interfaz de usuario. En lugar de combinar varias tecnologías para resolver un problema, puede hacer todo en un solo programa: el editor de películas Flash y depurar inmediatamente el resultado. Es más, según Macromedia, casi el 95% de los internautas ya tienen instalado un reproductor para reproducir películas Flash. Ahora pasemos a un ejemplo específico que puede demostrar el uso de la tecnología Flash para desarrollar una aplicación específica.

Declaración del problema

Como ejemplo, crearemos una calculadora para calcular el seguro del coche. Cuando se estaba desarrollando el sitio web de una compañía de seguros, los clientes, en particular, expresaron el deseo de crear una calculadora para calcular rápidamente el monto del pago del seguro de vehículos de motor, el costo de una póliza de responsabilidad civil y algunos tipos de seguros de propiedad. Consideraremos solo la primera tarea: calcular el seguro del automóvil (el segundo caso es mucho más simple y no tan interesante).

Un análisis de las condiciones del problema mostró que, a pesar de un número significativo de reservas y excepciones, el esquema para calcular el seguro de automóviles está claramente verificado y puede ser algorítmico fácilmente.

Al elegir una herramienta de implementación, se tuvieron en cuenta las siguientes circunstancias.

  • Los cálculos matemáticos eran bastante simples y se reducían a realizar operaciones aritméticas, verificar condiciones, redondear a un número entero, etc.
  • Era deseable alejarse de la interfaz tradicional de formularios de cuestionarios que prevalece en Internet. Era necesario darle al usuario la oportunidad de “jugar” con la interfaz, cambiando los valores del cálculo inicial tantas veces como quisiera y obteniendo el resultado de inmediato. Era aconsejable procesar todos los errores inmediatamente.
  • Era deseable evitar interactuar con el servidor al realizar cálculos.
  • Naturalmente, también influyó el hecho de que el autor de estas líneas ya conocía bastante la tecnología Flash y tenía experiencia programando en ActionScript.

La oportunidad de crear una aplicación completamente independiente con una interfaz única parecía tan tentadora que no hubo necesidad de dudar mucho en elegir una herramienta. Entonces elegimos Flash.

Creando una aplicación

Estructura y algoritmo del programa.

Una vista general del formulario de cálculo para determinar el costo del seguro se muestra en la Fig. 1. Las tarifas varían según el tipo de riesgos asegurados, el grupo condicional del automóvil (por separado para automóviles nacionales e importados) y su vida útil; La compañía de seguros suele tenerlos en una mesa. Estos son los datos básicos necesarios para calcular el pago del seguro.


Arroz. 1. Vista general del formulario de cálculo del seguro de automóvil.

Al realizar el cálculo, el usuario selecciona la marca de su automóvil de la lista, ingresa la vida útil del automóvil (año de fabricación), selecciona los riesgos en cualquier combinación o el paquete completo de riesgos (seguro de casco).



Arroz. 2. Elegir una marca de coche.

La ventana del menú correspondiente se muestra en la Fig. 2. Para simplificar la selección y ocultar la lógica interna del programa, utilizamos un botón diferente para cada marca de coche. Cuando se hace clic en este botón, se ejecuta el siguiente código:

Activado (Liberar) Comenzar Indicar destino ("/") Establecer variable: "AvtoTypeText" = "VAZ 2115" Establecer variable: "CarsGroup" = 1 Finalizar Indicar destino Ir y detener (HideWin) Finalizar Activado

Aquí se configura inmediatamente la variable AvtoTypeText, que luego se usa para enviar a un campo de texto dinámico para mostrar la marca seleccionada. Además, se establece el grupo al que pertenece el coche. Estas declaraciones están incluidas en un bloque Tell Target. El signo "/" indica que las variables están en la capa principal, que contiene todos los demás clips.

Operador Ir y detener (Ocultar ganar) establece el formulario en un estado invisible después de hacer clic en el botón, es decir, al hacer clic en el botón simultáneamente se cierra la ventana. Esto está justificado, ya que la elección de la marca del coche es clara.

Creando elementos de interfaz únicos

Aquí conviene aclarar un poco para aquellos que aún no están familiarizados con la programación flash: una de las principales técnicas de esta tecnología es el uso de estados estables del clip. No daremos definiciones de términos; están en los archivos de ayuda y los libros de texto.

Entonces, para usar estados estables, es necesario crear varios fotogramas clave, según el número de estados. En cada cuadro colocamos elementos que deberían ser visibles en este estado. Si no hay elementos en el marco, esto corresponde al estado invisible del clip. Además, cada fotograma clave requiere una declaración. Detener. La presencia de este operador no permitirá la reproducción del clip, y permanecerá en el fotograma seleccionado el tiempo que sea necesario según la lógica del programa.

En el ejemplo del menú para seleccionar una marca de coche, en el primer cuadro se ve la ventana con todos los botones. El clip se establece en este estado cuando hace clic en el botón de selección de marca de automóvil en la ventana principal. El segundo cuadro tiene una Etiqueta configurada en sus propiedades con el nombre OcultarGanar y no contiene ningún objeto. Realizar transiciones por operador Ir y detener, podremos controlar la visibilidad del menú desde cualquier lugar de nuestra película flash.

De la Fig. 3 puedes ver que este clip contiene dos capas. Los objetos y el código se separan en diferentes capas sólo por conveniencia. Esto no tiene ningún efecto sobre la ejecución del programa.


Arroz. 3. Los objetos y el código se separan en diferentes capas.

Como estamos hablando de estados estables, inmediatamente indicaremos otro objeto en el que se utiliza esta técnica. Este es un botón de opción (elemento CheckBox). Hay muchos de ellos en este programa. Un elemento de este tipo se implementa de forma muy sencilla y, al mismo tiempo, las posibilidades de diseño para dar a estos elementos una apariencia única son ilimitadas, a diferencia de otras tecnologías.

Para crear un interruptor, necesita crear dos objetos Botón. Cada uno de ellos representará uno de los estados estables del interruptor (Fig. 4).


Arroz. 4. Dos estados de botones de interruptor.

Puede haber más de dos de estos estados, tantos como sea necesario. A continuación, se crea un clip simple según el principio descrito anteriormente: dos fotogramas clave con operadores Detener. Colocamos nuestros botones en diferentes marcos y configuramos el código corto dentro de estos botones:

Activado (Liberar) Reproducir Fin Activado

Esto es todo. Cuando hace clic en cualquiera de los botones, se producirá una transición a un cuadro. La apariencia del clip cambiará en consecuencia. En los fotogramas de clip, puede configurar alguna variable que almacene el estado del interruptor, por ejemplo: marcado=1 para el estado seleccionado y marcado=0 para el estado no seleccionado. Esta será una variable local para el clip. Para acceder a él desde otros clips, debe especificar una ruta completa o relativa. Si usa el valor dentro de un clip, solo necesita especificar el nombre.

El principio de estados estables se utiliza para todos los cuadros de diálogo del programa y para elementos de selección como los elementos estándar CheckBox y RadioButton.

Volvamos al algoritmo de nuestro programa. Aquí es donde se utilizan los interruptores que acabamos de ver. La ventana para seleccionar riesgos de seguro contiene cinco de estos interruptores; cada riesgo tiene su propio interruptor (Fig. 5).

Al seleccionar el elemento Auto Casco, todas las demás casillas de verificación se borran. Al seleccionar cuatro riesgos (es decir, todos excepto el seguro de automóvil), se selecciona el elemento del seguro de automóvil y se restablecen todos los demás. En este ejemplo, la actualización se produce después de cerrar la ventana; en otras palabras, toda esta lógica no es visible para el usuario y todo el código para procesar diversas situaciones se recopila en un botón para cerrar la ventana. Fue posible hacer que el cambio de estado fuera visible inmediatamente distribuyendo el código entre los botones de opción. Aquí los botones de opción tienen un comportamiento mixto: tanto CheckBox como RadioButton, y cualquiera de las opciones es posible. La segunda opción se aplica en otro cuadro de diálogo (“Ubicación de almacenamiento del automóvil”). Allí, todos los estados son mutuamente excluyentes y los botones de opción se comportan como RadioButtons.


Arroz. 5. Ventana de selección de riesgos con cinco interruptores.

A continuación se muestra el código completo del botón del panel de selección de riesgos:

Aquí todo es bastante simple y el código es comprensible incluso para los principiantes. Primero, se establece el valor de la variable de cadena /:InsStr, que está asociada con un campo dinámico de prueba que muestra los riesgos seleccionados. Si no se selecciona ningún riesgo, este será el valor de la línea después de cerrar el formulario. Si se realiza la selección, que se determina sumando las banderas de todos los riesgos y verificando la variable klop, a /:InsStr se le asigna una cadena vacía, a la que se agregarán las líneas correspondientes a los riesgos seleccionados. Esto se hace en los bloques If()...End If. Luego se verifica el caso de seleccionar todos los riesgos y se establece la posición correcta de las banderas del interruptor. Cuando se abra nuevamente el cuadro de diálogo, los interruptores estarán en el nuevo estado. Esto lo hace cada conmutador de forma independiente según el valor de su indicador (variables /:CheckUgon, /:CheckDTP, /:CheckBurst, /:CheckCrim).

Luego viene el conocido operador de transición, que cierra la ventana. Y finalmente, algo nuevo: en el bloque de aislamiento Tell Target() se llama al operador Llamar() en la línea de tiempo principal. Esta es una llamada a procedimiento. En Flash tiene varias características relativas a otros lenguajes. En primer lugar, los procedimientos están vinculados a marcos y el código de un procedimiento es el código de un determinado marco. En segundo lugar, el operador llamar no pasa parámetros. La expresión entre paréntesis es la etiqueta del marco con el código del procedimiento. llamar En tercer lugar, el operador

Esta línea en particular borra la ventana de resultados cada vez que se intenta cambiar los datos de origen para el cálculo.

No es necesario mirar otros cuadros de diálogo en detalle. Su código es más simple que el anterior. Enumeremos estas ventanas y hablemos brevemente sobre su contenido.

  1. La ventana "Ubicación de almacenamiento del automóvil" contiene tres interruptores tipo RadioButton y un botón para cerrar la ventana.
  2. La ventana "Antirrobo" contiene tres interruptores tipo CheckBox y un botón para cerrar la ventana.
  3. La ventana "Historial de seguros" (cuántos años ha estado asegurado el cliente anteriormente sin eventos asegurados en ninguna compañía de seguros) contiene un campo de texto y un botón para cerrar la ventana.
  4. La ventana Error muestra un mensaje sobre errores y valores de entrada no válidos. El texto de descripción de la excepción se asigna a un campo de texto dinámico.
  5. Una ventana de mensaje que indica la finalización exitosa del cálculo con instrucciones para imprimir el formulario.

No es necesario introducir algunos parámetros de ventana: estos son el año de fabricación del automóvil, la experiencia de conducción, el valor estimado del automóvil y el período de validez del seguro. Al ingresar a los campos de texto, debe verificar la exactitud de los datos y el cumplimiento del número con el rango especificado, que está determinado por las condiciones iniciales. Por ejemplo: el período de seguro sólo puede ser un número entero, no menor a 1 y no mayor a 12 (meses). Estas comprobaciones se realizan utilizando declaraciones condicionales simples y utilizando la función de redondeo int(). Si el valor está fuera del rango aceptable, se asigna un valor predeterminado. De esta forma evitamos obtener resultados obviamente incorrectos.

Características de implementación

Ahora veamos otro punto importante. ¿Dónde almacenamos los valores arancelarios? El hecho es que la versión 4 de Flash no tiene construcciones para describir matrices. La solución es almacenar datos en variables simples o intentar emular matrices. Las matrices son útiles cuando se utilizan bucles. En este caso, no hay bucles y puedes arreglártelas con variables normales. El método no es muy elegante, pero sí sencillo y fiable. Las variables se inicializan cuando la aplicación se inicia en el primer fotograma de la línea de tiempo principal (en la propia escena). Hay otra forma de describir variables: en un archivo de texto. Los datos se registran de forma sencilla:

Var01="valor01"&var02="valor02"&var03="valor03"

Esto corresponde a la notación habitual "clave=valor". El archivo lo carga el operador. Cargar variables("nombre de archivo.txt", "/targetClip").

Aquí debemos decir algunas palabras sobre la formación de nombres de variables. La formación de nombres del mismo tipo es importante si es necesario utilizar ciertos índices numéricos para acceder a una variable en particular. Como se mencionó, Flash 4.0 no le permite crear matrices, pero esto se puede solucionar. Formaremos nombres de forma dinámica. Digamos que en la línea de accidentes de tráfico nombramos las variables DTP1, DTP2...DTP12. Puedes asignar estas variables de la forma habitual:

Establecer variable "DTP1"=6

y lo mismo para todos los demás. Pero para extraer el valor, sabiendo el número de fila y columna, hay que hacer esto:

Establecer variable "Temp"=eval("DTP"&n)

donde n es el número de columna. Esto es exactamente equivalente a la expresión:

Establecer variable "Temp" = DTP1

Queda poco: pura aritmética. El código se divide en varios marcos de procedimiento, a los que se accede a través del operador llamar. Todos estos fotogramas están en la escena misma. Teniendo el número de grupo y la vida útil, determinamos el número de columna en la tabla de tarifas. A continuación, comprobamos los riesgos observados y resumimos los valores arancelarios.

Comprobamos el cumplimiento de las condiciones de los descuentos, según el lugar de almacenamiento y la presencia de sistemas antirrobo) y seleccionamos el factor de corrección adecuado.

A continuación, se tiene en cuenta el período de equilibrio del seguro y se comprueba si el rango está fuera del rango (en este caso, no más del 30%). Solo queda multiplicar todo y obtener el resultado. Todas las llamadas a los procedimientos call() se concentran en el botón "Calcular".

Si todos los datos necesarios eran correctos, el valor del pago del seguro aparece en la ventana de resultados. Si se cometió un error en alguna parte, aparecerá una ventana de advertencia de excepción. Sin embargo, en algunos casos el resultado aún se obtendrá: por ejemplo, si los datos numéricos se ingresaron incorrectamente y el programa los sustituyó por el valor predeterminado. Después de esto, simplemente ingrese el valor deseado correctamente y presione el botón “Calcular” nuevamente.

Un poco sobre los scripts del servidor.

Si no hay errores, aparece una ventana con un mensaje sobre la finalización exitosa del cálculo y una sugerencia sobre cómo el usuario puede imprimir el formulario en una impresora. A la hora de imprimir se utiliza la opción que proporciona el reproductor de películas Flash o el propio navegador. Imprimir desde el menú contextual con el botón derecho del mouse da mejores resultados al transmitir sombras, lo que se nota especialmente en presencia de rellenos degradados. Con esta impresión, el usuario puede acudir a la oficina de la empresa y solicitar un seguro.

Resultado

Completamos completamente la tarea usando Flash 4.0, sin utilizar ninguna tecnología adicional para la lógica del programa principal. Una aplicación completamente funcional tiene un tamaño aproximado de 40 KB y, una vez descargada, no requiere ninguna comunicación con el servidor. El número de cálculos es ilimitado. El usuario puede cambiar los datos de origen tanto como quiera y obtener resultados de inmediato. La audiencia potencial que puede aprovechar este programa es aproximadamente el 95% de los usuarios de Internet. Y al mismo tiempo, estamos prácticamente libres de conflictos entre versiones de navegadores, sistemas y plataformas. La tecnología Flash es hoy una tecnología de un solo proveedor, lo que simplifica la tarea del desarrollador. La interfaz del formulario es completamente única y, al mismo tiempo, los costes de la parte gráfica son mínimos. Creo que las ventajas son suficientes para seguir utilizando la tecnología Flash de Macromedia para tareas similares en el futuro.

Programación

No asuma que ha aprendido a programar estudiando el capítulo Introducción a ActionScript y el capítulo Elementos ActionScript para crear juegos. Existe una diferencia entre poder escribir código ActionScript y tener experiencia en programación.
La programación es difícil para la mayoría de las personas, pero fácil para mí. Pero soy licenciado en informática y llevo 18 años programando. Sin experiencia similar, no debes esperar resultados rápidos.
A continuación se presentan algunos principios que le ayudarán a aprender a programar. Como cualquier habilidad, la programación requiere tiempo para aprender. Descubrirá que cuanto más programe, más fácil le resultará.

Análisis de tareas


Es importante darse cuenta de que si una tarea parece demasiado grande para manejarla, probablemente lo sea. Divídalo en tareas más pequeñas y encontrará una solución.

Reglas de programación

Mientras aprende a programar, existen algunas reglas a seguir que facilitarán su trabajo. Los programadores de todo el mundo siguen estas reglas y utilizan todos los lenguajes de programación:

Comentarios: deberías adquirir el hábito de agregar comentarios a tu código. Incluso las líneas que parecen claras en este momento pueden volverse confusas si regresa a ellas un mes después;
nombres de variables- utilizar nombres de variables que reflejen su propósito. Complementarán los comentarios y le ayudarán a comprender el código cuando vuelva a consultarlo más tarde;
nombres de funciones: todo lo anterior se aplica a los nombres de funciones.
cuanto más corto mejor Deben describir las acciones que realizan;
incluir funciones reutilizables en su código- Flash no tiene límite en la duración de una función.
Trate de evitar la codificación estricta Sin embargo, si escribe una función de 100 líneas, le resultará difícil editarla más adelante. Es mejor dividir la función en tareas y poner cada tarea en una función separada;
buena organización- Mientras programa, no olvide pensar en cómo puede aplicar tal o cual función a una tarea similar o similar en otra parte de su programa. Digamos que necesitas una función que agregue un punto a la puntuación de un jugador. Intente utilizar un parámetro que le permita agregar no solo uno, sino también cualquier otro número de puntos a su puntuación;

- Codificación rígida significa incluir números específicos en su código. Digamos que su código usa el valor 550 para describir el lado derecho del espacio de trabajo, estará codificado en el programa.
Si decide ampliar el área de trabajo a 600 píxeles, deberá cambiar cada uso del valor 550 en el código. Es mejor establecer una variable llamada screenRightSide en 550 desde el principio y usar esta variable durante todo el programa;
- Sin duda, un buen programador debe poder organizar los distintos elementos de un programa. Por ejemplo, las funciones no deben colocarse en fotogramas diferentes, sino en un fotograma de su vídeo. Además, intenta agrupar funciones según las tareas que realizan.
Si desea utilizar el depurador, le recomendamos leer el manual de Flash MX para obtener más información. El depurador es una herramienta sencilla que le permite mostrar valores variables mientras se reproduce una película Flash. Sin embargo, ella no es capaz de realizar milagros; El programa de depuración sólo puede ayudarle a comprender su propio proyecto.

Pruebas

El siguiente paso en la depuración es que otras personas prueben tus juegos. Las pruebas son un aspecto importante, especialmente si el juego lo desarrollas tú a nivel profesional. Como programador, no podrá evaluar objetivamente el trabajo de su creación y sus deficiencias.
Probablemente aprenderás mucho la primera vez que alguien juegue tu juego. Nunca imaginaste que haría clic en esos elementos. Puede arrastrar elementos fuera del área de trabajo o estorbar donde no deberían estar.
Normalmente, antes de la presentación oficial ante una amplia audiencia, el juego pasa por dos etapas de verificación. En la primera etapa (prueba alfa), tus colegas o amigos prueban el juego. Las pruebas beta las realizan personas ajenas a su empresa o red. Durante ambas fases, deberías recibir notificaciones sobre cualquier problema encontrado y publicar versiones actualizadas del juego a medida que se solucionen.

Desafortunadamente, cuando el código es sintácticamente correcto, el programa produce resultados inesperados. Por ejemplo, dado que Flash no necesita una declaración especial de variables, fácilmente comerá el nombre de un objeto inexistente (fácilmente podría ingresar mal el nombre) y realizará honestamente todas las acciones que se le asignen.

Los defectos del programa incluyen no sólo errores, sino también contenido de juego inadecuado y funciones faltantes. Intenta perfeccionar tu juego tanto como sea posible antes de declararlo terminado.




Arriba