Hej igen,
Det viser sig jo faktisk, at knapperne virker helt fint. Jeg har først nu set koden i eksemplet ordenligt igennem, og vi har slet ikke behov for alle de if sætninger... Den fil du sendte til mig virker perfekt med pause, stop og play, det gør den forhåbenlig også hos dig?
Jeg har lige indsat et playlist array så de 9 sange bliver spillet random, men kun én gang hver per 9 sange, som vi snakkede om. Det var ikke noget der var i forvejen, så jeg lavede det fra bunden.
Hvis du gerne vil have en loading indikator, så kan du bare indsætte en preloader ganske som normalt. Evt. med en loadbar så man kan følge længden af sangen visuelt - ellers bare med getBytesTotal og getBytesLoaded. Hvis du ikke lige ved hvordan kan du bare søge her på eksperten, der er tons af eksempler.
Koden i frame 1 ser nu sådan ud:
playedSongs = new Array();
songCounter = 1;
numberOfSounds = 9;
mySoundObjectPosition = 0;
ranSound = Math.floor(Math.random()*numberOfSounds+1);
mySoundObject = new Sound();
mySoundObject.loadSound("
http://windweaver.dk/musik/"+ranSound+".mp3", true);
playedSongs.push(ranSound);
mySoundObject.setVolume(100);
mySoundObject.start(mySoundObjectPosition, 0);
_root.mySoundObject.onSoundComplete = function() {
playlist();
_root.mySoundObject.loadSound("
http://windweaver.dk/musik/"+ranSound+".mp3", true);
_root.mySoundObject.start(mySoundObjectPosition, 0);
};
function playlist() {
ranSound = Math.floor(Math.random()*numberOfSounds+1);
if (songCounter == numberOfSounds+1) {
playedSongs = new Array();
playedSongs.push(ranSound);
songCounter = 1;
} else {
for (i=0; i<=playedSongs.length-1; i++) {
if (playedSongs[i] == ranSound) {
ranSound = Math.floor(Math.random()*numberOfSounds+1);
i = -1;
}
}
playedSongs.push(ranSound);
}
}
Well, sender dig filen også så du kan se koden indsat. Så burde det være det ?!
Jeg må også hellere tilbage til mit rigtige arbejde :0)