En AS2 una cosa que es bastante sencilla de hacer y que sin embargo me ha costado un rato encontrar el como, es sumarle a una fecha un día. Para ello utilizamos la función Date, y se haría de la siguiente manera:
Actionscript:
-
var today_date:Date = new Date();
-
today_date.setDate(today_date.getDate() + 1);
Como se puede comprobar es muy sencillo, pero buscando por Internet la verdad es que no encontré ninguna página o foro en el que lo pusieran, normalmente me encontré con funciones enormes en las que comprobaban el mes, el numero de día,…
Después de un largo tiempo sin actualizar, principalmente debido a las vacaciones, hoy escribo de nuevo para dejar un pequeño código en AS2 que puede ser muy útil para hacer por pases de imágenes.
Simplemente tenemos que crear dos anclas, en este caso les pondré de nombre de instancia “ancla_foto” y “ancla_fotoB”. Inicializo la variable “_root.enQueAncla” en la que le meto el nombre de instancia del ancla en la que quiero que empiece grabándome la primera imagen.
Y a continuación creo la función. Lo que hace es simplemente cargar la imagen en la capa que está especificada en la variable. Me pasa el ancla a la capa superior y cambia en la variable el ancla en la que pegare la siguiente.
Actionscript:
-
_root.enQueAncla = "ancla_foto";
-
-
function cambioFoto(imagen){
-
-
this[_root.enQueAncla].loadMovie (imagen);
-
this[_root.enQueAncla].swapDepths(this.getNextHighestDepth());
-
-
if (_root.enQueAncla == "ancla_foto"){
-
_root.enQueAncla = "ancla_fotoB";
-
} else {
-
_root.enQueAncla = "ancla_foto";
-
}
-
}
Ahora solo tendré que llamar a esa función especificándole la ruta de la imagen que quiero cargar.
Actionscript:
-
cambioFoto("common/foto.jpg");
Ahora si quiero simplemente tengo que añadirle algun tween para hacer la transición entre una fotografía y otra. Para ello recomiendo "tweenlite".
Hace unos días puse un artículo en el que explicaba una forma muy sencilla de hacer un loop en AS2 en el FLVPlayback. Hoy traigo lo mismo pero para AS3, es algo mas complejo, pero no deja de ser bastante sencillo.
Actionscript:
-
import fl.video.VideoEvent;
-
-
my_FLVPlayback.autoRewind=true;
-
-
function again(event:VideoEvent):void {
-
my_FLVPlayback.play();
-
}
-
my_FLVPlayback.addEventListener(VideoEvent.COMPLETE, again);
Espero que os sea de utilidad. Un saludo
Una de las cosas que me parece que le falta al FLVPlayback es la de hacer loop, para solucionar esto simplemente tenemos que poner el siguiente código en el propio objeto:
Actionscript:
-
on (complete) {this.play();}
Es un código muy simple que espero os sea de utilidad.
Una manera rapida y sencilla de comprobar si lo que realmente estan introduciendo en un formulario es un e-mail, es usando una expresión regular. Por ello os dejo esta que me he encontrado por los foros.
Espero que os sea de ayuda.
Actionscript:
-
var emailEx:RegExp = /^[a-z][\w.-]+@\w[\w.-]+\.[\w.-]*[a-z][a-z]$/i;
-
-
if (emailEx.test(email.text)){
-
trace ("Esta bien");
-
}
Pues eso que como se haría ahora con ActionScript 3 el antiguo swapDepths:
Actionscript:
-
parent.setChildIndex(this, parent.numChildren-1);
Espero que os sirva de ayuda.
Con el cambio de as2 (actionscript 2) a as3 son muchos los comandos que han cambiado. Uno de los comandos que eran bastante simples y que ahora ha cambiado es el autoSize en los campos de texto. Antes simplemente con poner:
Actionscript:
-
campodetexto. autoSize = true;
Ya nos funcionaba perfectamente, pero ahora lo correcto sería:
Actionscript:
-
campodetexto. autoSize = TextFieldAutoSize.LEFT;
La verdad es que nos lo complican cada vez más, pero bueno todo será acostumbrarse.
Hace pocos días que empecé a iniciarme en esto de Papervision, y uno de los programas que he empezado a utilizar es el FlashDeveloper. La verdad es que el programa es muy bueno y permite trabajar muy bien con actionscript 3 y papervision, pero una carencia que le encontraba era que no te permite hacer traces como en Flash. Hoy buscando un poco he encontrado este comando que es igual al trace de Flash.
Primeramente deberemos importarlo con lo siguiente:
Actionscript:
-
import org.flashdevelop.utils.FlashConnect;
Y a continuación para hacer un trace deberemos escribir:
Actionscript:
-
FlashConnect.trace("Esto es un trace!!!");
Espero que si alguien lee esto le sea de utilidad.