Posts Tagged ‘ ActionScript ’

0
24
Nov

Action Script es un muy buen programa para diseñar

Hoy me encontré este folleto en mi buzón (uno de tantos que meten en plan spam):

Action Script Design , folleto informativo

WTF adicional porque no dan clases en Castellano pero sí en chino. :roll:

46
22
Jul

El botón ON/OFF de música más sencillo para flashica

Música en flash
He estado trabajando un poco con flash estos últimos días, y entre otras cosas, he encontrado una forma realmente sencilla de hacer un botón on de apagar y encender la música para un sitio flash (Usando ActionScript 2.0).

Lo haremos en unos sencillos pasos:

Paso uno: Estando situados en el Escenario principal, lo que haremos será importar el sonido. Eso se puede hacer arrastrando el archivo de sonido directamente a la biblioteca de flash. Para el ejemplo, he usado este loop.

Nota: Una vez tenemos el sonido importado, en sus propiedades, si deseamos, podemos variar su calidad para hacer que pese menos en la película final.

Paso dos: Cuando tengamos esto, creamos un nuevo MC vacío (Ctrl+F8). Este MC, por decir un nombre, lo llamaremos “sonido“:

Este MC, tendrá únicamente 2 fotogramas. Para crearlos, usaremos fotogramas clave (F6). Debe quedarnos de esta forma:

Paso tres: Una vez esto, añadiremos al primer fotograma la instancia de “off”, y en el segundo fotograma, le ponemos de instancia “on” (Ver imagen inferior). Imagino que ya puedes imaginarte para que son los 2 fotogramas. Uno representará el estado de “apagado” y el otro de “encendido” de la música.

Paso cuatro: Hacemos dos dibujos que representen estos estados en cada respectivo fotograma:

Fotograma 1:



Fotograma 2:

Nota: Si deseas que el icono representativo del estado sea una animación, inserta un MC con las animaciones que quieras (barras subiendo y bajando, o un espectro de sonido ficticio, etc.) en vez de un dibujo estático. Para el caso usaré un dibujo estático para hacerlo más simple.

Nota 2: De todas formas ten en cuenta que el dibujo mismo actuará como zona activa del botón, por lo que si lo haces invisible, luego no se podrá hacer clic y el inventó se joderá

Ahora es cuando empieza la magia.

Paso cinco: Seleccionamos el fotograma que corresponde a la música encendida (el 2 en nuestro caso), y en el panel propiedades le añadimos el sonido solamente a ese fotograma:

Y le asignamos que haga un loop continuado (esto es a vuestra discreción, según cuantas veces queréis que se reproduzca el sonido):

Paso seis: Perfecto, lo que queda ahora es solo el código, el cual es realmente sencillo. Tanto como esto:

  1. En los ambos fotogramas de nuestro MC ponemos un: stop();
  2. Adicionalmente, en el fotograma que corresponde al estado “detenido” (es decir, el 1), lo pondremos un stopAllSounds();

De forma que al final tenemos:
Fotograma 1:
[as]//Fotograma 1
stop();
stopAllSounds();
[/as]
Fotograma 2:
[as]//Fotograma 2
stop();[/as]

Como pueden observar lo que hemos hecho hasta el momento no tiene misterio.

Paso siete: Ahora pongamos la parte de código principal, la que controla el MovieClip desde la escena principal. Nos ubicamos en el directorio raíz de la película (alias root), instanciamos a nuestro MC como “control“:

instancia

A continuación, en el fotograma en el que aparece nuestro control de sonido, le ponemos este código.

[as]var estado:Boolean = false
control.onPress = function() {
if(estado) {
control.gotoAndStop(“off”);
estado=false;
} else {
control.gotoAndStop(“on”);
estado=true;
}
}[/as]

Stage
Este código va en el fotograma donde estará el MC.

Aquí varios ejemplos:

  1. http://blog.bleend.net/wp-content/uploads/2008/07/sample_1.swf
  2.  

  3. http://blog.bleend.net/wp-content/uploads/2008/07/sample_2.swf

Flash Descargar Archivo fuente original

2
14
Feb

Función para crear grupos en los torneos de "Todos contra todos"

Ahí llego de la universidad y me conecto al Gtalk. En esas que sale One pidiéndome esto:

One: Bleend
estás?

Bleend: No, fui a suicidarme, regreso en 10 minutos
One: ok

Bleend: XD
One: xD

si te aburres muuuuuuuuuuuuuuuuucho
pero muuuuuuuuuuuuuucho muuuuuuuuuuuuucho

Bleend: no creo que sea el caso..

One: necesito hacer el algoritmo que genere esto
http://es.wikipedia.org/wiki/Sistema_de_todos-contra-todos#Algoritmos_de_selecci.C3.B3n

Bleend: en C++¿

One: http://www.cristalab.com/foros/t52450.html
en lo que sea, actionscript me vale

Así que me puse manos a la obra. Programar en POO me costará mucho, pero en hacer secuencias , de eso si se bastante :P

Este fue el resultado, lo pongo porque no está en la wikipedia, pero como el código no contempla el caso de los impares no quiero ponerlo, ya que no es 100% funcional; pero tampoco quiero que caiga en saco roto.

Espero a alguien le resulte útil. (Si mas no, ya no habrá que pensar tanto para los torneos de SC :mrgreen: , recuerdo que fael, tuvo que hacer él los grupos, ya que yo no lo pillaba como funcionaba :P )

[as]var N:Number = 14;//ATENCIÓN!! “N” DEBE SER PAR! (2,4,8,12,20,…)
var g1:Array = new Array();
var g2:Array = new Array();
//crea los grupos
for (var i = 0; i<((N-1)/2); i++) {
g1.push([i]);
g1[i] = i;
//
g2.push([i]);
g2[i] = N-i-1;
}

for (var j = 0; j

//anuncia los grupos
trace("Round "+j);
trace(g1);
trace(g2);

//hace girar los grupo para el siguiente round
var temp1 = g2[0];
var temp2 = g1[(N/2)-1];
for (var k = 0; k if (k == (N/2)-1) {
g1[1] = temp1;
g2[(N/2)-1] = temp2;
} else {
g1[(N/2)-1-k] = g1[(N/2)-1-k-1];
g2[k] = g2[k+1];
}
}

}[/as]

Por cierto, la charla la he recortado en la parte interesante, no es que trabaje parta One y le haga los códigos :roll: Era solo un favor… ¬¬

4
2
Jan

Como leer el contenido de Combo Box en Flash

Para empezar, en el escenario ubicaremos un combo box, en el cual, usando el inspector de componentes, añadiremos el contenido según la imagen
Teniendo el combo box en el escenario le ponemos como nombre de instancia “box“.

Ahora abre el Inspector de componentes y selecciona el combo box:
Componen inspector and combo box de flash
Como puedes ver, en mi caso tengo 4 elementos en el combo:

[Hélice,Hipocicloide,Hepicicloide,F.Lissajous]

Los puedes ver donde pone “labels”, y aparecen en forma de matriz (array).

Si te fijas, verás que hay otro campo muy parecido llamado “data”, donde aparece otro array:

[f1,f2,f3,f4]

Ok, estos valores los puse yo, igual que los anteriores. Es decir, igual que pone eso, podría poner:

[qwe,asd,zxc,jkl]

Pero no lo pongo, pues este array será el que identifica la posición actual del combo box, así que usamos nombres sencillos para evitar errores
Combo box values
Una vez visto esto, vayamos a lo que interesa: El código para acceder al valor actual del combo box.

Para acceder al array de data: (campos mas sencillos)
[as]box.getSelectedItem().data[/as]
Para acceder al array de labels: (nombre que le pusiste a cada campo)
[as]box.getSelectedItem().label[/as]Estos códigos tiene un valor concreto, que varía según el elemento en el que esté actualmente el combo:

COMBO BOX
box.getSelectedItem().data
box.getSelectedItem().label
Hélice
f1
Hélice
Hipocicloide
f2
Hipocicloide
Hepicicloide
f3
Hepicicloide
F.Lissajous
f4
F.Lissajous

Lo que hagas a partir de aquí ya depende de ti y para que lo quieras.

Por ejemplo, puedes crear una función parecida a esta, si lo que quieres es que cada vez que se cambia el valor en el combo box, automáticamente reaccione y haga algo:
[as]function change(evt){
trace(evt.target.selectedItem.data);
//ha cambiado el valor actual del combo
//hace un trace del valor en el que se ha posicionado
//aquí es donde van tus acciones (puedes eliminar el trace)
}
box.addEventListener(“change”, this);
/crea el listener de la función[/as]

Por otra parte, si quieres que aunque haya cambiado, no haga nada hasta que pulses un botón de nombre de instancia “go“, puedes usar un código como éste:
[as]go.onPress = function() {
acciones();
};
function acciones() {
switch (box.getSelectedItem().data) {
case “f1″ :
trace(“Has pulsado “);
break;
case “f2″ :
trace(“Has pulsado “);
break;
case “f3″ :
//asdf
break;
case “f4″ :
//asdf
break;
}
}[/as]

Espero les haya ayudado ;)