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


19 comentarios:

Anónimo dijo...

Esta Genial... erea lo que estaba Buscando.. Gracias y esta muy bueno el tutorial...

jose dijo...

Excelente!!! muchas gracias!!
tengo el manual Essentials Actionscript 3.0 (en ingles) para el que lo necesite que solo me pida a josetuzin@gmail.com

desde Panamá... dijo...

Uno de los mejores tutoriales que he visto... te explicas muy bien... gracias por la introducción a AS3

Anónimo dijo...

bbbbbuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

Anónimo dijo...

Muy bueno!!!!

Anónimo dijo...

creo que eata pagina es un desperdicio ya que no muestra lo que quieras y nadie da un comentario racional

Anónimo dijo...

Considero que para los que estamos aprendiendo es un buen tutorial. Desperdicio en todo caso es escribir por algo a lo q uno considera un desperdicio!. Gracias por tu aporte sobre AS3.

osnola33 dijo...

Espectacular, el ejemplo para entender básicamente el funcionamiento de la programación orientada a objetos (POO)

Aprovecho para ampliar este pin-pong que sería de máxima audiencia si el creador de este blog, Angel Serrano, ampliara en una Tercera Fase (III) la interactividad o mejor dicho la automatización a través de Inteligencia Artificial (IA) del PONG, es decir poder jugar contra la máquina en este caso el PC de esta forma crearíamos Algoritmos en los que el PONG nos contestaría a la vez que le responderíamos, repito sería una práctica verdaderamente espectacular si nuestro amigo Angel Serrano nos lo explicara a través de conceptos matemáticos.

Un saludo y lo dicho muchísimas gracias por el Blog.

Daniela dijo...

Buenísimo!

Anónimo dijo...

Exelente Smithers ;)

Anónimo dijo...

Muy copado el tuto, no tiene ningún desperdicio!!! Felicitaciones.

Anónimo dijo...

Soberbio es junto lo que no hay

Anónimo dijo...

Fantástico tutorial Ángel, muchísimas gracias por el aporte, me ha ayudado mucho a comprender como funciona esto.

Me parece una falta de respeto tremenda que un individuo califique de desperdicio un tutorial tan completo y bien explicado, al que nuestro amigo le ha dedicado su tiempo de forma desinteresada para que nosotros podamos aprender. Si no has sido capaz de sacar nada de provecho de el, mala suerte, pero no desprecies el trabajo de los demás.

Anónimo dijo...

genial muy bueno gx por tan grandioso tuto

Anónimo dijo...

los sudacas q vais a responder sin saber ni lo q estais escribiendo, por favor, al menos, miraros bien el tema, q puta mania de escribir lo q sale de los webos sin tener ni ieda y encima mal.

P.D: esta genial, es lo q estaba buscando, tngo mañana un examen de flash y lo llevaba fatal, ahora me veo un poco mas valiente xD

Anónimo dijo...

LOS SUDACAS?, callate infeliz!

Anónimo dijo...

Los links no funcionan, y a anónimo que dijo lo de los sudacas, que la masque con salsa barbacoa.

Ángel Serrano dijo...

Estoy mudando la web de servidor, y el tutorial anda caído.

Anónimo dijo...

Muy buen trabajo pero disculpe por las molestias donde puede checar el codigo.

Publicar un comentario en la entrada