16 de junio de 2007

ActionScript (o como perder 3 horas en un simple if)

Aviso: El contenido de este post es altamente informático.

Estamos en época de exámenes. ¿Qué significa eso? Significa simplemente que cualquier cosa es más llamativa, atractiva e interesante que estudiar un aburrido temario. Es por ello que ayer me dedique a hacer un pequeño banner en Flash. Y los medianamente entendidos en Flash sabrán que el lenguaje de programación que se usa en Flash para cierto tipo de cosas es el ActionScript. Dicho esto, os propongo un juego:

Dado el siguiente código:

_alpha = 50 + 1;
if ( _alpha == 51 ) {
yo = "
tio guapo";
}
else {
yo = "
tio feo";
}


¿Cual será el resultado?
a) Es obvio que yo seré igual a un tío guapo.
b) Lamentablemente yo seré un tío feo.
c)
Las dos anteriores (creo que a eso es a lo que llaman informática cuántica).
d) Ninguna de las anteriores.

¿Ya? Bien... si te sientes guapo y no crees que los diseñadores de un lenguaje puedan haber hecho algo lo suficientemente raro como para que no seas guapo (opción a)... lo siento, te has equivocado. Si aun siendo guapo, has escogido la opción de que yo será igual a tío feo (opción b)... ¡Enhorabuena, has acertado!

Ahora bien... ¿porque _alpha = 50 + 1 != 51? Todo esto tiene una "sencilla" explicación. La variable _alpha es una variable de Flash cuyo rango interno va de 0 a 128. Y algún inspirado diseñador de ActionScript pensó que si sumamos 1 a esa variable, lo que queremos realmente hacer es avanzar un grado de transparencia. Por tanto, al hacer _alpha = 50 + 1 realmente el valor que toma _alpha es 50.7825 ( 50 + 1*100/128). Y esto conlleva que el if de _alpha == 51 sea falso. Si alguien no lo cree que mire _alpha en el ActionScript Dictionary, o que me pida una minipelícula de prueba.

Por cierto, si alguien escogió la c o la d lo siento, aunque siendo sinceros yo ante una pregunta tan aparentemente absurda me hubiera decantado por la d (por eso del factor trampa).

Por último, el banner que estaba diseñando es para la web de Panoramik (en construcción). Si alguien quiere verlo (no tiene nada llamativo), que pinche aquí. La variable _alpha se usa en las barras verticales aleatorias.

moraleja: si vas a hacer algo en un lenguaje desconocido, estudiante bien la API previamente.Y luego dirán que lo importante es la base, !

4 comentarios:

tresky dijo...

hay que estar muuuy aburrido para postear ese tipo de cosas teniendo UNA PISCINA debajo de tu balcón !!

en fin, la envidia es mu mala

arsuceno dijo...

Es que la piscina de noche y solo.. da pereza. Por cierto menos envidia que sabes que estas invitada!

tresky dijo...

Si si .. pero es que es todo un reto que una chica se bañe contigo ...
porque de pensar que ha adelgazao 2 o 3Kg, sale pensando que tiene michelines, culo gordo, pocas tetas, brazos flacidos ...

besines

arsuceno dijo...

exageraaaaaaaaaaaaa, si luego sabes que me pones xDD! ademas cuando te he dixo yo algo durante un baño eh?! si es que...