Comunidad de diseño web y desarrollo en internet online

Boton Play/Pause con música desde el principio

Citar            
MensajeEscrito el 04 Dic 2008 12:45 pm
Hola, he consultado el tutorial de como crear un botón de Play/Pause un Sonido, y está muy bien.
Pero no permite que suene la música desde el principio, y yo es lo que necesito.
Si alguien sabe como puedo modificar el código para que la música suene desde el principio le estaría muy agradecido.
El codigo que venía en el tutorial es el siguiente:

/* Primero declaramos dos variables, pausa y estado; pausa nos servirá
para almacenar la posición donde esta la canción, y estado para saber en que
estado se encuentra la canción, 1 si el sonido se está reproduciendo y 0 para el
estado en que el sonido esté en pause*/
var pausa:Number = 0;
var estado:Number = 0;
/* Como no le pusimos ninguna acción al Movie Clip, para que no se reprodujera
como loco, lo frenamos al comienzo*/
Boton_btn.stop();
/*Atachamos inmediatamente el sonido linkeado desde la biblioteca a una variable
llamada: "misonido"*/
_root.onLoad = function() {
misonido = new Sound();
misonido.attachSound("Sonido");
};
//En el evento onPress ó cuando presione el botón
Boton_btn.onPress = function() {
if (estado == 0) {
/* se verifica en que estado se encuentra el sonido, si está en 0, ósea el sonido no se esta reproduciendo,
ponemos play al sonido; usamos la variable de pausa que contiene
lo que lleva la canción reproducida hasta el momento en milisegundos, por eso lo dividimos entre 1000;
para que nos de exactamente la posición donde se encuentra*/
misonido.start(pausa/1000);
//Una vez el sonido en play, cambiamos el estado a 1, ósea reproduciéndose
estado = 1;
//y finalmente cambiamos la apariencia del botón
Boton_btn.gotoAndStop("pause");
} else {
/*En caso de que no sea 0, significa que se esta reproduciendo la canción y
queremos detenerla, primero calculamos la posición donde se va a quedar en pause
almacenándolo en la variable pausa*/
pausa = misonido.position;
//detenemos totalmente el sonido
misonido.stop();
//cambiamos el estado a 0, ósea sin sonido
estado = 0;
//y finalmente cambiamos la apariencia del botón
Boton_btn.gotoAndStop("play");
}
};

Por cesarcex

11 de clabLevel



 

msie7
Citar            
MensajeEscrito el 04 Dic 2008 03:36 pm
hola @ceasrcex. sólo tienes que darle start al sonido en cuando se cargue(onLoad) y ya está:

_root.onLoad = function() {
misonido = new Sound();
misonido.attachSound("Sonido");
misonido.start();
};

también ponemos la variable "estado" a 1 para que todo funcione correctamente:
var estado:Number = 1;

suerte y hasta otra.

Por Unukalhai

79 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Dic 2008 04:50 pm
Muchas gracias, lo he probado y funciona perfectamente. Te lo agradezco mucho.

Por cesarcex

11 de clabLevel



 

msie7
Citar            
MensajeEscrito el 05 Mar 2009 04:59 am
Hola, tengo un problemilla. Tengo un sitio que empieza con música, luego lleva su boton (play, pause), funcionaba perfectamente, pero he añadido una escena antes, que es la barra de carga, y desde entonces no suena la música. He probado bastantes cosas, pero no doy con ello, no se si será por que el script de la barra de carga, es incompatible con el de la siguiente escena con la música (yo no tengo mucha idea de programar).
El código de la escena de la música es:
/* Primero declaramos dos variables, pausa y estado; pausa nos servirá
para almacenar la posición donde esta la canción, y estado para saber en que
estado se encuentra la canción, 1 si el sonido se está reproduciendo y 0 para el
estado en que el sonido esté en pause*/
var pausa:Number = 1;
var estado:Number = 1;
/* Como no le pusimos ninguna acción al Movie Clip, para que no se reprodujera
como loco, lo frenamos al comienzo*/
Boton_btn.stop();
/*Atachamos inmediatamente el sonido linkeado desde la biblioteca a una variable
llamada: "misonido"*/
_root.onLoad = function() {
misonido = new Sound();
misonido.attachSound("Sonido");
misonido.start();
};
//En el evento onPress ó cuando presione el botón
Boton_btn.onPress = function() {
if (estado == 0) {
/* se verifica en que estado se encuentra el sonido, si está en 0, ósea el sonido no se esta reproduciendo,
ponemos play al sonido; usamos la variable de pausa que contiene
lo que lleva la canción reproducida hasta el momento en milisegundos, por eso lo dividimos entre 1000;
para que nos de exactamente la posición donde se encuentra*/
misonido.start(pausa/1000);
//Una vez el sonido en play, cambiamos el estado a 1, ósea reproduciéndose
estado = 1;
//y finalmente cambiamos la apariencia del botón
Boton_btn.gotoAndStop("pause");
} else {
/*En caso de que no sea 0, significa que se esta reproduciendo la canción y
queremos detenerla, primero calculamos la posición donde se va a quedar en pause
almacenándolo en la variable pausa*/
pausa = misonido.position;
//detenemos totalmente el sonido
misonido.stop();
//cambiamos el estado a 0, ósea sin sonido
estado = 0;
//y finalmente cambiamos la apariencia del botón
Boton_btn.gotoAndStop("play");
}
};

Y el código de la barra de carga es:
/* Declaro la función de precarga "cargando", esta función se ejecutara
todo el tiempo hasta que haya cargado totalmente la pelicula */
function cargando() {
// Declaración de variables
var total, cargados, porcentaje;
// A la variable "total" se le asigna el tamaño de la pelicula en bytes
total = _root.getBytesTotal();
// A la variable "cargados" se le asignan el total de bytes hasta el
//momento descargados de la web
cargados = _root.getBytesLoaded();
//Por medio de una regla de tres obtiene el porcentaje cargado y redondea el valor con la función
//"Math.floor"
porcentaje = Math.floor((cargados*100)/total);
//Asigna al campo de texto porcentaje_txt el porcentaje cargado
porcentaje_txt.text = porcentaje+" %";
//Mueve la barra de carga al frame correspondiente al porcentaje
barra_mc.gotoAndStop(porcentaje);
//Si la cantidad de bytes cargados es igual a la cantidad total de bytes
if (cargados == total) {
//Hacer que se deje de ejeuctar esta función
clearInterval(hiloPrecarga);
//Iniciar la pelicula
play();
}
}
// setInterval nos servira para que la función "cargando" se ejecute cada 1 milisegundo
// Asi, nuestra función revisara constantemente la cantidad de bytes descargados
// y solo iniciara la pelicula hasta que la descarga termine
// la variable "hiloPrecarga" nos servira para saber que esta corriendo nuestra función
// y frenar su ejecución cada milisegundo por medio de "clearInterval"
var hiloPrecarga = setInterval(cargando, 1);
//Evita que inicie la pelicula
stop();

Si alguien me puede ayudar se lo agradezco muchísimo.

Por cesarcex

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 06 Mar 2009 08:50 am

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.