Archivo de la categoría ‘Flash’

Error al enviar un + por flashvars

Publicado por Iván Gajate el 26 de septiembre de 2011 en AS3, Flash | 1 comentario »

Pues eso, que resulta que sin intentas pasarle al flash un “+” por flashvars, no lo entiende y lo sustituye por un espacio en blanco (” “).

Solución: Cambiar el “+” por “%2b”

Visto en http://userflex.wordpress.com/2009/01/29/special-chars-in-flashvars/ por Javi, gracias Javi!! ;)

AS3 – Tirachinas

Publicado por Iván Gajate el 15 de julio de 2011 en AS3, Flash | 2 comentarios »

Viendo este gracioso juego para el iPad hecho en AIR 2.7

me ha dado por jugar un rato y probar a hacer el movimiento del tirachinas, lo dejo aquí por si a alguien le sirve para algo :)

Descargar Tirachinas

VI Meeting ASNativos

Publicado por Iván Gajate el 20 de junio de 2011 en Eventos, Flash | No hay comentarios »

Estimulantes.
Esa es sin duda la palabra que resume las ponencias del viernes de ASNativos :)
Estas fueron las charlas, y en breve se subirán las grabaciones, estoy deseando volver a verlas con detenimiento, que han sido muy densas para pillarlo todo a la primera ;)

AS3 – Singleton

Publicado por Iván Gajate el 6 de junio de 2011 en AS3, Flash, Patrones de diseño | No hay comentarios »

Uno de los patrones de diseño que mas útiles en mi opinión es el Singleton. Si queremos almacenar datos relevantes para nuestro proyecto y que sean accesibles fácilmente desde cualquier sitio es la mejor opción. O para la típica cartela de avisos que solo puede estar abierta una vez y que tiene que llamarse desde muchos sitios.

Para construirlo a mi esta es la forma que mas me gusta:

package {

	public class Modelo {

		private static var _instance:Modelo;

		public function Modelo(singletonenforcer:SingletonEnforcer) {
			if (singletonenforcer == null) {
				throw new Error("Modelo es un Singleton. Para acceder a una instancia hacedlo mediante Modelo.getInstance()");
				return;
			}
		}

		public static function getInstance():Modelo {
			if (!_instance) {
				_instance = new Modelo(new SingletonEnforcer());
			}
			return _instance;
		}

	}
}

class SingletonEnforcer{}

De esta manera podemos acceder así:

Modelo.getInstance().guardarDatos();
Modelo.getInstance().recogerDatos();

AS3 – Cargar Assets Usando un Proxy

Publicado por Iván Gajate el 26 de abril de 2011 en AS3, Flash | 1 comentario »

Cuando tratamos de cargar imágenes o xmls de otros dominios, nos encontramos con el problema de que por seguridad no es posible hacerlo directamente. Si tenemos acceso al otro dominio, podemos usar el “crossdomain.xml”, pero si no, podemos recurrir a un proxy.

Para entenderlo mejor, aquí hay un tutorial muy explicativo.

La forma de saltarse el problema es cargar las cosas con un php intermedio que se encuentra en nuestro servidor (proxy), y que sencillamente nos devuelve lo que le hemos pedido en el formato que corresponde. Así, con este php en nuestro servidor (proxy.php):

<?php

$filename = $_GET['url'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);

switch ($ext) {
    case "jpg":
        header('Content-Type: image/jpeg');
        readfile($filename);
        break;
    case "gif":
        header('Content-Type: image/gif');
        readfile($filename);
        break;
    case "png":
        header('Content-Type: image/png');
        readfile($filename);
        break;
    default:
        header('Content-Type: text/xml');
        readfile($filename);
        break;
    }
?>

En lugar de llamar a:

http://www.otrodominio.com/imagen1.jpg

Lo haremos a:

http://www.midominio.com/proxy.php?url=http://www.otrodominio.com/imagen1.jpg

De esta manera nos saltaremos el problema del sandbox :)

AS3 – Bajar Volumen Global

Publicado por Iván Gajate el 20 de abril de 2011 en AS3, Flash | No hay comentarios »

Con estas líneas podemos cambiar el volumen de nuestra película flash de forma global:

function setearVolumen(value:Number):void {
	var transform:SoundTransform = new SoundTransform();
	transform.volume = value;
	flash.media.SoundMixer.soundTransform = transform;
}

El código es de Esedeerre que está muy liado para ponerla en su blog, pero era muy interesante postearla. Gracias Dani!! :)

AS3 – FullScreen

Publicado por Iván Gajate el 7 de abril de 2011 en AS3, Flash | 2 comentarios »

Poner una web a fullscreen es bastante fácil, pero hay un par de detalles que si no los conocemos nos puede llevar un tiempo descubrirlos.

  • En el HTML hay que poner el parámetro allowFullScreen=”true”
  • El código que pasa a fullScreen tiene que estar obligatoriamente en la función que recibe el evento de ratón. No vale que una función llame a otra función y esta pase a modo fullScreen.

Este es el código para poner nuestro flash a fullscreen:

function mostrarFullScreen(e:MouseEvent):void{
	stage.displayState = StageDisplayState.FULL_SCREEN;
}

Si no indico nada, el swf se redimensiona hasta cubrir la pantalla por completo, pero puedo indicarle la zona sobre la que quiero hacer zoom, así:

stage.fullScreenSourceRect = miVideo.getRect(this);

// O a mano

stage.fullScreenSourceRect = new Rectangle(0, 0, 300, 200);

Además, podemos escuchar cuando se sale del modo full screen.

Ver Ejemplo FullScreen

Descargar Ejemplo

AS3 – Redimensionar Fondo

Publicado por Iván Gajate el 31 de marzo de 2011 en AS3, Flash | 7 comentarios »

Si queremos tener un fondo en nuestra web que se redimensione cuando cambia el tamaño del navegador, podemos recurrir al evento RESIZE.

Lo que es algo mas complicado es si queremos que no se distorsione el clip, y que nunca aparezcan huecos sin cubrir, algo así:

resize

Ver ejemplo:

Descargar Ejemplo. Leer el resto de esta entrada

Renombrar Objetos de la Biblioteca en Flash

Publicado por Iván Gajate el 21 de marzo de 2011 en Flash | No hay comentarios »

Con este componente se puede renombrar facilmente muchos elementos de la biblioteca en Flash a la vez.

Ideal para que no se pisen elementos al copiar y pegar entre documentos de Flash.

http://www.moviemice.com/command/libraryRenamer.php

Via http://www.moviemice.com/index.php

JSFL – Redondear Posiciones de Objetos en Flash

Publicado por Iván Gajate el 21 de marzo de 2011 en Desarrollo Web, Flash | 1 comentario »

Es un comando que sirve para redondear a X e Y absolutas un objeto de nuestro escenario en Flash, ya sea un texto, forma, movieclip…

Ideal para evitar que los textos se blureen si no están en posiciones absolutas.

http://www.sidedev.net/blog/?p=117

Nota: La ruta correcta donde hay que copiar el archivo debe ser (en Mac) algo así:

Macintosh HD > Usuarios > {USUARIO} > Librería > Application Support > Adobe > Flash CS5 > {IDIOMA} > Configuración > Commands

Via Sidedev, gracias Joseba! ;)