Tutorial ActionScript 3 - Juego Pong - Principiantes

ActionScript 3.0 - Guía para principiantes


Objetivo

Click en la ventana Flash para jugar. Controles: w, s, flecha arriba, flecha abajo.



¿De qué va la Guía?

Bienvenidos al primer curso de esta Metafísica Informática: ActionScript 3.0 - Guía para principiantes.


ActionScript 3.0 es un poderosísimo lenguaje de script integrado en Flash y que permite realizar todo tipo de virguerías, desde películas de animación hasta juegos realmente complejos.


¿Cuál es el objetivo?

El enfoque de la guía será doble:


  • Teórico: Aprender y entender los pormenores de ActionScript 3.0 y los conceptos básicos (y no tan básicos) de la Programación Orientadas a Objetos.

  • Práctico: Aplicar la teoría en un proyecto práctico: El desarrollo desde cero del clásico juego Pong. Un juego, en esencia, bastante simple (en su desarrollo y juego), pero al que iremos añadiendo difrentes items y funcionalidades para darle mayor gracia.


¿Qué necesito saber para seguirla?

No vendría mal algo de experiencia con la parte gráfica de Flash: trabajo con capas, formas, colores, dregadados... Aunque si no es el caso, no importa demasiado. Cuándo utilicemos Flash para desarrollar la parte visual de nuestro Pong, se procurará explicar detalladamente todos los pasos.


Respecto a conocimientos de programación, lo básico: Qué es una variable, un bucle, una condición...


No es necesario ningún conocimiento sobre Programación Orientada a Objetos.


Últimas indicaciones

No necesitas haber trabajado con la versión antigua de ActionScript, ActionScript 2. Aunque comparten puntos comunes, ActionScript 2 y ActionScript 3 son lenguajes que trabajan de manera distinta.


La guía se va a realizar sobre Flash CS4, aunque en principio puede seguirse con cualquier otra versión de Flash que admita ActionScript 3.


Algo importante que quiero recalcar es que esta guía está escrita de aprendiz a aprendiz. Mi trabajo con ActionScript 3 y Flash es relativamente reciente, y cualquier comentario o corrección será bien recibido.



Puedes comenzar la guía de ActionScript 3, o echar un vistazo al índice que viene a continuación.
Índice




  1. Primeros pasos

    1. Lo primero, organización

    2. Introducción. FlashDevelop: organizando nuestros archivos .as. Jerarquía de carpetas

    3. La clase del Documento

    4. ¿Qué es la clase del Documento? Creando la clase del documento. Comentarios en AS3. Conectando nuestro Flash con Main.as.


  2. ActionScript y la Programación Orientada a Objetos.

    1. Concepto de clase. Clases en ActionScript 3

    2. Un mundo lleno de objetos... Concepto de Clase. ¿Qué es un atributo? ¿Qué es un método? ¿Cuál es la diferencia entre Clase y Objeto? Clases en ActionScript 3. Definición de paquetes. Definición de clases. Añadiendo atributos y métodos a nuestra clase Pong. Definición de variables. Visibilidad de atributos y funciones. Definición de atributos. Definición de funciones. El constructor de la clase. Creando un objeto de la clase Pong.

    3. Herencia en ActionScript 3

    4. Diseño gráfico de nuestro pong. Enlazando la clase Pong con su representación gráfica. Añadiendo el pong a la escena. ¿Cuál es la idea básica tras la herencia?


  3. Finalizando nuestro Pong básico

    1. Controlando el pong desde teclado

    2. Colocando los pongs. ¿Cómo accedo a los métodos y atributos de un objeto? Controlando desde el teclado nuestros pongs. ¿Qué es un evento?

    3. Movimiento avanzado

    4. Control de velocidad realista. Acotando los límites del movimiento.

    5. Detección de colisiones

    6. La clase Bola. Detección de colisiones. ¿Cómo detecto colisiones en ActionScript?. Toques finales.


  4. Conclusión y archivos fuente Pong 1.0



FASE II: Pong 1.1 - Pong con escenarios y marcadores



  1. Objetivos

  2. Creando el Escenario

    1. ¿Qué queremos que haga nuestro escenario?

    2. Definición del Escenario. ¿Qué es el encapsulamiento? Control de colisiones: Colisionadores y colisionables. ¿Qué es una interfaz? Definición de interfaces en ActionScript 3.

    3. La Bola y el Pong como IColisionador e IColisionable

    4. Un pequeño problema... IColisionable e IColisionador. Bola como IColisionador. Pong como IColisionable.

    5. El código del Escenario
      La nueva clase Main. El código del Escenario. creaPongs, creaBolas, creaEscenario, bucle. La bola que colisiona...



  3. Bug (I): La Bola loca

  4. Añadiendo los marcadores

    1. Produciendo y detectando los goles

    2. ¡Gol! ¿Qué es un evento? Definición de GolEvent. ¿Qué es un atributo estático (static) o de clase? ¿Para qué sirve la palabra clave "super"? ¿Quién produce el GolEvent? ¿Quién detecta el GolEvent?

    3. Añadiendo los marcadores

    4. Nuestro marcador Flash. Código del marcador. Añadiendo los marcadores al Escenario

    5. Un campo de fútbol

    6. La clase CampoFutbol


  5. Conclusiones y archivos fuente del Pong 1.1