Aplicaciones Flash para iPhone!

Nos hemos podido cansar de ver anuncios por todas las partes anunciando Flash en el iPhone, o un futuro conjunto con Apple y Adobe colaborando… o Adobe diciendo que ya tiene portado el player para iPhone… pero sin embargo lo que se ha sacado Adobe de la manga tiene muchas lecturas, y no demasiado “buenas” para el conjunto de los implicados.
Seguir leyendo…

#007 ActionScript [Q] Tips: recibir valores por flashvars en AS3

El de esta semana es corto, pero necesario ya que es un cambio notable frente al método habitual que estaba establecido para AS2 (donde nos creaba automáticamente una variable con ese nombre en la raiz del documento). Cuando a un SWF le pasamos variables inicialmente por flashvars o por parámetros en la URL, podemos acceder a los mismos de la siguiente manera:

var valor:String = root.loaderInfo.parameters.nombreVariable;

donde nombreVariable es el nombre del parámetro que le pasamos al SWF externamente por flashvars, ya sea desde el OBJECT, EMBED, etc. Hay que tener en cuenta que como todo lo que se recibe externamente por estos métodos, son cadenas de texto a menos que les hagamos la correspondiente conversión.

Archivos ponencias de Grant Skinner

Os iba a hablar de una de las ponencias de Grant Skinner que de la que al ver las diapositivas inmediatamente me he dicho, buen recurso para anotar en el blog… pero es que luego vas a la recopiación que este monstruo de flash tiene, y la verdad, ya puestos… ponemos todas.

Así que aqui os dejamos el enlace a directorio de presentaciones que ha ido dando Grant Skinner, y de las que seguro puedes sacar muchas cosas en claro, de la mano de alguien que tiene bastante clarito esto del Action Script.

Pero ya que me tomé las molestias de fijarme en la charla sobre Resource Managment, cabe decir que es una información valiosísima para entender con ejemplos claros y sencillos mucho de lo que hay detrás del sistema de liberación/gestión de memoria en AS3.

A degustarlo, pero no te apresures a ver si te vas a atragantar… que hay comida de sobra.

Upload con FileReference y variables por GET en Mac

Utilizando el  FileReference para subir un fichero al servidor desde un Mac nos puede pasar que en nuestro código as no se dispare algún eventos asociado al FileReference, es decir el onComplete, onProgress, etc. Para este problema encontré en multitud de foros la solución que es tan fácil como que la pagina php o asp devuelva algo, es decir, bastaría en el caso de php escribir echo(“hola caracola”) o si queremos ser un poco más elegantes echo(“transerencia=OK”).

En mi caso después de aplicar esta solución los eventos seguían sin dispararse por lo que seguí buscando por Internet sin encontrar nada que me ayudara. Más tarde empecé a hacer pruebas sobre mi código dando con la solución que os pongo a continuación y espero os ahorre el tiempo que yo invertí pegándome con ello.

Seguir leyendo…

Colisiones y motores de física en Action Script

En la vida de un desarrollador flash lo normal es encontrarse con algún proyecto que implica el manejo de propiedades fisicas, como colisiones, escalados, fuerzas, traslaciones, rotaciones… En muchas ocasiones los efectos son sencillos y no es demasiado complicado crear un sistema realista y funcional, pero otras esto no basta.

Somos programadores y no tenemos por qué tener un grado de conocimiento de matemáticas muy elevado (aunque para bien o para mal nuestro mundo gira totalmente entorno a la geometría y trigonometría), así que nunca viene mal tener un aliado de ese lado, en mi caso tengo la suerte de tener un hermano físico, que muchas veces me ha sacado de un apuro, por un signo incorrecto, una interpretación del problema no adecuada… pero no es plan de abusar de la familia.

Seguir leyendo…

#007 ActionScript [Q] Tips: color aleatorio

Este tip ya lo solté por twitter, pero la verdad que como no quiero que pase otro viernes sin daros vuestra ración (que luego me venís con hambre y esas cosas…) pues creo que no viene mal como ejemplo de ultratip.

Resulta que haciendo un tema para una cabecera en el que necesitaba generar unos colores aleatorios se me cruzó la feliz idea de pensar en meterle un random al mayor de los hexadecimales… porque con un poco de suerte las conversiones implicitas que se hicieran en el proceso, podrían cuadrar. Y efectivamente cuadraron, con lo que no se me ocurre mejor manera de sacar un color random que esta:

var colorAleatorio:Number = Math.random() * 0xFFFFFF;

trace('Color decimal: '+colorAleatorio.toString());
trace('Color hexadecimal: 0x'+colorAleatorio.toString(16));

var circulo:Shape = new Shape();
circulo.graphics.beginFill(colorAleatorio, 80);
circulo.graphics.drawCircle(100, 100, 50);
circulo.graphics.endFill();
addChild(circulo);

Espero que os guste, no sirve para casi nada, pero ahi queda. Además este post tiene doble mérito, es el primero desde mi nuevo Mac Book Pro, con el cual espero poder empezar a dar la lata en breve sobre mis experiencias con Objective-C, Cococha Cocoa y desarrollo para iPhone.

Ejemplos AS3 Adobe Devnet para Flash CS4

De vez en cuando no viene mal un poco de material formativo como éste que os presentamos, que viene de la mano de Adobe, y que en su conjunto es un buen recurso para conocer algunas de las partes de nuestro querido AS3.

Un buen puñado de ejemplos y recursos que tocan temas variados como gestión de coordenadas, API de dibujo, anidamiento de movieclips, trabajo con 3D carga de contenidos multimedia, interactividad, e incluso un par de jueguecillos de ejemplo.

Como complemento os dejamos también este link al trabajo con animación en Flash que también nos viene de la mano de Adobe. Material muy interesante y completo para ampliar conocimientos.

Que los disfrutéis!

#006 ActionScript [Q] Tips: contains()

Este tip es muy directo ya que simplemente comentaré uno de los métodos que obtienen todos las clases que extienden de DisplayObjectContainer, ya sean propias o las consabidas Stage, Sprite, Loader y MovieClip.

En realidad lo interesante de esta función es que no solamente funciona para descendientes directos en la jerarquia de la Display List, sino que busca el resultado en todos los descendientes. Veamos un ejemplo:

Seguir leyendo…

#005 ActionScript [Q] Tips: Singleton en AS3

Para los que trabajábamos con clases en AS2, no era raro emplear un Singleton para alguna de ellas, con le objetivo de tener una clase general para toda la aplicación con la capacidad de acceder a ella desde cualquier punto de manera limpia. Con AS2 podíamos declarar constructores privados y dejar un código tal que así:

Seguir leyendo…

Recursos desarrollo de juegos en flash

Navengado por la web…. cosa que hago muy a menudo y que recomiendo, tanto si es una navegación orientada con un objetivo de búsqueda de información, como dejarse llevar de un link a otro, muchas veces de rebote acabas dando con sitios interesantes que de otra manera quizás google no te hubiera mostrado.

Así dí con éste portal totalmente orientado al desarrollo de juegos en flash, cosa que sabéis que nos encanta y que ya hemos perpetrado en unas cuantas ocasiones (siempre que nos dan oportunidad y nos dejan).

En él podrás encontrar recursos no solo a nivel de código, sino conceptuales y gráficos, como técnicas para diferentes efectos habituales en el desarrollo de juegos, animación de elementos o personajes, etc. Vamos que cubren unos cuantos áreas, y no viven solo de código, que también. Podrás encontrar consejos, inspiración y tutoriales entre otras cosas.

Recursito “pa la saca”, y como creo que no lo mencioné aquí antes, otro totalmente indispensable, rey por excelencia de este tipo de información para flash: GOTOANDPLAY con su arsenal de artículos super currados, de los creadores del buenísimo SmartFoxServer.

Y porque también nos gusta jugar… unos links pa echar unos vicios: