Foros del Web » Creando para Internet » Flash y Actionscript »

ayuda con codigos

Estas en el tema de ayuda con codigos en el foro de Flash y Actionscript en Foros del Web. Hola nuevamente. Estoy haciendo en una pelicula un preloading con un código tomado de los tutoriales de kadazuro, que permite mediante la obtención de los ...
  #1 (permalink)  
Antiguo 11/04/2003, 20:03
 
Fecha de Ingreso: noviembre-2002
Ubicación: Montevideo, Uruguay
Mensajes: 108
Antigüedad: 21 años, 5 meses
Puntos: 0
ayuda con codigos

Hola nuevamente.
Estoy haciendo en una pelicula un preloading con un código tomado de los tutoriales de kadazuro, que permite mediante la obtención de los bytes cargados realizar un porcentaje.
El problema es que me interesaría que en determinado porcentaje, por ej.:40%, haga un gotoAndPlay a un clip que tengo en el escenario, sin que deje de funcionar la barra y el texto dinámico de porcentaje.
Hice algunas pruebas pero no logro que ejecute el llamado al clip.
El código original es el siguiente:

onClipEvent (load) {
b_total=Math.round(_root.getBytesTotal()/1024);
}
onClipEvent (enterFrame){
b_loaded=Math.round(_root.getBytesLoaded()/1024);
if(b_loaded >= b_total){
_root.gotoAndPlay("inicio");
}else{
porcentaje=(b_loaded/b_total)*100;
barra._xscale=porcentaje;
output= Math.floor(porcentaje)+"% cargado";
}
}

barra es una instancia con un rectángulo que se estira en función del porcentaje obtenido.
output viene a ser la variable del texto dinámico.

Esta es la última versión de las pruebas que hice:

onClipEvent (load) {
b_total = Math.round(_root.getBytesTotal()/1024);
}
onClipEvent (enterFrame) {
b_loaded = Math.round(_root.getBytesLoaded()/1024);
if (b_loaded>=b_total) {
_root.gotoAndPlay("inicio");
} else {
porcentaje = (b_loaded/b_total)*100;
if (porcentaje>=40) {
_root.dialogo.gotoAndPlay(2);
}
barra._xscale = porcentaje;
output = Math.floor(porcentaje)+"% cargado";
}
}

Donde "dialogo" es el nombre que le asigné al clip que quiero que ejecute.
(Los expertos se deben estar agarrando de la cabeza en estos momentos.)
Es demasiado pedir, pero estaría bueno si se pudiera resolver y fuera de utilidad para otros visitantes.
Desde ya les doy gracias a los que puedan colaborar.
  #2 (permalink)  
Antiguo 12/04/2003, 20:00
 
Fecha de Ingreso: noviembre-2002
Ubicación: Montevideo, Uruguay
Mensajes: 108
Antigüedad: 21 años, 5 meses
Puntos: 0
Hola, escribo nuevamente para contarles que solucioné el problema.
Ahora hago que el clip llamado diálogo se ejecute cuando el porcentaje es >=40 y <43 y funciona bien. También hice que ejecutara el clip entre75 y 78%
Si a alguien le sirve para modificarlo a su gusto a qui va el código:

onClipEvent (load) {
b_total = Math.round(_root.getBytesTotal()/1024);
}
onClipEvent (enterFrame) {
b_loaded = Math.round(_root.getBytesLoaded()/1024);
if (b_loaded>=b_total) {
_root.gotoAndPlay("inicio");
} else {
porcentaje = (b_loaded/b_total)*100;
if ((porcentaje>=40) and (porcentaje<43 )) {
_root.dialogo.gotoAndPlay(2);
}
else {
if ((porcentaje>=75) and (porcentaje<78 )) {
_root.dialogo.gotoAndPlay(2);
}
else {
barra._xscale = porcentaje;
output = Math.floor(porcentaje)+"% cargado";
}
}
}
}
Saludos!
  #3 (permalink)  
Antiguo 13/04/2003, 20:31
 
Fecha de Ingreso: noviembre-2002
Ubicación: Montevideo, Uruguay
Mensajes: 108
Antigüedad: 21 años, 5 meses
Puntos: 0
Gracias Maltos!
Por lo que entendí una vez cumplida la acción el clip quedaría en un fotograma distinto del 1 de manera que no se vuelvería a producir la acción, dejando paso a la barra de porcentaje seguir con su trabajo.
¿Es eso no?
  #4 (permalink)  
Antiguo 13/04/2003, 21:44
 
Fecha de Ingreso: noviembre-2002
Ubicación: Montevideo, Uruguay
Mensajes: 108
Antigüedad: 21 años, 5 meses
Puntos: 0
Hola de nuevo.

Probé el código y me funciona bien cuando la condición sea porcentaje >=40%.
El clip queda detenido en el fotograma 20 y la barra sigue su curso.
Hasta ahí todo bien.
La idea es que al llegar al 75% le de un play al clip y siga corriendo del 20 en adelante.
El tema es que en vez de esto vuelve a ejecutarme el clip desde el comienzo haciendo un loop contínuo debido a que empieza a actuar la función que estaba reservada para >=40%.
Yo estoy seguro que esto es debido a un error mío en como estoy llamando al clip (me refiero al _root.dialogo.go.........)

El código aportado por Maltos y "enchastrado" por mí es el siguiente:

if(porcentaje>=40 && _root.dialogo._currentframe==1){
_root.dialogo.gotoAndPlay(_currentframe+1)
}
else {
if(porcentaje>=75 && _root.dialogo._currentframe==20){
_root.dialogo.gotoAndPlay(_currentframe+1)
}

Si tu Maltos o alguien pudiera decirme en qué la estoy errando, quedaría muy agradecido.
Saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:56.