perutti 0 Denunciar post Postado Setembro 15, 2006 Pessoal, tenho um player de mp3 no flash, e tem apenas 1 musica... Esta tudo perfeito, apenas um problema: A musica acaba, e não repete.. ela não começa novamente... simplismente para... vejam o codigo: musicas = ["som1.mp3"]som = new Sound()atual = 0toca = function() {som = new Sound();som.loadSound(musicas[atual], true);som.onID6 = function() {musica.text=som.id5.songname+" - "+som.id5.artist+" "}}toca();onEnterFrame = function () { volumeAtual.text = som.getVolume(); barra_d.duracao._xscale = som.position/som.duration*100; minutosP = ((_root.som.position/1000)-((_root.som.position/1000)%60))/60; segundosP = ((_root.som.position/1000)%60)-(((_root.som.position/1000)%60)%1); posicao = (minutosP<10 ? "0"+minutosP : minutosP)+":"+(segundosP<10 ? "0"+segundosP : segundosP);}btnPlay.onRelease = function() {if (som.pausa != null) {som.start(som.pausa, 0);} else {som.start(0,1);}}btnStop.onRelease = function() {som.stop();som.pausa = 0;}som.onSoundComplete = function(){ atual<musicas.length-1 ? atual++ : atual = 0 toca()} Compartilhar este post Link para o post Compartilhar em outros sites
Antoniosp 2 Denunciar post Postado Setembro 16, 2006 E aí Perutti, o problema é um detalhezinho. Quando você cria um novo som = new Sound(); dentro da função toca(), esse novo objeto perde as características antigas dele, como a atribuida no onSoundComplete. Então tem duas soluções: - Ou coloca o som.onSoundComplete() dentro da função toca(); - Ou simplesmente tire a linha do som = new Sound(); e deixe só a que está antes da função, assim ele não será novamente criado e não perderá a sua função no onSoundComplete. Ok? Flw Compartilhar este post Link para o post Compartilhar em outros sites