Archivo de la categoría ‘AS3’

AS3 – Tipo de clase de un objeto

Publicado por Iván Gajate el 24 de noviembre de 2012 en AS3, Flash | 1 comentario »

A veces necesitamos saber que clase de objeto tenemos en el escenario, por ejemplo para recorrerlos todos y si son de tipo TextField hacer algo.

Para eso podemos acceder a través de esta función:

 

function getClass(obj:Object):Class {
	return Class(getDefinitionByName(getQualifiedClassName(obj)));
}
import es.yporqueno.utils.ObjectUtils;
 
var miObjeto:MovieClip = new MovieClip();
 
trace(es.yporqueno.utils.ObjectUtils.getClass(miObjeto));    // [class MovieClip]

Este tipo de funciones las voy a ir recopilando en una clase ObjectUtils.

Descargar ObjectUtils.as

Descargar todo el paquete es.yporqueno

AS3 – Cuerda Colgante

Publicado por Iván Gajate el 23 de febrero de 2012 en AS3, Flash, Lab | 15 comentarios »

jejeje, el experimento del post anterior de arrastrar un movieclip, está dando mucho juego 😉

En este caso la cuerda se comporta como si tuviese peso, por debajo de una distancia se queda colgando, y por encima se tensa y tira del objeto del otro extremo 😉

(Archivo Flash, para verlo necesitas Adobe Flash Player.)

 

Descargar ejemplo cuerda colgante

AS3 – Cuerda Muelle

Publicado por Iván Gajate el 23 de febrero de 2012 en AS3, Flash, Lab | 17 comentarios »

Siguiente con el post anterior de arrastrar un movieclip, podemos jugar un poco con los parámetros y hacer que por debajo de una distancia mínima se encoja la cuerda, dando la sensación de ser una goma con un tope de elasticidad 🙂

(Archivo Flash, para verlo necesitas Adobe Flash Player.)

 

Descargar ejemplo arrastrar puntos

AS3 – Cuerda

Publicado por Iván Gajate el 23 de febrero de 2012 en AS3, Flash, Lab | 14 comentarios »

Basándonos en el post anterior de arrastrar un movieclip, podemos concatenar varios clips vacíos a una distancia muy corta, y el resultado es una cuerda! 🙂

(Archivo Flash, para verlo necesitas Adobe Flash Player.)

 

Descargar ejemplo arrastrar puntos

AS3 – Seguir un punto

Publicado por Iván Gajate el 23 de febrero de 2012 en AS3, Flash, Lab | Los comentarios están cerrados.

Vamos a arrastrar un clip de película como si estuviese enganchado con un alambre rígido, de tal manera que puede girar pero no doblarse.
Arrastrar el de la izquierda:

(Archivo Flash, para verlo necesitas Adobe Flash Player.)

Leer el resto de esta entrada

Instalar Flex SDK 4.6.0 en Flash Builder

Publicado por Iván Gajate el 10 de febrero de 2012 en AS3, Flash | 13 comentarios »

Ya está disponible la versión 4.6 del SDK de Flex para poder compilar para player 11 y así poder jugar con las novedades del Stage3D 😉

Para ello, descargamos el zip de la página de Adobe, seleccionamos el archivo completo, Adobe Flex SDK:

sdk-download

Leer el resto de esta entrada

XMLList Referencia al XML Original

Publicado por Iván Gajate el 9 de febrero de 2012 en AS3, Flash | 1 comentario »

Cuando hacemos una consulta en un XML nos devuelve un XMLList con los resultados.
Sin embargo, ese listado no está desvinculado del xml original, sino que son referencias al mismo, es decir, que si modificamos los elementos de ese XMLList y luego trazamos el XML del que ha salido, veremos el resultado de dicha modificación.

// XML inicial
var miXml:XML = <escena>
			<obj>Algo</obj>
			<obj>Algo</obj>
			<obj>Algo</obj>
			<contenedor>
				<obj>Algo</obj>
				<obj>Algo</obj>
			</contenedor>
		</escena>


// Listado de los nodos "obj" incluidos los anidados
var objetos:XMLList = miXml..obj;

// Recorro el listado sustituyendo su valor por otro.
// Modifico el XMLList, pero son referencias al XML de origen.
for each(var obj:XML in objetos){
	obj.replace(0, "Otra cosa");
}

// Trazo el XML original. Se han modificado los valores.
trace(miXml);

/*
<escena>
  <obj>Otra cosa</obj>
  <obj>Otra cosa</obj>
  <obj>Otra cosa</obj>
  <contenedor>
    <obj>Otra cosa</obj>
    <obj>Otra cosa</obj>
  </contenedor>
</escena>

*/

AS3 – Encriptar en MD5 con as3crypto

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

Si no queremos utilizar la biblioteca AS3corelib para encriptar una cadena, podemos utilizar esta otra biblioteca, AS3Crypto.

(Archivo Flash, para verlo necesitas Adobe Flash Player.)

 

var hash:IHash = Crypto.getHash("md5");
var data:ByteArray = Hex.toArray(Hex.fromString(cadena_txt.text));
var currentResult:ByteArray = hash.hash(data);
var txt:String = Hex.fromArray(currentResult);
encriptada_txt.text = txt;

He incluido una serie de clases para que resulta mas cómodo hacer una encriptación 😉

import es.yporqueno.crypto.*;

MD5.hash("algo que queramos encriptar");
// Devuelve 552e34e08e642682484d82b6321e4809

Descargar ejemplo Encriptación MD5.

 

 

AS3 – Encriptar en MD5 con as3corelib

Publicado por Iván Gajate el 26 de diciembre de 2011 en AS3, Flash | 14 comentarios »

Si queremos encriptar un email, un DNI o cualquier dato sensible podemos hacerlo con as3corelib, una biblioteca de Adobe, y es realmente sencilla de usar.

Tan sencillo como esto:

MD5.hash("algo que queramos encriptar");
// Devuelve 552e34e08e642682484d82b6321e4809

MD5 es una encriptación unidireccional, es decir, que no se puede desencriptar con una clave. Nos sirve por ejemplo para guardar contraseñas en una bbdd, pues aunque se nos cuelen en el servidor, no verían las contraseñas reales. Para validar un login, solo habría que encriptar lo que el usuario escribe y compararlo con lo que tenemos guardado en la bbdd.

(Archivo Flash, para verlo necesitas Adobe Flash Player.)

 

Descargar ejemplo Encriptación MD5.

He incluido un par de clases del paquete mx que son necesarias si queremos encriptar con otros métodos como SHA1, SHA256…
Estas clases no son necesarias si programamos en Flex (mxml).

 

 

El Bucle

Publicado por Iván Gajate el 21 de diciembre de 2011 en AS3, Flash, Lab | 12 comentarios »

Sin duda este es el fragmento de código que mas veces he escrito en los 10 años que llevo ya en esto, y quería rendir un pequeño homenaje a este compañero que tanto me ha hecho disfrutar, con su sencillez y flexibilidad.

Felices fiestas a todos.

(Archivo Flash, para verlo necesitas Adobe Flash Player.)

 

// Creo tantos copos como quiera y asigno sus propiedades iniciales
for(var i:uint=0 ; i<50 ; i++){
	var copo:Copo = new Copo();
	copo.x = Math.random()*stage.stageWidth;
	copo.y = 100 + Math.random()*200;
	copo.scaleX = copo.scaleY = copo.alpha = 0.3 + Math.random()*0.7;
	copo.rotationY = Math.random()*360;
	copo.addEventListener(Event.ENTER_FRAME, rotar);
	addChild(copo);
}

// Cada copo se rota a si mismo
function rotar(e:Event):void{
	e.target.rotationY += 3;
}

 

Descargar ejemplo Bucle.