Flash Novatos

ActionScript Basico e Intermedio (Blog Optimizado para Firefox)

lunes, 24 de marzo de 2008

Conformar una tabla de posiciones en flash y guardado de esta

Action Script 2.0


[dien20xx@gmail.com]

Recientemente con la salida del juego Blackhack + 5 días sin revisar
el correo bastaron para llegar a la cifra inimaginable de 151 correos
:P. Al parecer el juego tuvo gran aceptación, e incluso muchos se
brindaron para aportar su granito de arena a los demás niveles. Bueno
hablo de eso mas abajo.

Félix Miguel usuario de BlackHat me dice que como seria posible
almacenar en la PC los records de los jugadores. Para eso cree una
aplicación que cuenta los clicks y luego crea una posición ordenada de
los mismos.

Espero que esto sea lo que pides, te mando también el .fla para que
los desbarates

-----------------------------------------------------

Frame 1

/* se detiene la película en el primer frame*/
stop();

Botón Continuar


/* al liberarse cheque si el texto de entrada esta indefinido o tiene
un valor vacío*/
on (release) {
if (nom == undefined or nom == "") {
ent.play();
} else {
nextFrame();
}
}

Frame 2

/* se le da el valor inicial a ckt y se crea la función de aumento de clic */

ckt = 0;
_root.onMouseUp = function() {
ckt++;
};

Botón Continuar

/* va al siguiente frame */

on (release) {
nextFrame();
}


/* imagen del 3er frame */


Frame 3

/* si se abre por primera vez la película, sha.data.recz va a ser
undefined, por eso, si es así, cargara los valores por defecto del
array rec */

sha = SharedObject.getLocal("records");
if (sha.data.recz == undefined) {
rec = [["ipconfig", 12], ["DarkX", 12332], ["telnet", 112],
["atelier", 6], ["x", 3]];
} else {

/* de ya haber sido guardado el array rec coge el valor de
sha.data.recz , (valor guardado en la PC) */
rec = sha.data.recz;
}

/* se le añade una nueva matriz, con los resultados del usuario */
rec.push([nom, ckt]);

/* se llama la función de guardar el contenido del array rec modificado */
sd();

/* tengo que reconocer que me metí como 30 minutos viendo como hacia
el ordenamiento del array , nunca lo había hecho con matrices anidadas
, si alguien tiene una forma mejor me lo hace llegar */
for (i=0; i<rec.length; i++) {
j = i;
while (j<rec.length) {
if (rec[i][1]<rec[j][1]) {
zero = rec[i][0];
rec[i][0] = rec[j][0];
rec[j][0] = zero;
zero = rec[i][1];
rec[i][1] = rec[j][1];
rec[j][1] = zero;
}
++j;
}
}

/* se crea un bucle para llenar los textos dinámicos con los valores
almacenados, recientemente ordenados */

for (i=0; i<5; i++) {
this["ck"+(i+1)] = rec[i][1];
this["no"+(i+1)] = rec[i][0];
}

/* función de escritura del valor rec a la pc */
function sd() {
sha = SharedObject.getLocal("records");
sha.data.recz = rec;
}

Botón Continuar

/* que vaya al primer fotograma, y todo se repite */
on (release) {
gotoAndStop(1);
}

/* cuando cierres y vuelvas a abrir la película te saldrán los últimos
records, claro que tiene que ser en la misma PC de donde lo abriste,
así todo lo mas tocao es conectarlo a una base de datos php,
próximamente hablare de eso.
Nada si hay alguna duda estaré dispuesto a responder todo lo que esté
entre mis posibilidades */

Conformar una tabla de posiciones en flash y guardado de esta

Action Script 2.0
[dien20xx@gmail.com]

Recientemente con la salida del juego Blackhack + 5 días sin revisar
el correo bastaron para llegar a la cifra inimaginable de 151 correos
:P. Al parecer el juego tuvo gran aceptación, e incluso muchos se
brindaron para aportar su granito de arena a los demás niveles. Bueno
hablo de eso mas abajo.

Félix Miguel usuario de BlackHat me dice que como seria posible
almacenar en la PC los records de los jugadores. Para eso cree una
aplicación que cuenta los clicks y luego crea una posición ordenada de
los mismos.

Espero que esto sea lo que pides, te mando también el .fla para que
los desbarates

-----------------------------------------------------

Frame 1

/* se detiene la película en el primer frame*/
stop();

Botón Continuar


/* al liberarse cheque si el texto de entrada esta indefinido o tiene
un valor vacío*/
on (release) {
if (nom == undefined or nom == "") {
ent.play();
} else {
nextFrame();
}
}

Frame 2

/* se le da el valor inicial a ckt y se crea la función de aumento de clic */

ckt = 0;
_root.onMouseUp = function() {
ckt++;
};

Botón Continuar

/* va al siguiente frame */

on (release) {
nextFrame();
}


/* imagen del 3er frame */


Frame 3

/* si se abre por primera vez la película, sha.data.recz va a ser
undefined, por eso, si es así, cargara los valores por defecto del
array rec */

sha = SharedObject.getLocal("records");
if (sha.data.recz == undefined) {
rec = [["ipconfig", 12], ["DarkX", 12332], ["telnet", 112],
["atelier", 6], ["x", 3]];
} else {

/* de ya haber sido guardado el array rec coge el valor de
sha.data.recz , (valor guardado en la PC) */
rec = sha.data.recz;
}

/* se le añade una nueva matriz, con los resultados del usuario */
rec.push([nom, ckt]);

/* se llama la función de guardar el contenido del array rec modificado */
sd();

/* tengo que reconocer que me metí como 30 minutos viendo como hacia
el ordenamiento del array , nunca lo había hecho con matrices anidadas
, si alguien tiene una forma mejor me lo hace llegar */
for (i=0; i<rec.length; i++) {
j = i;
while (j<rec.length) {
if (rec[i][1]<rec[j][1]) {
zero = rec[i][0];
rec[i][0] = rec[j][0];
rec[j][0] = zero;
zero = rec[i][1];
rec[i][1] = rec[j][1];
rec[j][1] = zero;
}
++j;
}
}

/* se crea un bucle para llenar los textos dinámicos con los valores
almacenados, recientemente ordenados */

for (i=0; i<5; i++) {
this["ck"+(i+1)] = rec[i][1];
this["no"+(i+1)] = rec[i][0];
}

/* función de escritura del valor rec a la pc */
function sd() {
sha = SharedObject.getLocal("records");
sha.data.recz = rec;
}

Botón Continuar

/* que vaya al primer fotograma, y todo se repite */
on (release) {
gotoAndStop(1);
}

/* cuando cierres y vuelvas a abrir la película te saldrán los últimos
records, claro que tiene que ser en la misma PC de donde lo abriste,
así todo lo mas tocao es conectarlo a una base de datos php,
próximamente hablare de eso.
Nada si hay alguna duda estaré dispuesto a responder todo lo que esté
entre mis posibilidades */

sábado, 22 de marzo de 2008

Proximamente videotutoriales de Flash 8 gratis

Hola a todos los que por alguna casualidad han llegado a este blog.

He planificado próximamente crear un curso de videotutoriales de Flash
para novatos. Estos se podrán descargar para verlo en sus ordenadores.

Es un proyecto que tengo el cual espero que resulte.

Nos vemos hasta entonces.


Saludos

sábado, 15 de marzo de 2008

[N] Boton Link Url

[dien20xx@gmail.com]


Para ello ponemos el siguiente código en el botón.




on(release){
getURL("http://www.supagina.com", "_blank");
}


En este caso , cuando liberemos el click del botón , este cargará la pagina en una nueva.
Si quiere que la cargue en la mismo solo hay que quitar “_black”

O sea:


on(release){
getURL("http://www.supagina.com");
}

lunes, 10 de marzo de 2008

Reloj Analogico con Alarma

Action Script 2.0

DarkX [dien20xx@gmail.com]

Para empezar dibujamos 4 agujas para el reloj (hora, minuto, segundo y alarma). A estas las convertimos en Clip y le damos de instancia a1,a2,a3,a4, todo en el mismo orden. Por cierto!!! El punto de referencia del clip no puede estar centrado, cuando creen el clip asegúrense de seleccionar un borde medio, de lo contrario la aguja haría lo mismo que un ventilador. Después de hacer todo eso creen el marco del reloj y centren las manecillas.

También creamos 3 textos dinámicos, uno llamado "time" que tendrá el valor de la hora y otros 2 "alarmh" y "alarmm" estos serán para visualización de la alarma.

Por ultimo 4 botones para el control de la alarma, cual le damos como instancia b1,b2,b3,b4.

Ahh , se me olvidaba,, importen u sonido para la alarma y dentro de la biblioteca vincúlenlo para AS y pónganle "soni".

Siguiendo todos los pasos vamos al Script.

===========================================

/* se declaran las variables de la alarma (cosas del AS2) con valor inicial 0. Creamos un constructor para la clase Sound y sacamos a "soni" de la biblioteca. */

var alarmh = 0;

var alarmm = 0;

soni = new Sound();

soni.attachSound("soni");

/* a continuación la clase Date con el método get* nos devuelve un valor de la hora del sistema*/

onEnterFrame = function () {

tiempo = new Date();

sec = tiempo.getSeconds();

min = tiempo.getMinutes();

hor = tiempo.getHours();

/* el inicio y movimiento de las agujas se ajusta multiplicándolo por el numero de ángulo,,, o sea, siendo un ángulo completo 360 grados se divide por 60 dando así un valor de 6 grados por cambio de minuto y segundo, el de la hora por ser menos se da por 30 */

a1._rotation = sec*6;

a2._rotation = min*6;

a3._rotation = hor*30;

/* para el que no estudio matemáticas esta le va a quemar un par de neuronas */

a4._rotation = alarmh*30+alarmm/2;

/* la hora en números para comparar */

time = hor add ": " add min add ": " add sec;

/* condiciones para que los Tdinámicos no se vayan de lugar */

if (alarmh>24) {

alarmh = 0;

}

if (alarmh<0) {

alarmh = 24;

}

if (alarmm>59) {

alarmm = 0;

}

if (alarmm<0) {

alarmm = 59;

}

/* si la hora y minutos de la alarma coinciden con la hora de la pc , reproduce el sonido y resetea la alarma */

if (hor == alarmh && min == alarmm) {

soni.start(0, 60);

alarmh = 0;

alarmm = 0;

}

};

/* esto lo puse para que no se repita el sonido si se vuelve a poner la alarma */

onMouseUp = function () {

stopAllSounds();

};

/* los botones para ajustar la alarma, estos incrementan y decrementan en "alarmh" y "alarmm" ,,, si quieren pueden poner textos de entrada en vez de dinámicos para menos código */

b1.onRelease = function() {

alarmh++;

};

b2.onRelease = function() {

alarmh--;

};

b3.onRelease = function() {

alarmm++;

};

b4.onRelease = function() {

alarmm--;

};

/* espero que les halla gustado, cualquier duda tiren al correo */

Crear Juego Flash Arcade

1 Introduccion y descripción del problema.
1.1 Introducción.
1.2 A quien va dirigido este tutorial.
1.3 Descripción de nuestro juego.
2 La escena en movimiento.
2.1 El uso de sprites.
2.2 Componer los movimientos y animaciones del protagonista en Flash
2.2 Continuación...
2.2 Continuación...
2.3 Simular el movimiento sobre el fondo.
2.4 Añadir un enemigo a nuestro juego.
2.5 Enemigo en acción.
2.6 Disparo y detección de colisiones.
2.7 Comentarios finales.



Más Información